CentOS 7的SSH登录日志具体存放在哪个文件目录下?

在CentOS 7系统中,SSH(Secure Shell)是远程管理的核心服务,其日志文件是系统管理员进行安全审计、故障排查和性能监控的关键信息来源,通过细致地分析这些日志,管理员可以清晰地了解系统的访问情况,及时发现潜在的安全威胁,并确保服务器的稳定运行。

CentOS 7的SSH登录日志具体存放在哪个文件目录下?

SSH日志的核心位置与内容

在CentOS 7中,所有与安全和认证相关的日志,包括SSH的连接尝试,都默认记录在 /var/log/secure 文件中,这个文件对于非root用户是不可读的,确保了日志信息的安全性,它详细记录了每一次SSH登录的成功与失败,包括时间戳、源IP地址、尝试登录的用户名以及认证方式等关键信息,当您怀疑服务器遭受攻击或需要排查连接问题时,首先应该查看的就是这个文件。

解读SSH日志条目

/var/log/secure 文件中的每一行都遵循特定的格式,理解这些格式是有效分析日志的第一步,以下是一些典型的日志条目及其含义:

  • 成功登录示例:

    Dec 10 10:15:30 my-server sshd[2345]: Accepted publickey for admin from 192.168.1.100 port 54321 ssh2

    这条日志表示在12月10日10:15:30,一个名为admin的用户通过publickey(公钥)认证方式,从IP地址168.1.100成功登录。sshd[2345]是处理该请求的SSH守护进程及其进程ID。

  • 密码认证失败示例:

    CentOS 7的SSH登录日志具体存放在哪个文件目录下?

    Dec 10 10:16:05 my-server sshd[2350]: Failed password for root from 203.0.113.5 port 22 ssh2

    此日志显示在10:16:05,有人尝试使用密码从0.113.5root用户身份登录,但失败了,这是最常见的暴力破解攻击迹象。

  • 无效用户登录失败示例:

    Dec 10 10:17:11 my-server sshd[2355]: Failed password for invalid user admin from 203.0.113.5 port 22 ssh2

    这条记录表明攻击者正在猜测用户名(如admin),但该用户在系统上并不存在,这同样是自动化攻击的典型特征。

高效分析SSH日志的实用命令

直接查看庞大的日志文件效率低下,使用命令行工具组合可以快速提取关键信息,下表列出了一些常用的分析命令:

目的 命令示例 说明
查看所有SSH相关日志 grep sshd /var/log/secure 筛选出所有由sshd进程产生的日志条目。
统计失败登录的用户名 grep "Failed password" /var/log/secure | awk '{print $9}' | sort | uniq -c | sort -nr 提取所有密码失败的用户名,并按失败次数降序排列。
统计攻击来源IP grep "Failed password" /var/log/secure | awk '{print $13}' | sort | uniq -c | sort -nr 提取所有失败登录的源IP,并按攻击次数降序排列。
实时监控SSH日志 tail -f /var/log/secure 动态显示日志文件末尾新增的内容,用于实时观察登录活动。

基于日志的安全加固建议

分析日志的最终目的是为了提升系统安全性,根据日志中反映的问题,可以采取以下加固措施:

CentOS 7的SSH登录日志具体存放在哪个文件目录下?

  1. 强制使用SSH密钥认证:密码认证极易受到暴力破解,应生成SSH密钥对,将公钥部署到服务器,并在/etc/ssh/sshd_config文件中设置PasswordAuthentication no,彻底禁用密码登录。
  2. 限制登录用户:通过在sshd_config中使用AllowUsersAllowGroups指令,明确指定只有特定的用户或用户组可以通过SSH登录,减少攻击面。
  3. 更改默认SSH端口:将SSH服务从默认的22端口更改为一个不常用的高位端口,可以有效规避大部分自动化扫描工具。
  4. 部署fail2ban:fail2ban是一款入侵防御软件,它能实时监控/var/log/secure等日志文件,并根据预设规则(如5分钟内密码失败3次)自动调用防火墙(如firewalld或iptables)封禁恶意IP地址。

相关问答FAQs


A1: CentOS 7使用logrotate工具来自动管理系统日志,其配置文件位于/etc/logrotate.conf/etc/logrotate.d/目录下,对于/var/log/secure,其轮转规则通常定义在/etc/logrotate.d/syslog文件中。logrotate会根据配置(如每周轮转一次、保留4个历史文件、自动压缩旧文件等)定期处理日志,防止其无限增长,从而节省磁盘空间,您可以根据需要编辑这些配置文件以自定义轮转策略。


A2: 出现大量 invalid user 的失败记录是典型的“暴力破解”或“凭证填充”攻击的早期阶段,攻击者使用自动化脚本,尝试用一个或多个常见密码(如123456, password)去匹配一系列常见的用户名(如admin, test, user, root等),由于他们不知道系统上存在的具体用户名,所以会先进行用户名猜测,这强烈表明您的服务器IP地址已被扫描器发现并成为攻击目标,除了检查是否有用户账户被攻破外,更应立即采取前述的安全加固措施,特别是部署fail2ban来动态拦截这些攻击源。

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

(0)
热舞的头像热舞
上一篇 2025-10-16 01:12
下一篇 2025-10-16 01:19

相关推荐

  • 如何在ARM架构上安装已停止维护的CentOS 6?

    在 Linux 发展的漫长历史中,CentOS 6 无疑是一个里程碑式的版本,它以其出色的稳定性和对 RHEL(Red Hat Enterprise Linux)的高度兼容性,赢得了无数企业和系统管理员的青睐,当我们谈论“CentOS 6”与“ARM”架构的结合时,我们触及的并非主流,而是一段特定技术探索时期的……

    2025-10-09
    003
  • 如何通过自托管资源池将服务器部署至云下IDC?

    服务器托管IDC是指将服务器资源部署在传统数据中心(IDC)中,而非云环境。这涉及自托管资源池的物理配置和管理,以实现对硬件资源的直接控制和优化性能,同时可能减少依赖外部云服务提供商的成本。

    2024-08-06
    007
  • 如何在ESXi虚拟机中完整安装CentOS镜像?

    在VMware ESXi虚拟化平台上部署CentOS系统,是构建稳定、高效服务器环境的常见实践,ESXi提供了强大的硬件虚拟化能力,而CentOS则以其稳定性和开源特性深受企业青睐,本文将详细介绍从准备工作到系统安装优化的完整流程,帮助您顺利完成部署,准备工作:万事俱备在开始安装之前,确保您已具备以下条件,这将……

    2025-10-08
    002
  • 如何计算服务器托管租用的详细费用?

    服务器托管租用费用通常包括机位费、带宽费、IP费用和电力费。机位费是按照服务器占用机柜的位置大小来收费;带宽费根据客户使用的网络带宽量计费;IP费用若需额外公网IP则单独计费;电力费则根据服务器运行时消耗的电量来计算。

    2024-07-29
    005

发表回复

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

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

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

关注微信