一、ssh登录原理
之前 这篇博客:将Linux设备设置为服务器 ,是让windows访问server的。现在想用linux主机访问另一台linux主机,实现免密登录,其登录原理如下:
二、免密登录的实现
按原理走就行了(事先在两台机器的/etc/hosts文件中添加ip)
1. client generate a pair of keys
ssh-keygen -t rsa
一切按默认设置即可
2. cp public key to server
cd ~/.ssh
scp id_rsa.pub another_hostname:~
3.切换到server主机中!!!!, put public key into authorized keys
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys #没有的话,就先创建
4.设置文件权限
在server下:
sudo chmod 755 ~/.ssh
sudo chmod 600 ~/.ssh/authorized_keys
5.设置no password登录
在server下:
sudo visudo
作如下修改
按默认保存即可,即:sudoers.tmp
不出意外,即可免密登录server了!
——————————————————over————————————————————————
补充一条:
私钥登录命令:
ssh -i ~/.ssh/id_rsa another_username@hostname
————————————————————2017.12.15更新—————————————————-
启动hadoop服务时,在linux上原本以为可以免密,结果报错:sign_and_send_pubkey: signing failed: agent refused operation。
解决办法:
ssh-add
顺便查看添加了哪些key
ssh-add -l
顺利解决,免密启动hdfs:
————————————————————更新完毕—————————————————————–