标签:代码 rsa 方式 art 输入 any star author 文件
服务器被登陆的时候,需要用户提供它的密码。
ssh someuser@somehost
有时人们会觉得输入密码比较麻烦。有时服务器是不想让人直接登陆,但是又必须允许部分人登陆进来。
这个时候,服务器提供了一个方式,需要客户端提供一个证明他是合格的登陆者的资质。当然了,客户端登陆的时候会把另外一些信息和这个资质进行匹配。
这基本上就是RSA非对称加密的公钥和私钥。
===========================================
服务器端必须要打开sshd服务,并且
/etc/ssh/sshd_config文档中,如下代码不能被注释掉:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
客户需要通过ssh-kengen生成两个文件,一个公钥,带pub,一个私钥,不带pub
-t rsa 表示使用RSA加密得法,你也可以使用dsa代替。-b 2048表示使用2048位加密,如果你对安全性要求更高,可以使用4098位加密。-f server_rsa表示要生成的文件名为server_rsa(密钥)和server_rsa.pub(公钥)。最后的-C "xxx@company"是注释,会追加在造成的Key文件尾部,通常会写上用户或机器的身份信息备查。之后输入RSA Key的使用密码并确认,ssh-keygen命令就会造成一对密钥对。把生成的密钥对拷贝到本机的~/.ssh/下
***以上server_rsa在windows下最好改为id_rsa,不知道为什么
然后把这个公钥的内容,复制到服务器上的 ~/.ssh/authorized_keys文件的末尾,成为独立的一行。
当然了,要保证.ssh文件夹的权限为700,authorized_keys文件的权限为600。
这样一来,客户端就可以ssh免密码登陆了,这个时候服务器上对应的用户的密码都可以删除了(无法远程登陆了,不是删除用户)。
git私有服务器也可以利用以上方式。
标签:代码 rsa 方式 art 输入 any star author 文件
原文地址:http://www.cnblogs.com/voctrals/p/7010025.html