Centos查看端口占用狀況命令,好比查看80端口占用狀況使用以下命令:apache
lsof -i tcp:80tcp
列出全部端口rest
netstat -ntlp進程
一、開啓端口(以80端口爲例)ip
方法一:it
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 寫入修改table
/etc/init.d/iptables save 保存修改配置
service iptables restart 重啓防火牆,修改生效iptables
方法二:service
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 #啓動apache
SSH執行以上命令,若是沒有問題,apache將能夠正常啓動。
Windows系統: netstat -nao #會列出端口關聯的的進程號,能夠經過任務管理器查看是哪一個任務 最後一列爲程序PID,再經過tasklist命令:tasklist | findstr 2724 再經過任務管理結束掉這個程序就能夠了