1. 程式人生 > >ssh 非root使用者互信

ssh 非root使用者互信

之所以要把這個記錄下來 
是因為它的確和root使用者不一樣
root使用者 不需要改動什麼許可權問題  只要生成私鑰/公鑰對 即可

但是一樣的操作在普通使用者上就出了問題了 
折騰了老半天

ssh-keygen -t rsa                       這裡一定要加 -t rsa

一路回車 就好

然後會生成幾個檔案
id_rsa
id_rsa.pub
known_hosts

然後執行

cat id_rsa.pub >> authorized_keys

如果是root使用者  做完這一步 就可以了 就可以使用ssh slave01 或 ip 登入了
但是 鬱悶的是 同樣的操作 到了普通使用者上就不行了

網上找了很多辦法 什麼修改sshd_config之類的 試過都沒用
其實最終還是許可權問題  什麼都配置檔案都不用改 只需要賦一下許可權就ok
預設生成的檔案authorized_keys許可權:
-rw-rw-r-- 1 hadoop hadoop  395 05-16 17:59 authorized_keys
預設生成的.ssh許可權是可以


下面一個個的賦許可權
首先是給.ssh目錄賦一個許可權  
1 chmod 700 /usr/hadoop/.ssh

2 chmod 600 authorized_keys
3 chmod 600 id_rsa
這下就可以ssh slave01了  
還是不行的話 就仔細檢查一下許可權

-rw------- 1 hadoop hadoop  396 05-16 05:10 authorized_keys
-rw------- 1 hadoop hadoop 1675 05-16 05:10 id_rsa
-rwxrwxrwx 1 hadoop hadoop  396 05-16 05:10 id_rsa.pub
-rwxrwxrwx 1 hadoop hadoop  402 05-16 05:10 known_hosts

 .ssh目錄許可權:
drwx------  2 hadoop hadoop 4096 05-16 05:10 .ssh