温馨提示×

centos如何备份ssh配置

小樊
47
2026-07-19 08:00:20
栏目: 智能运维

在 CentOS 上备份 SSH 配置,通常只需要备份 SSH 服务端配置文件 以及相关的 密钥、目录结构。下面按常见场景给你一个完整、安全的做法。


一、SSH 配置相关文件位置

CentOS 中 SSH 相关文件一般在:

/etc/ssh/

核心文件包括:

文件 / 目录 说明
/etc/ssh/sshd_config SSH 服务端主配置文件(最重要)
/etc/ssh/ssh_config SSH 客户端配置(可选)
/etc/ssh/sshd_config.d/*.conf CentOS 8+ 的子配置(如有)
/etc/ssh/ssh_host_* SSH 主机密钥(非常重要)

二、最常用备份方式(推荐)

✅ 1. 备份整个 /etc/ssh 目录(最安全)

cp -a /etc/ssh /etc/ssh.bak

或打包成压缩文件(便于迁移):

tar czvf ssh_backup_$(date +%F).tar.gz /etc/ssh

例如:

ssh_backup_2026-01-21.tar.gz

三、只备份关键配置文件(轻量)

如果你只关心配置,不关心密钥:

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

或:

tar czvf sshd_config_backup.tar.gz /etc/ssh/sshd_config

⚠️ 不推荐用于恢复服务器,因为缺少 host key。


四、备份 SSH 主机密钥(重要)

如果你要 完整恢复 SSH 服务(避免客户端报警),必须备份 host key:

tar czvf ssh_host_keys_backup.tar.gz /etc/ssh/ssh_host_*

恢复时:

tar xzvf ssh_host_keys_backup.tar.gz -C /

五、备份并迁移到另一台 CentOS 服务器

1️⃣ 在源服务器备份

tar czvf ssh_full_backup.tar.gz /etc/ssh

2️⃣ 拷贝到目标服务器

scp ssh_full_backup.tar.gz root@new_server:/root/

3️⃣ 在目标服务器恢复

systemctl stop sshd
tar xzvf ssh_full_backup.tar.gz -C /
systemctl start sshd

六、验证 SSH 配置是否正确

备份或恢复后,建议检查配置:

sshd -t

无输出表示配置正常。


七、额外建议(生产环境)

✅ 可以加入定时备份(cron):

0 2 * * * tar czvf /backup/ssh_$(date +\%F).tar.gz /etc/ssh

✅ 备份权限很重要:

ls -l /etc/ssh/ssh_host_*

应为:

-rw------- root root

八、总结(推荐命令)

最推荐一条命令:

tar czvf /root/ssh_backup_$(date +%F).tar.gz /etc/ssh

如果你愿意,我可以:

  • 帮你写 自动备份脚本
  • 分析你当前的 sshd_config
  • 给你一个 安全加固版 SSH 配置模板

只要告诉我你的 CentOS 版本(7 / 8 / Stream)。

0