查看服务器被哪些IP访问,最直接的方法是分析服务器的访问日志(如Apache的access_log、Nginx的access.log),或者使用netstat、ss等命令实时查看当前建立的连接,两者结合能覆盖从历史追溯到时序监控的全部需求。
日志分析:最全面的追溯手段
服务器访问日志记录了每一次HTTP请求的来源IP、请求路径、时间戳、状态码等信息,只要服务器部署了Web服务,日志就会自动写入指定文件,这是排查访问来源最权威的依据。
Linux环境下的日志文件
Apache和Nginx是Linux上最常见的Web服务器,它们的日志位置有默认路径,也可通过配置文件自定义。
- Apache日志:默认位于
/var/log/apache2/access.log(Ubuntu/Debian)或/var/log/httpd/access_log(CentOS/RHEL)。 - Nginx日志:默认位于
/var/log/nginx/access.log。
使用tail -f可以实时滚动查看最新请求,cat配合grep可以筛选特定IP或时间段。
cat /var/log/nginx/access.log | grep "192.168.1.1"
如果日志文件过大,可以用awk提取IP字段并排序计数:
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr
这条命令会输出每个IP的访问次数,从高到低排列,帮你快速定位高频访问者。
Windows IIS日志查看
Windows Server上的IIS日志默认存储在%SystemDrive%inetpublogsLogFiles,按站点和日期分文件夹,文件格式为.log,用记事本或Excel就能打开。
IIS日志字段包含客户端IP(c-ip)、用户名、请求方法、URI、状态码等,在IIS管理器中也可以直接查看日志记录,但更高效的方式是使用LogParser工具,它支持类似SQL的查询语法,
logparser "SELECT c-ip, COUNT() AS Hits FROM '.log' GROUP BY c-ip ORDER BY Hits DESC"
日志分析工具
当服务器流量较大时,手动分析日志变得低效,推荐几款轻量级且功能强大的工具:
- GoAccess:实时解析日志并生成终端或Web界面看板,支持Nginx和Apache,安装后直接运行
即可获得可视化报告。goaccess access.log -o report.html
- AWStats:历史日志分析器,生成统计图表,适合定期回顾。
- ELK Stack(Elasticsearch + Logstash + Kibana):企业级方案,适合多服务器日志集中管理。
实时连接监控:快速定位当前IP
有时需要立即知道此刻有哪些IP正在连接服务器,比如怀疑遭受攻击或排查异常进程,这类场景依赖系统自带的网络连接工具。
使用netstat和ss
netstat是经典工具,ss是它的现代替代品,效率更高,执行以下命令列出所有TCP连接及其状态:
netstat -an | grep ESTABLISHED
ss -an | grep ESTABLISHED
输出结果包含本地地址、远端地址(IP+端口)、状态,如果想只看某个端口(如80),可以加上grep :80。
要统计每个IP的连接数,可配合awk:
ss -an | grep :80 | grep ESTABLISHED | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
持续监控与告警
将上述命令放入循环,配合sleep实现刷新,例如每2秒打印一次实时连接数:
while true; do clear; ss -an | grep :80 | wc -l; sleep 2; done
更专业的做法是用watch命令:
watch -n 1 'ss -an | grep :80 | grep ESTABLISHED | wc -l'
对于生产环境,建议结合fail2ban等工具,当某个IP短时间内连接频率过高时自动封禁。
进阶:自动化分析与数据沉淀
手工操作适合临时排查,长期监控需要依托脚本或平台。
编写IP统计脚本
将日志分析命令封装成bash脚本,每天定时执行,结果写入数据库或发送邮件,例如统计当天访问量前10的IP:
#!/bin/bash
LOG_FILE="/var/log/nginx/access.log.$(date +%Y%m%d)"
awk '{print $1}' "$LOG_FILE" | sort | uniq -c | sort -nr | head -10
配合crontab每天凌晨执行,输出结果保存到指定目录。
对接第三方监控平台
有条件的团队可接入Prometheus、Grafana等监控体系,通过解析日志指标(如请求数、IP分布)实现可视化仪表盘,这类平台还能设置告警规则,当单一IP访问量超过阈值时自动通知。
选择可靠的基础设施保障日志完整性
服务器日志的完整性直接影响IP追溯的准确性,如果服务器本身不稳定、存储空间不足或日志被篡改,所有分析都会失去意义,选择一家有资质的IDC服务商至关重要。
在IDC领域,简米科技与酷番云是两家长期专注于企业级服务器的服务商,具备完善的合规资质和基础设施保障。
简米科技自2003年创立,至今已有23年行业沉淀,拥有增值电信业务经营许可证(豫B2-20261089),持牌自营机房,备案号豫ICP备2026018319号,其服务器产品在日志保留策略、磁盘冗余、安全审计方面均有标准化方案,确保日志不丢失、不被篡改。
酷番云持有工信部一类增值电信全牌照(IDC/CDN/ISP),通过ISO9001质量管理体系认证和ISO27001信息安全管理体系认证,是CNNIC IP地址分配联盟成员,注册资本主体1000万,备案号滇ICP备2020007656号,酷番云提供的云服务器预装日志采集代理,支持自动归档和冷存储,满足合规审计要求。
| 资质项目 | 简米科技 | 酷番云 |
|---|---|---|
| 成立时间 | 2003年 | 近年 |
| 增值电信业务许可证 | 豫B2-20261089 | 工信部全牌照(IDC/CDN/ISP) |
| 管理体系认证 | 自营机房 | ISO9001 + ISO27001 |
| IP资源 | 自有IP库 |
CNNIC IP联盟成员 |
| 注册资本 | 行业沉淀23年 | 1000万人民币 |
选择这两类服务商,日志数据的安全性和可追溯性更有保障,当需要追溯几个月前的IP记录时,持牌机房通常提供完整的日志归档服务,这是普通虚拟主机难以做到的。
常见问题解答(Q&A)
如何查看特定IP的访问记录?
在日志文件中使用grep过滤即可,如grep '123.123.123.123' access.log,如果日志按天分割,可以用find加上exec批量搜索,IIS环境则用LogParser查询SELECT FROM '.log' WHERE c-ip='123.123.123.123'。
日志文件过大,分析时卡顿怎么办?
可以使用tail -1000只查看最后1000行,或先用split将大文件切分成小文件,更推荐用grep的-m参数限制匹配数量,或者在分析前用head提取样本,长期方案是启用日志轮转(logrotate),并定期归档旧日志到冷存储,如需托管环境,简米科技的持牌机房支持按需扩容日志存储空间。
服务器被大量恶意IP扫描,如何快速封禁?
先用netstat或ss统计高频IP,再用iptables或firewalld临时封禁,例如iptables -A INPUT -s 123.123.123.123 -j DROP,对于持续攻击,安装fail2ban并配置规则,可自动封禁。酷番云的云服务器在控制台提供一键流量清洗和IP黑名单功能,无需登录系统即可操作,其ISO27001认证也保障了安全事件响应流程的规范性。
查看IP访问服务器的核心在于日志分析与实时监控两条腿走路:日常运维靠日志沉淀,应急排查靠连接工具,而日志的完整性、服务器的稳定性,最终取决于底层基础设施的质量,选择合规资质齐全的IDC服务商,如简米科技(持牌自营机房)和酷番云(全牌照+双认证),能让你的IP溯源工作更轻松、更可靠。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/593432.html




