创建密钥
ssh-keygen -t rsa -C 'your email@domain.com'
-t 指定密钥类型,默认即 rsa ,可以省略
-C 设置注释文字,比如你的邮箱,可以省略
- 生成过程中会提示输入密码两次,如果不想在使用公钥的时候输入密码,可以回车跳过;
- 密钥默认保存位置在 ~/.ssh 目录下,打开后会看到私钥文件 id_rsa 和公钥文件 id_rsa.pub;
传输密钥
scp ~/.ssh/id_rsa.pub <用户名>@<ip地址>:/home/id_rsa.pub
- 使用 scp 命令将本地的公钥文件 id_rsa.pub 复制到需要连接的Linux服务器 ⬆️
scp -P <端口号> ~/.ssh/id_rsa.pub <用户名>@<ip地址>:/home/id_rsa.pub
- 如果修改了端口信息需要加上端口⬆️
cat /home/id_rsa.pub >> ~/.ssh/authorized_keys
- 把公钥追加到服务器ssh认证文件中⬆️
登陆
ssh <用户名>@<ip>
# 修改过默认端口
ssh -p <端口号> <用户名>@<ip地址>
快捷登陆
Host dev #自定义别名
HostName hostname #替换为你的ssh服务器ip或domain
Port port #ssh服务器端口,默认为22
User user #ssh服务器用户名
IdentityFile ~/.ssh/id_rsa #第一个步骤生成的公钥文件对应的私钥文件
- 配置ssh的config文件可以使用快捷登陆
Host dev
HostName xx.xx.x.xxx #ip
User test
Port 22
IdentityFile ~/.ssh/id_rsa
Host pro
HostName xx.xx.x.xxx #ip
User test
Port 22
IdentityFile ~/.ssh/id_rsa
- 多个服务器配置在同一个config文件中,例:⬆️
ssh dev
or
ssh pro
#这样就可以使用别名登陆
have a good day