
我们已经看到在一 以前的出版物 它 这是 SSH 和如何使通过本议定书的连接. 简单地说, SSH 是 连接协议 这使我们能够连接到一个 远程计算机 和 打开会话 终端或控制台具有相同, 能够工作 直接 差不多就好像我们身体被从自己的计算机或服务器访问.
当我们在做出 SSH 连接 与另一个系统, 除了我们要与之连接的用户, 因为它是逻辑, 似乎我们 提示 哪里是我们 要求输入密码 为该用户. 这样就可以有一些安全连接, 但就是如此, 以这种方式, 我们是 不可能 使 SSH 连接 从我们的 shell 脚本, 由不能输入密码.
如何使 SSH 连接而无需使用密码
要启用,我们可以使用 访问 到另一台计算机, 或远程服务器, 通过 SSH, 而无需使用密码, 首先,我们有, 创建 SSH 密钥对 o SSH 密钥, 为以后 收容他们 在 列表 键或 授权的密钥 我们想要连接的服务器.
要做到这一点, 在终端或源计算机的控制台, 运行 以下 命令:
1 2 3 4 5 6 7 8 9 10 11 | $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/pf/.ssh/id_rsa): Created directory '/home/pf/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/pf/.ssh/id_rsa. Your public key has been saved in /home/pf/.ssh/id_rsa.pub. The key fingerprint is: 9d:21:11:18:2b:99:8e:2a:3b:ad:f9:c0:27:bb:13:2a pf@local |
将问 目的地 在哪里 保存 关键, 我把它忘在站点默认, 和一个人 密码 o 密码 你应该 请留空.
现在, 生物 una conexión SSH, vamos acceder al servidor 偏远落后段 · 克里尔 el directorio ~/.ssh :
1 | $ ssh root@remoto mkdir -p .ssh |
Nos pedirá la 密码 为 SSH 连接, 的 介绍 然后单击 介绍.
最后, 我们要去 添加公钥 到本地服务器 授权密钥列表中 远程计算机, 要做到这一点, 我们执行以下操作:
1 | $ cat .ssh/id_rsa.pub | ssh pf@remoto 'cat >> .ssh/authorized_keys' |
一样, 返回 输入的密码的 SSH 连接要求我们.
如果一切都是正确及我们也没有得到任何错误消息, 的 配置 远程目标服务器已被 执行 从现在开始, 每当 连接, 从计算机在哪里,我们已经产生的密钥或 SSH 密钥对, 不要问密码 建立连接. 您可以 试一试 制作与目标服务器的连接:
1 | $ ssh pf@remoto |
这一次, 访问将 直接, 没有任何 提示 要求你输入密码.
一次配置, 现在,如果你可以 任何操作 SSH 与计算机或远程服务器在您 shell 脚本 o shell 脚本, 因为它不会要求做到这一点的密码.
另外, 的 访问 到远程使用服务器 SSH 密钥 是一种形式 安全和有保障 访问, 因为它会阻止其他机器, 只可以具有的计算机和您 公共密钥 在主办 授权密钥列表中 在该服务器上.
