在一般的服务器和git等认证都需要使用SSH来实现无密码认证登陆。SSH协议本身提供两个服务器功能,一个为SSH,一个为SFTP。

SSH的加密分私钥和公钥,一个主机必然生成这两个,两者配套使用,缺一不可。

公钥:提供给远程主机等进行数据加密,公开的,一般后缀为.pub

私钥:远程主机利用你的公钥加密,你就可以使用私钥解密。

公钥加密和私钥解密,每个人都应有对方的公钥才行。

无密码的登陆

  1. 客户端建立公钥和私钥

    ssh-keygen -t rsa

    在windows下使用putty等生成。

  2. 把客户端生成的公钥传到远程主机的~/.ssh/authorized_keys中。首先建立.ssh文件夹,权限700.然后建立authorized_keys,并把内容加入,权限644。此文件的所属和组为~账号相同。多个账号则每行写一个。