欢迎访问宝典百科,专注于IT类百科知识解答!
当前位置:宝典百科 >> 软件系统 >> linux >> 百科详情

linux怎么查访问过端口的ip

2025-08-08 linux 责编:宝典百科 4072浏览

在Linux系统中访问过特定端口的IP地址可以通过多种方法实现,以下是一些常用的工具和技术,涵盖基础命令和进阶分析场景:

linux怎么查访问过端口的ip

1. netstat 命令

适用于实时监控或历史连接分析:

bash

netstat -tuln | grep <端口号>

-t 显示TCP连接,-u 显示UDP连接,-l 列出端口,-n 禁用域名解析(直接显示IP)。

查看已建立的连接(包含远程IP):

bash

netstat -anp | grep :<端口号>

注意:较新系统推荐使用 `ss` 替代 `netstat`。

2. ss 命令(现代替代方案)

高效查看socket连接:

bash

ss -tulnp | grep <端口号>

-a 显示所有连接(含ESTABLISHED状态),-p 显示进程信息。

筛选特定协议的远程IP:

bash

ss -tn src :<端口号>

3. lsof 命令

通过进程和文件描述符查看:

bash

lsof -i :<端口号>

输出包含COMMAND(进程名)、PID(进程ID)、USER(用户)及远程IP(如 `192.168.1.100:12345`)。

4. tcpdump 抓包分析

实时捕获经过端口的流量:

bash

tcpdump -i eth0 port <端口号> -nn

-nn 禁用端口和IP的域名解析,-w 保存抓包数据供后续分析(如Wireshark)。

提取源IP示例:

bash

tcpdump -i eth0 port 80 -nn | awk '{print $3}' | cut -d. -f1-4

5. 防火墙日志分析

若使用iptables/nftables,可通过日志记录访问:

bash

iptables -A INPUT -p tcp --dport <端口号> -j LOG --log-prefix "PORT_ACCESS: "

日志通常位于 `/var/log/syslog` 或 `/var/log/messages`,使用 `grep "PORT_ACCESS:"` 过滤。

6. 审计日志(auditd)

配置审计规则记录端口访问:

bash

auditctl -a exit,always -F arch=b64 -S connect -F a2=<端口号>

查询日志:

bash

ausearch -sc connect -k port_audit | grep -E "saddr=|dport="

7. 第三方工具

fail2ban:自动封禁异常IP,日志在 `/var/log/fail2ban.log`。

GoAccess:分析Nginx/Apache日志,可视化展示访问IP。

扩展知识:

连接状态:`TIME_WAIT` 表示连接已关闭但未完全释放,`ESTABLISHED` 为活跃连接。

高并发场景:使用 `ss -s` 查看总连接数,或通过 `/proc/net/tcp` 文件解析原始数据。

安全建议:长期监控建议结合ELK(Elasticsearch+Logstash+Kibana)搭建日志分析平台。

每种工具适用场景不同,根据需求选择实时监控(tcpdump)、历史分析(日志)或深度审计(auditd)。

本站申明:宝典百科为纯IT类百科展示网站,网站所有信息均来源于网络,若有误或侵权请联系本站!
为您推荐
  • 在Linux系统中查看和管理root账户涉及多个层面的操作,以下从权限验证、配置检查、登录监控及安全建议等角度展开说明: 1. 验证root账户状态查看/etc/passwd文件 执行 `cat /etc/passwd | grep root`,确认root账户是否存在。输出行类似
    2025-09-08 linux 2896浏览
  • 在Linux系统中调出中文简体输入法的方法取决于所使用的桌面环境和输入法框架。以下是几种常见场景的配置方法及扩展知识: 一、基于IBus框架的配置1. 安装IBus和拼音引擎 bash sudo apt install ibus ibus-libpinyin # Ubuntu/Debian sudo pa
    2025-09-08 linux 8859浏览
栏目推荐
  • 在Linux系统中配置DHCP服务器分配IP地址的步骤如下:1. 安装DHCP服务器软件 主流Linux发行版通常使用ISC DHCP Server或较新的`dnsmasq`。以ISC DHCP为例,在Debian/Ubuntu中运行`apt install isc-dhcp-server`,CentOS/RHEL则使用`yum install dhcp`。 2. 编
    2025-07-26 linux 4618浏览
  • 在Linux终端中,命令前的`$`符号是一个提示符(Prompt)的组成部分,它具有多重含义和用途: 1. 用户身份标识 `$`表示当前用户是普通用户,而`#`表示root超级用户。这种设计是为了提醒用户当前的操作权限级别,防止误执行
    2025-07-25 linux 5874浏览
  • Linux虚拟存储的核心思想是通过内存管理机制将物理内存与磁盘空间结合,为进程提供远大于实际物理内存的连续地址空间。其设计目标在于提升系统资源利用率、拓展内存容量以及保证进程隔离性,主要技术实现包含以下要点
    2025-07-25 linux 4628浏览
全站推荐
  • Linux系统的安全性在多个维度上具备显著优势,但实际安全水平取决于具体配置和使用环境。以下是详细分析:1. 开源透明性 Linux内核及主流发行版遵循GPL协议开放源代码,全球开发者可审计代码,漏洞暴露和修复速度远快于
    2025-09-18 linux 6190浏览
  • macOS 13(Ventura)对NVIDIA显卡的支持存在显著限制,以下是详细分析:1. 官方驱动终止 自2019年macOS Catalina起,NVIDIA停止为macOS提供官方Web Driver驱动支持。Ventura延续了这一政策,未发布兼容NVIDIA显卡的官方驱动,导致大多数现代
    2025-09-18 macos 1616浏览
  • 在macOS系统中获取CPU序列号的方法有多种,以下为详细步骤及相关技术背景:1. 通过系统报告获取 打开“关于本机”(点击左上角苹果图标→“关于本机”),进入“系统报告”→“硬件”部分,在“处理器”或“硬件概览
    2025-09-18 macos 1060浏览
友情链接
底部分割线