我被我的ISP在工作中拉了起来,因为我有一台机器可以连接数十个出站SSH连接。我找到了那台机器,把它从网络上拿了出来。问题是,还有其他几台有着相同秘密的机器,它们可能会遭遇类似的命运。
我可以看到使用tcpdump的出站连接尝试,但我在试图跟踪脚本或进程进行这些连接尝试时遇到困难。我一直在尝试使用netstat -plunt、ss -tp、lsof和各种命令行实用程序,但没有能够找到违规的进程。有没有人对在这样的妥协盒上追踪进程和应用程序有任何建议?
sudo netstat -plunt
Active Internet connections (only servers)
Proto Re
我正在尝试确定哪个应用程序正在使用某个端口并获取netstat -tlnp | grep <port> for Linux。
此命令返回以下输出:
(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:<port> 0.0.0.0:* LISTEN 3591/java
我只需要在结果中获得进程名和PID,即java3591。
做这件事
我需要用虚拟主机配置nginx。但是当我尝试启动ngnix时,它失败了,它说进程已经在使用端口80。如何找出哪个进程正在使用端口80并终止它,以便启动nginx?
更新:
vehico@metaiot:~$ netstat -tulpn
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q
当我试图在我的项目上执行mvn grails:run-app时,我得到的JVM_Bind错误是8080已经在使用了。我一直在运行这个项目,在运行过程中Eclipse崩溃之前,我一直没有遇到任何问题。我已经重新启动了我的机器两次,但这并不能澄清这一点。Netstat (netstat -ano)在8080上没有显示任何内容。我的tomcat在8088上,如果我将它重新配置为在8080上运行,它可以正常工作,因此端口没有在使用。只有maven和/或grails有此错误。我有什么办法澄清这件事吗?
$ netstat -ano
Active Connections
Proto Local
我们有红帽7.5服务器
我们怀疑端口50070没有被服务正确关闭(我们通过netstat和PID检查未找到),但是从日志中我们可以看到端口正在使用。
所以我们试着做以下工作--例如,
ss --kill state listening src :50070
ss: unrecognized option '--kill'
Usage: ss [ OPTIONS ]
ss [ OPTIONS ] [ FILTER ]
-h, --help this message
-V, --version output version i
root@server:~# sudo netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1548/nginx
tcp 0 0 0.0.0.0:80
对于打开的TCP端口,我有不同的结果。当使用nmap -sS 127.0.0.1时,我得到了大约5个常用的开放端口,但是当使用osx内置工具作为stroke时,我会得到这5个端口加上5个额外的端口。它怎么会来?
第一nmap -sS 127.0.0.1
Starting Nmap 6.25 ( http://nmap.org ) at 2013-07-03 12:00 CEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00012s latency).
Not shown: 995 closed ports
PORT