iptables/mysql設置指定主機訪問指定端口


本周,運維告知部署的服務被掃描發現漏洞,涉及的軟件分別為mysql,ZooKeeperElasticsearch.
因為最近任務繁重,人力資源緊張,因此無法抽出更多時間調整代碼,添加權限認證.
與軟件部署人員確認,上述三個軟件均為內網訪問,因此采用以下方式進行處理:
(1) mysql設置訪問ip地址,即僅允許同一網段的若干台機器進行訪問;
(2) ZooKeeper以及Elasticsearch主機添加ip訪問限制僅允許同一網段的若干台機器進行訪問.

mysql設置


#登陸mysql
mysql -u root -p

use mysql;

#獲取mysql用戶允許訪問主機情況
select host,user from `user`;

#更新訪問主機信息(此處假定用戶為hello)
update user set host='172.20.192.%' where user='hello';

#更新權限
flush privileges;

#退出
exit

iptables設置

主機均為centos,此處以ZooKeeper所在主機作為示范.

#查看主機端口占用情況(查看可知`ZooKeeper`開放`2181`端口)
netstat -tnl

#查看端口連接情況
netstat -anp | grep 2181

 #關閉`firewalld`服務
systemctl stop firewalld
systemctl mask firewalld

#安裝`iptables`
yum install iptables-services

#設置`iptables`開機啟動
systemctl enable iptables

#啟動`iptables`服務
systemctl start iptables

#禁用所有主機訪問2181端口
iptables -I INPUT -p tcp --dport 2181-j DROP

#允許**172.20.192.110**主機訪問2181端口(此處不同主機可以參考此條設置)
iptables -I INPUT -s 172.20.192.110 -p tcp --dport 2181 -j ACCEPT

# 保存當前處於ESTABLISHED以及RELATED階段的TCP連接
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

#保存`iptables`設置
service iptables save

#重啟`iptables`設置
systemctl restart iptables

#查看`iptables`保存規則
cat /etc/sysconfig/iptables

#查看iptables運行狀況
iptables -L -n -v

如果手滑,iptables錯誤設置了某條規則,刪除語句如下所示:

#查看錯誤設置的規則行號
iptables -L INPUT --line-numbers

#根據行號刪除錯誤設置的規則(假設此處刪除的是第14條規則)
iptables -D INPUT 14

補充:

根據進程id查找程序運行地址:

#根據應用名查找應用進程`id`
ps -ef|grep ***

#根據id查找進程信息(假設進程`id`是110)
cd /proc/110

#通過以下語句,查找`cwd`對應位置,就是程序保存位置
ls -l

推薦iptables設置文章(很實用):
譯Linux:25 個有用的 iptables 防火牆規則

PS:
如果您覺得我的文章對您有幫助,可以掃碼領取下紅包或掃碼支持(隨意多少,一分錢都是愛),謝謝!

支付寶紅包 支付寶 微信


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM