Centos查看端口占用状况命令,好比查看80端口占用状况使用以下命令:apache
lsof -i tcp:80tcp
列出全部端口ide
netstat -ntlpspa
一、开启端口(以80端口为例).net
方法一:rest
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 写入修改进程
/etc/init.d/iptables save 保存修改ip
service iptables restart 重启防火墙,修改生效get
方法二:it
vi /etc/sysconfig/iptables 打开配置文件加入以下语句:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 重启防火墙,修改完成
二、关闭端口
方法一:
/sbin/iptables -I INPUT -p tcp --dport 80 -j DROP 写入修改
/etc/init.d/iptables save 保存修改
service iptables restart 重启防火墙,修改生效
方法二:
vi /etc/sysconfig/iptables 打开配置文件加入以下语句:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j DROP 重启防火墙,修改完成
三、查看端口状态
/etc/init.d/iptables status
有时启动应用时会发现端口已经被占用,或者是感受有些端口本身没有使用却发现是打开的。这时咱们但愿知道是哪一个应用/进程在使用该端口。
CentOS下能够用netstat或者lsof查看,Windows下也能够用netstat查看,不过参数会不一样
Linux:
netstat -nap #会列出全部正在使用的端口及关联的进程/应用
lsof -i :portnumber #portnumber要用具体的端口号代替,能够直接列出该端口听使用进程/应用
1、检查端口被哪一个进程占用
netstat -lnp|grep 88 #88请换为你的apache须要的端口,如:80
SSH执行以上命令,能够查看到88端口正在被哪一个进程使用。以下图,进程号为 1777 。
2、查看进程的详细信息
ps 1777
SSH执行以上命令。查看相应进程号的程序详细路径。以下图。
3、杀掉进程,从新启动apache
kill -9 1777 #杀掉编号为1777的进程(请根据实际状况输入)
service httpd start #启动apacheWindows系统:
SSH执行以上命令,若是没有问题,apache将能够正常启动。
netstat -nao #会列出端口关联的的进程号,能够经过任务管理器查看是哪一个任务
最后一列为程序PID,再经过tasklist命令:tasklist | findstr 2724
再经过任务管理kill掉这个程序.