通过密码登录远程Linux是比较麻烦的一件事,尤其在执行自动化程序的时候,为了避免因为输入密码而程序被卡住,所以我们需要免密登录。
SSH通过公钥登录远程Linux服务的步骤
1. 生成公钥和私钥
1 | [xin@centos-vps ~]$ ssh-keygen -t rsa |
2.查看生成的私钥和公钥的文件
1 | [xin@centos-vps ~]$ ll |
3.公钥内容添加到需要远程登录的Linux文件
1.第一种方法
文本打开xin_rsa.pub文件,将里面的内容 copy 到liunx服务器文件~/.ssh/authorized_keys,如果文件路径不存在请新建
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0y4IVnSNPD3drE6c1Lc+JUc1sXBMyXxqaob/aUdO5V9bU83U7sTtixTYb7D+/lna2JXJrohyVyieZ8q9ITsySuHOqK0JK8oC+O5kJp1zSWIfKUXyUasHpISRuP2SfNd7BX1eR/61KEPcd3/ft7Pd6CphgcEUCab9CyIM1Zj6xu12GDdwPz/51jUvvF+mdzJTqZcu8lECLxlUr+JHBnNKiwVfmwV9JntIIBWklYDF5Haa99mX6bYfEiZb0GO+Hf5nOLXbjZewrX4E+KBQPyNuESc5GRGk7M9SAbGJFahOup/NqemD9OnjXmampVMzAs1dZanaNHhcNeudu7JOnhyGBQ==
1 | vim ~/.ssh/authorized_keys |
1.第二种方法
通过命令自动添加公钥内容
1 | ssh-copy-id -i ~/.ssh/xin_rsa.pub yourusername@yourhostname |
命令执行完后,公钥内容会自动添加到~/.ssh/authorized_keys
4.SSH密钥登录Linux
在windows下,使用SecureFX SSH客户端登录Linux
1.新建会话连接
公钥打勾,点击属性进行配置
2.配置公钥登录
选择使用会话公钥设置
选择公钥在电脑上的路径
配置完成后就可以不许要密码的情况下登录了
配置好密钥仍然无法登录的解决方案
1.打开服务器的 /etc/ssh/sshd_config,确认含有下面配置
1 | RSAAuthentication yes |
- 重启ssh服务
1 | service sshd reload |
国内查看评论需要代理~