在linux系統中,ssh是遠程登陸的默認工具,由於該工具的協議使用了RSA/DSA的加密算法.該工具作linux系統的遠程管理是很是安全的。telnet,由於其不安全性,在linux系統中被擱置使用了。
ssh有一套頗有用的工具,其中的ssh-keygen能夠用來生成private和public密鑰.將生成的public密鑰拷貝到遠程機器後,能夠使ssh到另一臺機器的登錄不用密碼.具體方法以下.
1) 在本地機器中的~/.ssh/目錄下執行下命令,
ssh-keygen -t dsa
將生成兩個文件,id_dsa和id_dsa.pub.
2) 將id_dsa.pub拷貝到遠程機器,而且將id_dsa.pub的內容添加到~/.ssh/authorized_keys中.
cat id_dsa.pub >>authorized_keys
注意:目錄.ssh和文件authorized_keys的權限必須是600.
完成這些工做後,用戶從本地機器到遠程機器的登陸就不用密碼了.
該設置簡單實用.
我是參考別的文章作的,直到出錯後,才搜索到以上那篇文章
一開始登陸時仍是須要密碼,提示信息以下:
[ddphp@www .ssh]$ ssh -p 6000 192.168.100.123
ddphp@192.168.100.123's password:
Permission denied, please try again.
ddphp@192.168.100.123's password:
Permission denied, please try again.
ddphp@192.168.100.123's password:
Permission denied (publickey,gssapi-with-mic,password).
ll /home/ddphp/.ssh,發現authorized_keys文件的屬性是664,按照以上文章將權限修改成600,順利登陸!php