文章原鏈接:http://t.csdn.cn/x3yDi 一、CentOS7查看開放埠命令 CentOS7的開放關閉查看埠都是用防火牆來控制的,具體命令如下: 查看已經開放的埠 firewall-cmd --list-ports 開啟埠 firewall-cmd --zone=public ...
文章原鏈接:http://t.csdn.cn/x3yDi
目錄一、CentOS7查看開放埠命令
CentOS7的開放關閉查看埠都是用防火牆來控制的,具體命令如下:
查看已經開放的埠
firewall-cmd --list-ports
開啟埠
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含義
–zone #作用域
–add-port=80/tcp #添加埠,格式為:埠/通訊協議
–permanent #永久生效,沒有此參數重啟後失效
重啟防火牆
重啟firewall
firewall-cmd --reload
停止firewall
systemctl stop firewalld.service
禁止firewall開機啟動
systemctl disable firewalld.service
二、Centos查看埠占用情況和開啟埠命令
Centos查看埠占用情況命令,比如查看80埠
占用情況使用如下命令:
lsof -i tcp:80
列出所有埠
netstat -ntlp
1、開啟埠(以80埠為例)
方法一:
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 寫入修改
/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 ACCEPT `#重啟防火牆,修改完成
2、關閉埠
方法一:
/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 #重啟防火牆,修改完成
3、查看埠狀態
/etc/init.d/iptables status
查看應用/進程在使用該埠
有時啟動應用時會發現埠已經被占用,或者是感覺有些埠自己沒有使用卻發現是打開的。這時我們希望知道是哪個應用/進程在使用該埠。
CentOS下可以用netstat
或者lsof
查看,Windows下也可以用netstat
查看,不過參數會不同
netstat -nap #會列出所有正在使用的埠及關聯的進程/應用
lsof -i :portnumber #portnumber要用具體的埠號代替,可以直接列出該埠聽使用進程/應用
1、檢查埠被哪個進程占用
代碼如下複製代碼
netstat -lnp|grep 83 #83請換為你的apache需要的埠,如:80
SSH執行以上命令,可以查看到88埠正在被哪個進程使用。
2、查看進程的詳細信息
ps 6789
SSH執行以上命令。查看相應進程號的程式詳細路徑。
3、殺掉進程,重新啟動apache
代碼如下複製代碼
kill -9 6789 #殺掉編號為6789的進程(請根據實際情況輸入)
service httpd start #啟動apache
Windows系統
netstat -nao #會列出埠關聯的的進程號,可以通過任務管理器查看是哪個任務
最後一列為程式PID,再通過tasklist命令:tasklist | findstr 6789,通過任務管理結束掉這個程式就可以了