Linux SSH安全高效操作,你掌握了吗?

安装SSH服务

检查是否已安装

systemctl status sshd   # 查看SSH服务状态

若显示Unit sshd.service could not be found,则需安装。

安装OpenSSH服务器

  • Debian/Ubuntu
    sudo apt update && sudo apt install openssh-server -y
  • CentOS/RHEL
    sudo yum install openssh-server -y

启动并设置开机自启

sudo systemctl start sshd        # 启动服务
sudo systemctl enable sshd       # 开机自启

基础配置

配置文件路径:/etc/ssh/sshd_config

关键参数修改(需root权限):

sudo nano /etc/ssh/sshd_config
  • 修改默认端口(避免暴力破解):
    Port 2222   # 将22改为自定义端口(如2222)
  • 禁止root远程登录(增强安全):
    PermitRootLogin no
  • 限制登录用户
    AllowUsers alice bob   # 仅允许alice和bob登录
  • 启用密钥登录(推荐):
    PasswordAuthentication no      # 关闭密码登录
    PubkeyAuthentication yes       # 启用密钥登录

保存后重启服务:

sudo systemctl restart sshd

防火墙放行SSH

开放自定义端口(以2222为例)

  • firewalld(CentOS/RHEL):
    sudo firewall-cmd --permanent --add-port=2222/tcp
    sudo firewall-cmd --reload
  • ufw(Ubuntu):
    sudo ufw allow 2222/tcp
    sudo ufw reload

验证端口监听:

ss -tunlp | grep sshd

输出应显示LISTEN状态(如0.0.0:2222)。


使用密钥登录(更安全)

本地生成密钥对(在客户端操作):

ssh-keygen -t ed25519   # 生成ED25519密钥(推荐)

将公钥id_ed25519.pub复制到服务器:

ssh-copy-id -p 2222 user@server_ip   # 替换端口和IP

测试登录:

ssh -p 2222 user@server_ip   # 无需密码即成功

安全加固建议

  1. Fail2Ban防护:自动封禁暴力破解IP
    sudo apt install fail2ban    # Debian/Ubuntu
    sudo yum install fail2ban    # CentOS/RHEL
  2. 禁用弱加密算法:在sshd_config末尾添加:
    KexAlgorithms curve25519-sha256
    Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com
    MACs hmac-sha2-512-etm@openssh.com
  3. 定期更新
    sudo apt upgrade openssh-server   # Debian/Ubuntu
    sudo yum update openssh-server    # CentOS/RHEL

常见问题解决

  • 连接超时
    检查防火墙规则、云服务商安全组是否放行端口。
  • 权限错误
    确保~/.ssh目录权限为700,密钥文件为600:

    chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
  • 服务无法启动
    检查配置语法:sudo sshd -t

SSH是Linux系统管理的安全基石,通过修改默认端口、强制密钥登录、结合Fail2Ban防护,可显著提升安全性,定期审计日志(/var/log/auth.log)和更新系统是长期维护的关键,对于生产环境,建议参考NIST或CIS安全基准进一步加固。

引用说明

  • OpenSSH官方文档:https://www.openssh.com/manual.html
  • Linux man pages(man sshd_config
  • CIS安全指南:https://www.cisecurity.org/benchmark/linux

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9965.html

(0)
酷番叔酷番叔
上一篇 2025年8月8日 07:38
下一篇 2025年8月8日 07:58

相关推荐

  • Linux中压缩文件夹如何加密?

    在Linux系统中,压缩并加密文件夹是保护数据隐私的常用操作,主要通过结合压缩工具和加密工具实现,以下是几种主流方法的详细步骤及对比,使用tar+gpg组合(推荐跨平台)tar用于压缩文件夹,gpg(GNU Privacy Guard)用于加密,适合需要跨平台(如Windows、macOS)解密场景,操作步骤……

    2025年10月8日
    800
  • 如何制作Linux SD卡?

    准备工作硬件需求SD 卡:容量 ≥16GB(建议 Class 10 以上,读写速度 ≥30MB/s),读卡器:支持 USB 3.0 以提升写入速度,计算机:Windows/macOS/Linux 系统均可,软件工具镜像写入工具:Windows: Rufus 或 BalenaEtchermacOS/Linux……

    2025年7月29日
    3100
  • Linux下如何清空数据库但保留表结构?

    操作前必备准备备份数据库清空前必须备份,防止误删,以MySQL为例:mysqldump -u [用户名] -p [数据库名] > backup.sql提示:将 [用户名] 和 [数据库名] 替换为实际值,执行后输入密码,确认权限需拥有数据库的超级用户(如MySQL的root)或删除权限,不同数据库的清空方……

    2025年8月8日
    3900
  • 如何安全添加官方PPA源?

    在Linux系统中升级PHP版本是确保网站安全、提升性能及支持新特性的关键操作,以下为详细步骤,涵盖主流发行版(Ubuntu/Debian、CentOS/RHEL),严格遵循系统管理最佳实践:升级前的关键准备备份数据 # 备份当前PHP配置和网站数据sudo cp -r /etc/php /etc/php_ba……

    2025年7月15日
    5700
  • Linux系统中双网卡如何同时配置两个独立的IP地址?

    在Linux系统中配置双网卡实现双IP地址是一项常见需求,通常用于服务器需要同时连接多个网络、实现负载均衡或冗余备份等场景,本文将详细介绍不同Linux发行版(如CentOS/RHEL和Ubuntu/Debian)下双网卡双IP的配置方法,包括静态IP和动态IP(DHCP)的配置步骤,以及配置后的验证和常见问题……

    2025年8月31日
    3400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信