SSH公钥登录的实际用途:在同时使用多台vps时候,我们只要记住IP(甚至域名A记录指向之后只需要记个域名就好了)只是SSH指令登录,十分便捷
1. 准备公钥
首先在常用的电脑上面准备好公钥对,我选择的是一台Ubuntu的电脑,因为,这是我经常带着出去的电脑。公钥对制作方法:
ssh-keygen
然后根据后面的提示一步一步操作即可,默认情况,没有其他需求可以按三次Enter键直接完成,他会在你的家目录里面,新建一个.ssh
目录,然后将公钥与私钥存放在里面,我们需要用的就是id_rsa.pub
,它的兄弟id_rsa
一定要保存好,不要暴露。带有pub的是公钥,不带的是私钥,十分重要。
2. 安装公钥
我们需要先把公钥传到我们需要免密登录的机器里面,我的需要免密登录的vps也是Ubuntu的,当然差别应该不大,我一直在使用Ubuntu发行版。
上传的方法多种多样,我使用的是scp,具体用法,建议百度
scp /<home dir>/.ssh/id_rsa.pub username@remote IP:/<user home dir>/
然后安装公钥:
cd .ssh
cat /<user home dir>/id_rsa.pub >> authorized_keys
安装就完成了,为了保证不会因为权限问题造成失败,建议执行以下命令
chmod 700 ~/.ssh
chmod 600 authorized_keys
3. 设置sshd服务
接下来就要修改sshd配置文件了
vi /etc/ssh/sshd_config
进入了配置文件编辑界面了,请确认下面两项的状态,如果被注释掉,请取消注释
RSAAuthentication yes
PubkeyAuthentication yes
#这一条是允许root用户可以通过ssh登录,如果你本身就是root登录上来的,那么就不需要管,如果不使用root登录也不用理会
PermitRootLogin yes
此时就可以重启sshd然后测试免密了
service sshd restart
当一切测试都OK了,我们可以关闭密码登录,同样还是在sshd_config
里面设置
PasswordAuthentication no
4. 结语
至此就配置完成了,我们就可以免密登录了。
5 条评论
你的文章让我感受到了无尽的欢乐,谢谢分享。http://www.whchenlin.com
很是方便
很实用的文章
 ̄﹃ ̄
123123