Linux关闭SSH日志
前言:之前部署的一台Linux服务器,才投产一个月不到,某天无意间竟然发现磁盘快满了都,500G的硬盘,哪那么容易满呢?后来才发现,好多客户端连着服务器从来不断开的,所以就一直产生ssh日志,在此记录如何关闭ssh日志。
在 Linux 系统中,SSH 日志主要由系统日志服务(如 rsyslog、syslog-ng 或 journald)管理。关闭 SSH 日志可能影响系统安全审计能力,请谨慎操作。以下是不同场景的解决方案:
1. 通过日志服务配置关闭 SSH 日志
方案 A:修改 rsyslog 配置(适用于大多数 Linux 发行版)
编辑配置文件:
sudo nano /etc/rsyslog.conf
注释或删除相关行:
找到包含 authpriv 或 sshd 的行(通常用于记录 SSH 日志),添加 # 注释:
# authpriv.* /var/log/secure
# authpriv.* /var/log/auth.log
重启 rsyslog 服务:
sudo systemctl restart rsyslog
方案 B:创建过滤规则(更灵活)
创建新配置文件:
sudo nano /etc/rsyslog.d/99-ssh-ignore.conf
添加过滤规则:
plaintext
# 忽略 authpriv 设施的所有日志
authpriv.* ~
# 或仅忽略 sshd 进程的日志
if $programname == 'sshd' then ~
重启服务:
bash
sudo systemctl restart rsyslog
方案 C:使用 journald(适用于 systemd 系统)
编辑配置文件:
sudo nano /etc/systemd/journald.conf
添加或修改以下行:
plaintext
ForwardToSyslog=no
重启服务:
sudo systemctl restart systemd-journald
2. 降低 SSH 服务自身日志级别
方案 D:修改 sshd_config
编辑 SSH 服务配置:
sudo nano /etc/ssh/sshd_config
修改 LogLevel 参数:
LogLevel QUIET # 最低级别,仅记录致命错误
重启 SSH 服务:
sudo systemctl restart sshd
3. 临时禁用 SSH 日志(不推荐长期使用)
方案 E:重定向日志输出
bash
# 临时禁用 authpriv 日志
echo "authpriv.* /dev/null" | sudo tee -a /etc/rsyslog.d/99-ssh-suppress.conf
sudo systemctl restart rsyslog
4. 验证配置是否生效
尝试 SSH 登录,然后检查日志文件:
tail -f /var/log/secure # CentOS/RHEL
tail -f /var/log/auth.log # Ubuntu/Debian
注意事项
安全风险:关闭 SSH 日志会导致无法审计暴力破解、异常登录等安全事件,建议至少保留 ERROR 级别日志。
日志轮换:若仅需控制日志大小,可修改 /etc/logrotate.d/ 目录下的配置文件。
临时禁用:方案 E 适合临时测试,完成后需删除配置文件。
根据实际需求选择合适的方案,平衡系统性能与安全审计需求。
浙公网安备 33010602011771号