随风逐叶 随风逐叶
首页
  • Quick Reference (opens new window)
  • EgretEngine开发者文档 (opens new window)
  • TinaX框架
  • SSH教程
  • VSCode插件开发
关于
  • 分类
  • 标签
  • 归档

rontian

从事游戏开发10多年的老菜鸟一枚!
首页
  • Quick Reference (opens new window)
  • EgretEngine开发者文档 (opens new window)
  • TinaX框架
  • SSH教程
  • VSCode插件开发
关于
  • 分类
  • 标签
  • 归档
  • SSH教程
  • SSH基础知识

  • SSH客户端

  • SSH 密钥登录

  • SSH 服务器

  • SSH 端口转发

  • SSH 证书登录

    • SSH 证书登录
    • 非证书登录的缺点
    • 证书登录是什么?
    • 证书登录的流程
    • 生成 CA 的密钥
    • CA 签发服务器证书
    • CA 签发用户证书
    • 服务器安装证书
    • 服务器安装 CA 公钥
    • 客户端安装证书
    • 客户端安装 CA 公钥
    • 废除证书
    • 参考链接
  • scp 命令

  • rsync 命令

  • sftp 命令

服务器安装 CA 公钥

# 服务器安装 CA 公钥

为了让服务器信任用户证书,必须将 CA 签发用户证书的公钥user_ca.pub,拷贝到服务器。

$ scp ~/.ssh/user_ca.pub root@host.example.com:/etc/ssh/
1

上面的命令,将 CA 签发用户证书的公钥user_ca.pub,拷贝到 SSH 服务器的/etc/ssh目录。

然后,将下面一行添加到服务器配置文件/etc/ssh/sshd_config。

TrustedUserCAKeys /etc/ssh/user_ca.pub
1

上面的做法是将user_ca.pub加到/etc/ssh/sshd_config,这会产生全局效果,即服务器的所有账户都会信任user_ca签发的所有用户证书。

另一种做法是将user_ca.pub加到服务器某个账户的~/.ssh/authorized_keys文件,只让该账户信任user_ca签发的用户证书。具体方法是打开~/.ssh/authorized_keys,追加一行,开头是@cert-authority principals="...",然后后面加上user_ca.pub的内容,大概是下面这个样子。

@cert-authority principals="user" ssh-rsa AAAAB3Nz...XNRM1EX2gQ==
1

上面代码中,principals="user"指定用户登录的服务器账户名,一般就是authorized_keys文件所在的账户。

重新启动 sshd。

$ sudo systemctl restart sshd.service
# 或者
$ sudo service sshd restart
1
2
3

至此,SSH 服务器已配置为信任user_ca签发的证书。

上次更新: 2023/10/17, 16:39:02 访问次数: 0
服务器安装证书
客户端安装证书

← 服务器安装证书 客户端安装证书→

最近更新
01
一些Shell常用的功能写法整理
10-20
02
删除git仓库submodule的步骤
10-20
03
django基本命令
10-16
更多文章>
Copyright © 2017-2025 随风逐叶
沪ICP备18008791号-1 | 沪公网安备31011502401077号

网站访问总次数: 0次
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式