centos ssh deny

CentOS SSH Deny:配置与安全实践

在CentOS系统中,SSH(Secure Shell)是远程管理服务器的核心工具,但默认配置可能存在安全风险,如暴力破解、未授权访问等,通过SSH Deny机制,可以有效限制恶意IP的访问,提升服务器安全性,本文将详细介绍CentOS SSH Deny的配置方法、安全策略及常见问题解决方案。

centos ssh deny

SSH Deny的必要性

SSH服务暴露在公网上时,常成为黑客攻击的目标,攻击者通过自动化工具尝试猜测用户名和密码,可能导致账户被破解或服务器被控制,启用SSH Deny功能后,系统可以自动封禁频繁失败的IP地址,减少暴力破解的风险,SSH Deny还能配合防火墙规则,实现更精细的访问控制。

基于Fail2ban的SSH Deny配置

Fail2ban是一个广泛使用的入侵防御工具,可通过监控日志文件自动封禁恶意IP,以下是具体步骤:

  1. 安装Fail2ban
    在CentOS系统中,使用yum命令安装Fail2ban:

    sudo yum install fail2ban -y

    安装完成后,启动并启用服务:

    sudo systemctl start fail2ban
    sudo systemctl enable fail2ban
  2. 配置SSH规则
    Fail2ban的默认配置文件位于/etc/fail2ban/jail.conf,建议复制为自定义配置文件以避免覆盖:

    sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

    编辑jail.local文件,添加或修改以下内容:

    [sshd]
    enabled = true
    port = ssh
    filter = sshd
    logpath = /var/log/secure
    maxretry = 3
    bantime = 3600
    • maxretry:最大尝试次数,超过后封禁IP。
    • bantime:封禁时间(秒),3600表示1小时。
  3. 重启Fail2ban服务
    保存配置后,重启服务使生效:

    sudo systemctl restart fail2ban

使用iptables实现SSH Deny

如果不想依赖Fail2ban,可以直接通过iptables手动封禁IP,以下是基本操作:

  1. 查看当前iptables规则

    centos ssh deny

    sudo iptables -L -n
  2. 封禁指定IP
    封禁IP 168.1.100

    sudo iptables -A INPUT -s 192.168.1.100 -j DROP
  3. 保存规则
    CentOS 7及以上版本使用iptables-service保存规则:

    sudo service iptables save
  4. 解封IP
    若需解封,使用以下命令:

    sudo iptables -D INPUT -s 192.168.1.100 -j DROP

优化SSH Deny的安全策略

仅封禁IP可能不够,建议结合以下措施提升安全性:

  1. 禁用root登录
    编辑SSH配置文件/etc/ssh/sshd_config,设置:

    PermitRootLogin no

    重启SSH服务:

    sudo systemctl restart sshd
  2. 使用密钥认证
    禁用密码认证,仅允许SSH密钥登录:

    PasswordAuthentication no
  3. 限制登录用户
    /etc/ssh/sshd_config中添加允许的用户:

    AllowUsers user1 user2
  4. 更改默认SSH端口
    将默认的22端口改为其他高位端口(如2222),减少扫描攻击:

    centos ssh deny

    Port 2222

监控与日志分析

定期检查SSH日志是发现异常的关键,日志文件通常位于/var/log/secure,可通过以下命令查看失败登录记录:

grep "Failed password" /var/log/secure | awk '{print $(NF-3)}' | sort | uniq -c | sort -nr

该命令会统计失败次数最多的IP,便于手动封禁。

常见问题与解决方案

  1. 问题:Fail2ban未生效
    解答:检查jail.local配置是否正确,确保日志路径与实际一致,可通过fail2ban-client status sshd查看规则状态。

  2. 问题:误封合法IP
    解答:使用fail2ban-client set sshd unbanip IP地址解封,或调整maxretryfindtime参数以减少误封。

FAQs

  1. Q: 如何查看当前被封禁的IP列表?
    A: 运行iptables -L -n --line-numbers查看iptables规则,或使用fail2ban-client status sshd查看Fail2ban封禁的IP。

  2. Q: SSH Deny是否会影响正常用户登录?
    A: 若配置合理(如合理的maxretrybantime),不会影响正常用户,但建议为可信IP设置白名单,避免误封。

通过以上方法,可以有效提升CentOS服务器的SSH安全性,减少未授权访问风险,定期更新规则和监控系统状态是长期维护的关键。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-12-31 03:53
下一篇 2025-12-31 04:00

相关推荐

  • CentOS清华大学镜像站下载地址是什么?

    CentOS作为一款广泛使用的Linux发行版,在企业级服务器环境中占据重要地位,其稳定性、安全性以及开源特性使其成为许多开发者和系统管理员的首选操作系统,由于网络环境的限制,在国内访问CentOS的官方源往往速度较慢,甚至可能出现连接失败的情况,为了解决这个问题,清华大学镜像源应运而生,为国内用户提供了一个高……

    2025-12-15
    007
  • CentOS美化工具有哪些?新手如何快速配置桌面主题?

    在Linux系统管理中,CentOS因其稳定性和广泛的应用场景而备受青睐,默认的命令行界面和桌面环境可能显得单调,缺乏个性化,为了提升使用体验,许多用户会选择使用CentOS美化工具来定制系统外观,这些工具不仅能改变界面风格,还能优化交互体验,让日常工作更加愉悦,本文将介绍几款流行的CentOS美化工具,涵盖桌……

    2025-11-17
    004
  • CentOS 7与Vlinuz系统有何区别与优势,使用体验如何?

    CentOS 7与Vlinuz的深入探讨CentOS 7简介CentOS 7是CentOS社区基于Red Hat Enterprise Linux 7开发的一款免费开源的Linux发行版,它继承了RHEL 7的稳定性、安全性以及强大的社区支持,成为了众多服务器、桌面用户的优选操作系统,Vlinuz简介Vlinu……

    2026-01-29
    009
  • centos直安装步骤详解,为何我的CentOS安装遇到这些疑问?

    CentOS 直安装指南准备环境在进行 CentOS 直安装之前,确保您的计算机满足以下基本要求:处理器:至少 1 GHz 的处理器内存:至少 512 MB 的 RAM硬盘空间:至少 10 GB 的可用空间光驱或 USB 启动盘下载 CentOS 安装镜像访问 CentOS 官方网站:https://www.c……

    2026-01-12
    005

发表回复

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

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信