在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