我是在WIn10环境下用VMWare安装的Ubuntu14.04,与MacOS Sierra进行ssh免密登录配置。
1.Linux
ctrl+Alt+T或者直接打开Terminal
1.1安装vim
我下载的Ubuntu镜像文件是没有自带vim命令的,所以,首先用
sudo apt-get install vim
安装vim。
安装完成后可以用 vim ~/.bashrc或者随便一个文件来测试vim。执行结果如图。不对文件做任何修改 :q退出。(注意:此处只是测试vim是否安装好,不执行也可以)。
1.2安装ssh客户端
接下来,用
sudo apt-get install openssh-client
命令,安装ssh客户端。
1.3安装ssh服务器
然后用
sudo apt-get install openssh-server
安装ssh服务器。
1.4生成密钥
使用
ssh-keygen -t rsa
生成密钥。
遇到让输入内容的,直接输入回车。一共三个回车。
此时,进入~/.ssh 发现已经生成两个文件 :id_rsa、id_rsa.pub
此时,使用
ssh localhost
再输入密码,就可以连接localhost。
ctrl+d退出当前连接的服务器。
2.Mac端
同样,使用
ssh-keygen -t rsa
生成密钥。三个回车。
此时 使用ssh localhost 再输入密码,同样可以登录到本机服务器。contral+d退出。
同时,本机的.ssh文件夹下,也生成了id_rsa、id_rsa.pub这两个文件。
使用
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
将id_rsa.pub的内容,放到authorized_keys文件里。此时用ls列出当前文件夹得内容,有三个文件,分别是id_rsa、id_rsa.pub、authorized_keys。
此时,ssh localhost,可以免密直接登录了。
3.配置免密登录服务器
3.1在虚拟机的 .ssh目录下使用
scp id_rsa.pub >> your mac's username@your mac's ip:/Users/your mac's username/.ssh/id_rsa.pub.ubuntu
如:
scp id_rsa.pub >> nana@192.168.1.105:/Users/nana/.ssh/id_rsa.pub.ubuntu
把Ubuntu的id_rsa.pub文件传到mac,并以id_rsa.pub.ubuntu的名字存储。
此时 在mac端.ssh文件夹下查看是否有id_rsa.pub.ubuntu文件
3.2在mac端执行
cat id_rsa.pub.ubuntu >> authorized_keys
把传来的linux的公钥追加到authorized_keys后面。
3.3配置linux虚拟机端口
现在虚拟机终端内,使用ifconfig,查出虚拟机ip。如:我的虚拟机ip为:192.168.85.129
在VMWare主页,找到编辑-虚拟网络编辑-更改设置-NAT模式-添加
设置如图所示的端口转发,主机端口建议设置为9000以上。
5.mac端使用scp -P 9000 /Users/nana/.ssh/authorized_keys na@192.168.1.108:/home/na/.ssh/authorized_keys
把authorized_keys发送到虚拟机上。
此时 ,执行
ssh -p 9000 na@192.168.1.108
可以使用ssh免密登录linux虚拟机。
192.168.1.108为我的win10系统的主机ip