1. 程式人生 > >ubuntu安裝lnmp後開啟mysql,redis遠端訪問

ubuntu安裝lnmp後開啟mysql,redis遠端訪問

lnmp整合安裝後,即使關閉了伺服器防火牆,mysql依然不能遠端連線。因為lnmp預設添加了iptables規則,禁止了遠端訪問3306,6379埠。

root@iZjr5oba73m1ygZ:/usr/local/nginx/conf# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED
,ESTABLISHED ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmptype 8
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:6379

通過命令可以看出,3306,6379埠的target狀態是DROP的。如果需要開啟遠端訪問,則需要將該狀態設為ACCEPT,然後重啟防火牆。

因為在ubuntu中我使用service iptables restart找不到服務。因此我大膽的使用了iptables --flush命令,刪除了所有的iptables-rule;

root@iZjr5oba73m1ygZ:/usr/local/nginx/conf# iptables --flush
root@iZjr5oba73m1ygZ
:/usr/local/nginx/conf# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination

可見,iptables規則列表已經被我清空了,mysql也連線成功。

同樣,redis也可以遠端連線成功。