vmware14.1虚拟机中三台ubuntu16.04
ip地址映射关系:如下
127.0.0.1 localhost
192.168.184.131 vm-01
192.168.184.132 vm-02
192.168.184.133 vm-03
首先,我们需要更新我们的本地库索引。所以如下所见,我们需要先输入“apt-get update”
sudo apt-get update
通过以下命令安装openssh-server:
sudo apt-get install openssh-server
在OpenSSH已经成功安装在Ubuntu14.04操作系统上了之后,我们要启动OpenSSH的服务。以下命令让你启动/开启服务。
sudo service ssh start
或者
sudo /etc/init.d/ssh start
安装并启动了OpenSSH服务以后。接下来就是要生成公私钥对的时候了,在终端中运行以下命令:
ssh-keygen -t rsa
在运行完以上命令了以后,我们需要回答一系列的问题。首先选择保存密钥的路径,按回车将会选择默认路径即家目录的一个隐藏的.ssh文件夹。下一个提示是请输入口令提醒。我个人将此留空(直接回车)。之后密钥对就会创建,大功告成。
在密钥对生成以后,我们需要将客户端上的公钥复制到SSH服务端或者主机,来创建对客户端的信任关系。运行以下命令复制客户端的公钥到服务端。
ssh-copy-id user@ip_address #user换成自己的用户名,ip_address换成对应的主机ip地址
至此,基本上实现了客户端与服务器端得免密钥登陆了。下面是一些可选得操作。
**可选操作1 ssh localhost免密登陆 **
将公钥添加到本地主机认证中,执行下面的命令:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 644 ~/.ssh/authorized_keys
然后测试:ssh localhost
无需密码即可登录则成功。
可选操作2 禁用密码登陆
在公钥上传之后,我们现在可以禁用通过密码登陆SSH的方式了。为此,我们需要通过以下命令用文本编辑器打开/etc/ssh/ssh_config。
sudo vim /etc/ssh/sshd_config
主要找到下面的三行,修改成下面的样子
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
最后,在我们配置完SSH服务端后,为了使改动生效我们需要重启SSH服务。在终端或控制台运行以下命令重启。
sudo service ssh restart
或
sudo /etc/init.d/ssh restart
现在,我们可以试试不用密码仅用密钥对的方式登录ssh服务端了。
太好了!我们成功的配置了无密码登录SSH。使用加密密钥对进行SSH服务器认证是非常安全的一种做法,如果你想为SSH的单一用户登录实施安全的认证这也是备受推崇的方式。
提高Ubuntu的SSH登陆认证速度的办法 http://www.linuxidc.com/Linux/2014-09/106810.htm
开启SSH服务让Android手机远程访问 Ubuntu 14.04 http://www.linuxidc.com/Linux/2014-09/106809.htm
如何为Linux系统中的SSH添加双重认证 http://www.linuxidc.com/Linux/2014-08/105998.htm
在 Linux 中为非 SSH 用户配置 SFTP 环境 http://www.linuxidc.com/Linux/2014-08/105865.htm
Linux 上SSH 服务的配置和管理 http://www.linuxidc.com/Linux/2014-06/103627.htm
SSH入门学习基础教程 http://www.linuxidc.com/Linux/2014-06/103008.htm
SSH免密码登录详解