Xshell配置ssh免密码登录
时间:2015-10-06 08:47 来源:linux.it.net.cn 作者:IT
目录[-]
-
一 生成密钥
-
1.使用Xshell生成密钥
-
2.使用git生成密钥
-
二 放置公钥到服务器、设置ssh
-
三 设置ssh客户端登陆
-
四 关于安全方面的一些建议
在阿里云有购买一台服务器,一直都使用口令的认证方式。虽然一直没有出现什么问题(阿里云有云盾),但总觉得这种登陆方式欠妥。因为公司一般都用密钥认证的登陆方式。于是今天也把自己服务器的登陆方式换成了秘钥的登陆方式。整个过程没有难点,写这个blog主要是记录下。
使用密钥认证分3步:
-
生成密钥
-
放置密钥、配置ssh
-
配置ssh客户端使用密钥登陆
一 生成密钥
1.使用Xshell生成密钥


可以通过上面任意一种方式生成密钥;

完成之后把生成的密钥保存为文件

保存为 id_rsa.pub (公钥)
2.使用git生成密钥
运行命令 ssh-keygen -t -rsa

二 放置公钥到服务器、设置ssh
使用到Xshell登录到服务器,进入到“/root/.ssh/”目录
将id_rsa.pub发送到服务器,然后运行如下命令,将公钥(Public Key)导入到“authorized_keys”文件:
?
1
2
3
4
[root@yearnfar ~]# cd /root/.ssh/
[root@yearnfar .ssh]# cat id_rsa.pub >> authorized_keys
[root@yearnfar .ssh]# chmod 600 authorized_keys
[root@yearnfar .ssh]# chown yearnfar:yearnfar authorized_keys # 用户、用户组改成自己的
验证登陆是否正确,在ssh客户端配置登陆方式由password改为publickey,文件使用生成的公钥文件即可
如果登陆失败,请检查ssh配置文件(/etc/ssh/sshd_config)中的PubkeyAuthentication是否为yes。
如果验证成功的话就可以关闭密码登陆方式了,编辑/etc/ssh/sshd_config,将PasswordAuthentication改为no,ChallengeResponseAuthentication改为no
重启sshd(service sshd restart)
PS:
1. 要确保目录 .ssh 属于当前用户并且权限是700
2. 确保文件 authorized_keys 属于当前用户并且权限是600
/home/user 目录也必须是700!!!如果你用root改过它权限,也会导致登陆不了

三 设置ssh客户端登陆

四 关于安全方面的一些建议
使用密钥认证登陆,不要去设置root的密钥认证,可以通过其他用户使用su或者sudo获得超级管理员权限
(责任编辑:IT)
目录[-]
在阿里云有购买一台服务器,一直都使用口令的认证方式。虽然一直没有出现什么问题(阿里云有云盾),但总觉得这种登陆方式欠妥。因为公司一般都用密钥认证的登陆方式。于是今天也把自己服务器的登陆方式换成了秘钥的登陆方式。整个过程没有难点,写这个blog主要是记录下。 使用密钥认证分3步:
一 生成密钥1.使用Xshell生成密钥
可以通过上面任意一种方式生成密钥;
完成之后把生成的密钥保存为文件
保存为 id_rsa.pub (公钥) 2.使用git生成密钥运行命令 ssh-keygen -t -rsa
二 放置公钥到服务器、设置ssh使用到Xshell登录到服务器,进入到“/root/.ssh/”目录 将id_rsa.pub发送到服务器,然后运行如下命令,将公钥(Public Key)导入到“authorized_keys”文件:
?
验证登陆是否正确,在ssh客户端配置登陆方式由password改为publickey,文件使用生成的公钥文件即可 如果登陆失败,请检查ssh配置文件(/etc/ssh/sshd_config)中的PubkeyAuthentication是否为yes。 如果验证成功的话就可以关闭密码登陆方式了,编辑/etc/ssh/sshd_config,将PasswordAuthentication改为no,ChallengeResponseAuthentication改为no 重启sshd(service sshd restart) PS: 1. 要确保目录 .ssh 属于当前用户并且权限是700 2. 确保文件 authorized_keys 属于当前用户并且权限是600 /home/user 目录也必须是700!!!如果你用root改过它权限,也会导致登陆不了
三 设置ssh客户端登陆
四 关于安全方面的一些建议使用密钥认证登陆,不要去设置root的密钥认证,可以通过其他用户使用su或者sudo获得超级管理员权限 (责任编辑:IT) |