主要分为以下几个步骤。
- 客户端生成密钥,包括私钥和公钥。
- 在服务器中配置客户端的公钥。
- 在客户端配置服务器登录相关参数。
1.客户端生成密钥,包括私钥和公钥
ssh-keygen -t rsa
ssh-keygen -t rsa -C "your.email@example.com" -b 4096
生成密钥过程中,建议采用默认值,只需要按三次回车之后,就会再~/.ssh目录下生成密钥文件,其中,id_rsa为私钥,id_rsa.pub为公钥。
2.在服务器中配置客户端的公钥
服务器的~/.ssh/authorized_keys文件保存可快速连接的客户端的公钥。只需把客户端生成的id_rsa.pub文件的内容拷贝到authorized_keys文件的末尾。拷贝的方法有:
- 直接拷贝。由于id_rsa.pub和authorized_keys都是文本文件,可通过拷贝命令直接拷贝。
- 把id_rsa.pub上传到服务器,然后再把内容添加到authorized_keys文件中。
在客户端把文件上传到服务器的用户目录的操作命令如下:
scp ~/.ssh/id_rsa.pub root@192.168.1.1:
cat id_rsa.pub >> ~/.ssh/authorized_keys
3.除了密码之外,登录时,还需要配置ip地址、端口、用户等信息,也比较繁琐。可通过客户端的~/.ssh/config配置服务器的相关参数简化登录命令。
config文件的配置内容如下:
Host server
Hostname 192.168.1.1
Port 22
User bingoli
其中,Host为服务器的名称,输入登录命令时使用,后续登录只需要记住这个名字就可以;Hostname为服务器的ip地址;Port为ssh的端口;User为服务器的用户名。配置好相关参数之后,就可以使用简化的命令登录服务器了。
ssh server
开了一个技术交流的公众号,里面记录一些在学习有关深度学习,推荐系统与机器学习过程中的笔记与心得,欢迎关注~