温馨提示×

Ubuntu SFTP如何监控连接

小樊
45
2025-06-09 19:29:59
栏目: 智能运维

在Ubuntu系统中,你可以使用多种方法来监控SFTP连接。以下是一些常用的方法:

1. 使用tcpdump

tcpdump是一个强大的网络分析工具,可以用来捕获和分析网络流量。

sudo tcpdump -i eth0 port 22 
  • -i eth0:指定要监听的网络接口,通常是eth0wlan0
  • port 22:指定只捕获SFTP使用的端口(默认是22)。

你可以将输出重定向到一个文件以便后续分析:

sudo tcpdump -i eth0 port 22 -w sftp_traffic.pcap 

2. 使用ss

ssnetstat的替代工具,可以用来查看网络连接和监听端口。

sudo ss -tnp | grep ':22' 
  • -t:显示TCP连接。
  • -n:不解析服务名。
  • -p:显示进程信息。

3. 使用lsof

lsof可以列出打开的文件和使用这些文件的进程。

sudo lsof -i :22 

4. 使用fail2ban

fail2ban可以监控日志文件并自动禁止恶意IP地址。

首先,安装fail2ban

sudo apt-get install fail2ban 

然后,配置fail2ban来监控SFTP日志:

sudo cp /etc/fail2ban/jail.local /etc/fail2ban/jail.local.bak sudo nano /etc/fail2ban/jail.local 

jail.local文件中添加以下内容:

[DEFAULT] bantime = 600 maxretry = 3 [ssh] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 3 

保存并退出,然后重启fail2ban服务:

sudo systemctl restart fail2ban 

5. 使用auditd

auditd是一个系统审计工具,可以用来监控和记录系统调用和文件访问。

首先,安装auditd

sudo apt-get install auditd audispd-plugins 

然后,配置auditd来监控SFTP连接:

sudo nano /etc/audit/rules.d/audit.rules 

audit.rules文件中添加以下内容:

-a exit,always -F arch=b64 -S connect -S accept -k sftp -a exit,always -F arch=b32 -S connect -S accept -k sftp 

保存并退出,然后重启auditd服务:

sudo systemctl restart auditd 

你可以使用ausearch命令来查看审计日志:

sudo ausearch -k sftp 

通过这些方法,你可以有效地监控和管理Ubuntu系统上的SFTP连接。

0