ssh配置密钥

1.什么是ssh?

ssh是一种应用层协议,一般用于本地客户端登录到远程服务器进行相关作业,端口是22/TCP。

2.ssh结构

  • 1.ssh服务器
  • 2.ssh客户端

3.ssh客户端认证方式

  • 1.密码认证
  • 2.密钥认证
    基于安全性和便利性考量,我们一般使用密钥认证

4.ssh相关配置

1.服务器配置

1.生成密钥

1
2
3
4
5
6
7
#生成一对长度为2048的RSA密钥,指定注释为“rocky linux ECS”
ssh-keygen -t rsa -b 2048 -C "rocky linux ECS" -f rocky
#-t 为指定密钥算法类型
#-b 为密钥的长度一般指定2048足以,
#-C 指定密钥的注释
#-f 指定生成的密钥文件名称

上面这一步将会生成一对RSA密钥,公钥会以.pub为后缀,公钥放在被登录的服务器上,私钥自行留存,被用于以后进行登录服务器时进行身份验证使用。

2.配置密钥

1
2
3
4
#将公钥配置在家目录的.ssh目录下
cat id_rsa.pub > $HOME/.ssh/authorized_keys
#注意权限
#.ssh目录要配置成700权限authorized_keys密钥文件权限要配置成644

将公钥配置在服务器上,并且相关目录的权限要配置正确

3.其他相关配置

为了服务器的安全考虑以及其他相关需求,我们一般要对服务器进行其他相关配置,ssh服务器的配置文件为/etc/ssh/sshd_config

1
2
3
4
#vim /etc/ssh/sshd_config
PermitRootlogin yes#指定是否允许root用户登录,如果一般不使用root用户登录建议关闭
PasswordAuthentication #指定是否允许通过密码认证方式登录,如果已经使用密钥登录建议关闭
AuthorizedKeyFiles .ssh/authorized_key #指定服务器公钥的存放路径,仅在使用密钥认证的情况下有用

2.客户端配置

1.配置密钥

将上次生成的密钥对中的私钥放在客户端目录,一般为了方便我们一般会定义一个ssh客户端配置文件

1
2
3
4
5
6
vim $HOME/.ssh/config
Host armbian#取的别名
Hostname 192.168.1.254#登录的服务器的ip地址
Port 22#ssh服务开放的端口,一般默认22
User root#登录的用户名
Identityfile ~/.ssh/private_keys/armbian#指定密钥的所在地

将私钥放在配置文件指定的目录下面

2.使用 配置的别名登录服务器

1
ssh armbian

ssh配置密钥
https://dreamaccount.github.io/2023/02/11/ssh服务相关配置/
作者
404NotFound
发布于
2023年2月11日
许可协议