步骤:
# 方便起见,我们将远程主机称为【服务器】,将需要连接服务器的主机称为【客户端】。
# step 1:客户端上,创建 pem 公私密钥
ssh-keygen -t rsa -m pem -f my.pem -C "your@email.com"
# step 2:客户端上,“手动拷贝”公钥到服务器:
# 1.复制生成的公钥( my.pem.pub 文件中的内容),替换下边 tee 命令中的 <public key>;
# 2.在服务器执行命令,生成 my.pem.pub;
tee my.pem.pub << "EOF"
<public key>
EOF
# step 3:服务器上:将 my.pem.pub 追加到 ~/.ssh/authorized_keys 中
sudo cat my.pem.pub >> ~/.ssh/authorized_keys
# step 4:服务器上,修改 sshd 服务配置:
# 1. 在 /etc/ssh/sshd_config 中,修改配置:PubkeyAuthentication yes
# 2. 重启 sshd:systemctl restart sshd
# step 4:客户端上:使用 ssh 命令进行连接,使用 -i 指定私钥文件
ssh username@host-or-ip -i my.pem
其他:
- 其他安全手段,比如修改 sshd 服务的开放端口、关闭密码登录等;
- 配置快捷登录:在
User_Home/.ssh/
目录下创建 config 文件,填入以下内容,之后就可以简化登录命令了,比如ssh k8s-master-aliyun
Host <配置名,比如 "k8s-master-aliyun">
HostName <主机名或 ip>
Port <ssh端口>
User <登录用户>
IdentityFile <私钥路径>