首先确保 linux系统中已经安装了ssh,否则先安装 ssh,ubuntu 系统可以执行
sudo apt-get install ssh
接下来开始配置 ssh无密码登陆
确保在 /home/user用户目录下存在.ssh目录,可以使用一下命令进行查看
ls -a /home/user
如果不存在可以自己手动创建一个
mkdir /home/user/.ssh
接下来没输入命令:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
解释一下:
ssh-keygen代表生成密钥;
-t表示指定生成的密钥类型,dsa指的是dsa密钥认证;
-P用于提供密语;
-f指定生成的密钥文件
执行完这条命令之后,会在.ssh文件夹下创建两个文件id_dsa和id_dsa.pub,这是SSH的一对私钥和公钥,类似于钥匙及锁,把id_dsa.pub追加到授权的key里面去。
输入命令:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
这条命令的就是把公钥加到用于认证的公钥文件中,这里的authorized_keys是用于认证的公钥文件。
执行完这几条命令之后,ssh无密码登陆配置基本完成。
可以输入:
ssh localhost
来进行验证,如果执行执行完这条命令,没有要求输入密码,证明配置正确。
如果还是要输入密码,那就说明还存在一点问题,如果之前的操作没有问题,没有成功的原因可能是没有设置.ssh目录权限而引起的。
可以采用下面的方面来解决:
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
应该差不多行了吧!