通过SSH密钥连接服务器

一、密钥登陆原理

  • 一对密钥对分为私钥id_rsa公钥id_rsa.pub
  • 私钥放在客户端
  • 公钥放在服务端

二、生成密钥对(已存在的可以跳过)

随便在一个终端生成密钥对(windows、linux都可以),输入以下命令:

ssh-keygen

一路回车,然后在当前用户目录下的.ssh文件夹下就会生成 私钥id_rsa公钥id_rsa.pub

三、在服务端安装公钥

原理:在服务端用户.ssh目录下有个authorized_keys认证文件,只要将公钥内容写入到这个文件可以与相对应的私钥进行认证,可以写入多个公钥。

1. 上传已存在密钥对中的公钥

scp 本地公钥路径 用户名@服务器地址:~/.ssh

期间输入服务器密码进行验证

2. 将公钥信息写入authorized_keys

ssh 用户名@服务器地址               #ssh登陆服务器
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
chmod 700 ~/.ssh

3. 配置SSH,打开密钥登陆(如果上面设置完之后可以登陆就跳过)

  • 修改ssh配置
    ssh配置文件地址/etc/ssh/sshd_config,使用编辑器打开,这里用的nano,找到下面的选项,并修改。
RSAAuthentication yes               #允许密钥登陆      
PubkeyAuthentication yes            #允许密钥登陆
PermitRootLogin yes                 #允许root用户登陆
PasswordAuthentication no           #禁止密码登陆
  • 重启ssh服务
systemctl restart sshd

通过SSH密钥连接服务器
https://szsc.asia/2024/07/24/tong-guo-ssh-mi-yao-lian-jie-fu-wu-qi/
Author
AW
Posted on
2024年7月24日
Licensed under