SSH相关

Host Key

https://www.ssh.com/academy/ssh/host-key

public key authentication

https://www.ssh.com/academy/ssh/public-key-authentication

示例

1. 生成rsa key paires    
ssh-keygen -f ./user_key -b 4096 -t rsa 2. 将公钥复制到服务器上并将内容加在~/.ssh/authorized_keys文件上
ssh
-copy-id -i ./user_key.pub root@172.16.20.57 3. 使用私钥登录服务器
ssh
-i ./user_key root@172.16.20.57

  • ssh-keygen -R 远程目标服务器ip。(删除host key)删除本地known_hosts上关于远程ip的公钥printfinger
 

 

 

证书登录

CA

生成user_causer_ca.pub和host_cahost_ca.pub

CA根据就是一对密钥,用user_ca来生成客户端证书,用host_ca来生成服务端证书

  • 生成用户端CA,会生成user_causer_ca.pub密钥对
# 生成 CA 签发用户证书的密钥 
$ ssh-keygen -t rsa -b 4096 -f ~/.ssh/user_ca -C user_ca
  • 生成服务端CA,会生成host_cahost_ca.pub密钥对
# 生成 CA 签发服务器证书的密钥
$ ssh-keygen -t rsa -b 4096 -f host_ca -C host_ca

服务端

生成ssh_host_rsa_key-cert.pub

  • 服务端的/etc/ssh下面会有ssh_host_rsa_key,如果没有,可以通过以下脚本来生成
sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -b 4096 -t rsa
  • 用host_ca来生成服务端证书
$ ssh-keygen -s host_ca -I mycert -h -n 172.16.20.48 -V +52w ssh_host_rsa_key.pub

指定用host_ca和ssh_host_rsa_key.pub来生成证书,会生成ssh_host_rsa_key-cert.pub

其中-I 是指定key id

服务端的-n指定Principals,服务端是指域名,或者不填

 

客户端

生成user_key-cert.pub

  • .ssh目录下会有密钥对,比如user_key和user_key.pub,如果没有,自己生成一个
sudo ssh-keygen -f ~/.ssh/user_key -b 4096 -t rsa

用user_ca来生成客户端证书

ssh-keygen -s user_ca -I mycert -n chenhs -V +1d user_key.pub

指定用user_ca和user_key.pub来生成客户端证书user_key-cert.pub

其中-I是指定key id,-n 指定Principals,客户端是指要登录的用户名

 

服务端部署证书和CA公钥

  1. 将服务端证书ssh_host_rsa_key-cert.pub和用户端的CA公钥user_ca.pub(注意:是user_ca.pub)复制到服务端的/etc/ssh目录下
  2. 配置/etc/ssh/sshd_config,增下面配置,注意路径/etc/ssh要正确
    HostCertificate /etc/ssh/ssh_host_rsa_key-cert.pub
    TrustedUserCAKeys /etc/ssh/user_ca.pub
  3. 重启sshd.  systemctl restart sshd

客户端部署证书和CA公钥

  1. 证书部署:将user_key-cert.pub文件复制到客户端的.ssh目录下,要和user_key同一个目录
  2. CA公钥配置:将服务端的CA公钥host_ca.pub(注意是host_ca.pub)粘贴到known_hosts里。如下
    @cert-authority * ssh-rsa AAAAB3Nz...XNRM1EX2gQ==

     

客户端证书登录

ssh -i 指定私钥 和目标资源ip

 

参考:https://www.cnblogs.com/peterYong/p/14191909.html

posted on 2024-01-02 17:10  heysong  阅读(8)  评论(0编辑  收藏  举报

导航