Switch to my Notes

[教程]SSH免密登录

1. 安装SSH

首先得确保ssh已经在服务端运行,可以通过下面的命令查看:

1
ps -ef | grep ssh

如果系统没有ssh,需要手动安装一下先。对于ubuntu,直接使用apt-get命令:

1
sudo apt-get install openssh-server

如果没有启动ssh,使用命令

1
sudo service ssh start

2. 两步实现

要实现免密登录,需要做两步:

  • 在本地电脑生成公私钥对
  • 将本地的公钥添加到服务器上

2.1 生成公私钥对

注意:以下操作均在客户端电脑完成

使用命令ssh-keygen生成公私钥对,生成的结果保存在~/.ssh/目录下。


2.2 添加公钥

注意:一下操作均在服务器上完成

  1. 新建文件~/.ssh/authorized_keys
  2. 将在客户端生成的id.rsa.pub文件的内容复制粘贴到authorized_keys文件内
  3. authorized_keys文件的权限设置为600, 即sudo chmod 600 authorized_keys
  4. .ssh 文件夹的权限设置为700,即sudo chmod 700 .ssh

600代表这rw-------,即只有拥有者才能读写,其它用户没有任何权限(非常自然的想法)
类似的,700代表rwx------,即只有拥有者才能进入这个目录,执行权限就是为了确保能进入目录的。

注:x-1,w-2,r-4