[首页]
[文章]
[教程]
首页
Web开发
Windows开发
编程语言
数据库技术
移动平台
系统服务
微信
设计
布布扣
其他
数据分析
首页
>
其他
> 详细
ssh服务
时间:
2018-01-08 19:11:15
阅读:
264
评论:
0
收藏:
0
[点我收藏+]
一 : SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。这里仅仅介绍openSSH。
SSH之所以能够保证安全,原因在于它采用了公钥加密。
整个过程是这样的:(1)远程主机收到用户的登录请求,把自己的公钥发给用户。(2)用户使用这个公钥,将登录密码加密后,发送回来。(3)远程主机用自己的私钥,解密登录密码,如果密码正确,就同意用户登录。
这个过程本身是安全的,但是实施的时候存在一个风险:如果有人截获了登录请求,然后冒充远程主机,将伪造的公钥发给用户,那么用户很难辨别真伪。因为不像https协议,SSH协议的公钥是没有证书中心(CA)公证的,也就是说,都是自己签发的。
可以设想,如果攻击者插在用户与远程主机之间(比如在公共的wifi区域),用伪造的公钥,获取用户的登录密码。再用这个密码登录远程主机,那么SSH的安全机制就荡然无存了。这种风险就是著名的"中间人攻击"(Man-in-the-middle attack)。
二:SSH两种方式的用户登录认证:
1:基于passwd
2:基于key
三:SSH用法
1:基于passwd登陆(以wang用户登陆远程主机)
[root@centos6 ~]# ssh wang@192.168.154.140
wang@192.168.154.140‘s password:
[wang@station1 ~]$
2:配置文件:/etc/ssh/ssh_config
3:远程执行命令(执行命令并显示结果后返回当前主机)
[root@centos6 ~]# ssh wang@192.168.154.140 who
wang@192.168.154.140‘s password:
root pts/1 2017-12-31 03:44 (192.168.154.1)
root pts/2 2017-12-31 07:57 (192.168.154.132)
[root@centos6 ~]#
4:-p port:远程服务器监听的端口
配置文件:vim /etc/ssh/sshd_config 将其改为自己想要的端口默认22,例如将其改为9527(port 22变为port 9527)
生效方式:service sshd restart (centos6.9)
systemctl reload sshd(centos7.4)
6:-v 调试模式(可以排错)
7:-c 压缩方式
8:-b 指定连接的源ip
[root@centos6 ~]# ip a a 192.168.154.27/24 dev ens33(在一个网卡添加多个ip)
9:-x 支持x11转发
10:-Y 支持信任x11转发 ForwardX11Trusted yes
11:-t 强制伪tty分配 ssh -t remoteserver1 ssh remoteserver2
四 :基于密钥的登录方式
1 首先在客户端生成一对密钥(ssh-keygen)
2 并将客户端的公钥ssh-copy-id 拷贝到服务端
3 当客户端再次发送一个连接请求,包括ip、用户名
4 服务端得到客户端的请求后,会到authorized_keys中查 找,如果有响应的IP和用户,就会随机生成一个字符串, 例如:acdf
5 服务端将使用客户端拷贝过来的公钥进行加密,然后发 送给客户端
6 得到服务端发来的消息后,客户端会使用私钥进行解密 ,然后将解密后的字符串发送给服务端
7服务端接受到客户端发来的字符串后,跟之前的字符串进 行对比,如果一致,就允许免密码登录
基于密钥的认证:
(1) 在客户端生成密钥对 ssh-keygen -t rsa [-P ‘‘] [-f “~/.ssh/id_rsa"]
(2) 把公钥文件传输至远程服务器对应用户的家目录 ssh-copy-id [-i [identity_file]] [user@]host
(3) 测试
(4) 在SecureCRT或Xshell实现基于key验证 在SecureCRT工具—>创建公钥—>生成Identity.pub文件 转化为openssh兼容格式(适合SecureCRT,Xshell不需要转化 格式),并复制到需登录主机上相应文件authorized_keys中, 注意权限必须为600,在需登录的ssh主机上执行: ssh-keygen -i -f Identity.pub >> .ssh/authorized_keys
(5)重设私钥口令: ssh-keygen –p
(6)验证代理(authentication agent)保密解密后的密钥 ? 这样口令就只需要输入一次 ? 在GNOME中,代理被自动提供给root用户 ? 否则运行ssh-agent bash
(7)钥匙通过命令添加给代理 ssh-add
免口令登陆如下:
五:解决连接慢问题:
1:改配置文件:即vim /etc/ssh/ssh_config
2:UseDNS yes改为UseDNS no
3:GSSAPIAuthentication yes改为GSSAPIAuthentication no
4:重启服务
ssh服务
原文:http://blog.51cto.com/13487744/2058744
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年09月23日 (328)
2021年09月24日 (313)
2021年09月17日 (191)
2021年09月15日 (369)
2021年09月16日 (411)
2021年09月13日 (439)
2021年09月11日 (398)
2021年09月12日 (393)
2021年09月10日 (160)
2021年09月08日 (222)
最新文章
更多>
2021/09/28 scripts
2022-05-27
vue自定义全局指令v-emoji限制input输入表情和特殊字符
2022-05-27
9.26学习总结
2022-05-27
vim操作
2022-05-27
深入理解计算机基础 第三章
2022-05-27
C++ string 作为形参与引用传递(转)
2022-05-27
python 加解密
2022-05-27
JavaScript-对象数组里根据id获取name,对象可能有children属性
2022-05-27
SQL语句——保持现有内容在后面增加内容
2022-05-27
virsh命令文档
2022-05-27
教程昨日排行
更多>
1.
list.reverse()
2.
Django Admin 管理工具
3.
AppML 案例模型
4.
HTML 标签列表(功能排序)
5.
HTML 颜色名
6.
HTML 语言代码
7.
jQuery 事件
8.
jEasyUI 创建分割按钮
9.
jEasyUI 创建复杂布局
10.
jEasyUI 创建简单窗口
友情链接
汇智网
PHP教程
插件网
关于我们
-
联系我们
-
留言反馈
- 联系我们:wmxa8@hotmail.com
© 2014
bubuko.com
版权所有
打开技术之扣,分享程序人生!