写在前面
Windows不包含SSH服务, 但是安装Git之后就可以通过Git Bash使用SSH。
启动Git Bash命令行:
在命令行输入:
ssh username@remotehost
remotehost: 远端机器名或IP
执行会询问是否添加到known hosts, 确认后会把远端机器和RSA写入/c/Users/用户名目录的 known_hosts文件中。
Warning: Permanently added ‘XXX’ (RSA) to the list of known hosts.
输入密码后即可以连接:
客户端公钥产生:
默认路径可以使用pwd查看。
默认路径是 /c/Users/用户名
- 确认是否存在ssh公钥文件夹
查看当前路径是否有 .ssh 隐藏文件夹,可以直接到路径中查看, 也可以使用命令行查看.
ls .ssh
如果没有, 使用mkdir 命令创建
mkdir ~/.ssh
- 生成公钥
ssh-keygen -t rsa -C "[email protected]"
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如设置邮箱
执行后,接下来会要求输入密钥文件名和passphrase(密码短语),直接回车即可。
执行完成, 会产生两个文件:
id_rsa.pub - 公钥文件
id_rsa - 私钥文件
服务端配置
-
将客户端的公钥文件(id_rsa.pub)发送到服务到
-
查看服务端的~/.ssh/authorized_keys文件是否存在,不存在就创建。使用vim创建命令如下:
vim authorized_keys
- 将公钥文件的内容追加到authorized_keys文件中, 如果没有界面,命令追加方式如下
cat id_rsa.pub >> ~/.ssh/authorized_keys
id_rsa.pub文件可以删除掉
- 重启ssh服务
service sshd restart
验证:
使用Git Bash ,在命令行输入:
ssh username@host
不需要输入密码就直接登录了。