在CentOS系统中配置SFTP审计,可以通过以下步骤实现:
创建SFTP用户和用户组:
创建一个用户组,专门用于SFTP用户,例如 sftp_users
:
groupadd sftp_users
创建一个用户并添加到该组中,限制其shell为 /sbin/nologin
以防止其登录系统:
useradd -g sftp_users -s /sbin/nologin sftpuser
配置SFTP目录权限:
创建SFTP用户的根目录,并设置适当的权限:
mkdir /sftp
chown root:root /sftp
chmod 755 /sftp
为SFTP用户创建家目录并设置权限:
useradd -d /sftp sftpuser
chown sftpuser:sftp_users /sftp
chmod 750 /sftp
修改SSH配置文件:
编辑SSH配置文件 /etc/ssh/sshd_config
,添加或修改以下内容:
Subsystem sftp internal-sftp
Match Group sftp_users
ChrootDirectory /sftp
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
重启SSH服务以应用更改:
systemctl restart sshd
配置审计日志:
为了记录SFTP用户的操作,需要修改rsyslog配置文件 /etc/rsyslog.conf
,增加以下内容:
auth,authpriv.*,local5.* /var/log/sftp.log
重启rsyslog服务以应用更改:
systemctl restart rsyslog
查看审计日志:
使用 tail -f /var/log/sftp.log
命令实时查看SFTP操作日志。
使用 ausearch
工具搜索特定的审计事件,例如搜索与特定用户相关的登录事件:
ausearch -u sftpuser
使用 aureport
工具生成审计日志的报告,例如生成一个关于最近一周的登录事件的报告:
aureport -ts today-7days -i logins
请注意,上述步骤中的日志文件路径和名称可能需要根据实际配置进行调整。此外,为了提高安全性,建议使用强密码策略、定期更新系统和软件、限制网络访问权限等措施来保护系统免受未授权访问和潜在的安全威胁。