这是一个创建于 3906 天前的主题,其中的信息可能已经有所发展或是发生改变。
最近刚把wordpress博客迁移到vps上,前天突然发现博客无法访问了,找了半天原因才发现是本机无法连接到9000端口的php-fpm。
我的iptables的配置是vps初始化自带的,我仅仅在这个基础上封掉了一定的端口。不是很明白,iptables的DROP不是仅仅对外网的连接吗?比如3306我也DROP了但是可以正常使用,但是9000就不行?
另外让我感到奇怪的是,我之前启动iptables的时候正常,这个问题是突然发生的。
我的配置文件是:
# Generated by iptables-save v1.4.7 on Sun Mar 9 08:25:33 2014
*nat
:PREROUTING ACCEPT [18:1136]
:POSTROUTING ACCEPT [578:34680]
:OUTPUT ACCEPT [578:34680]
COMMIT
# Completed on Sun Mar 9 08:25:33 2014
# Generated by iptables-save v1.4.7 on Sun Mar 9 08:25:33 2014
*mangle
:PREROUTING ACCEPT [9974:3207993]
:INPUT ACCEPT [9974:3207993]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [9738:3215377]
:POSTROUTING ACCEPT [9738:3215377]
COMMIT
# Completed on Sun Mar 9 08:25:33 2014
# Generated by iptables-save v1.4.7 on Sun Mar 9 08:25:33 2014
*filter
:INPUT ACCEPT [7:7852]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [103:20606]
-A INPUT -p tcp -m tcp --dport 8729 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3006 -j DROP
-A INPUT -p udp -m udp --dport 3006 -j DROP
-A INPUT -p tcp -m tcp --dport 3306 -j DROP
-A INPUT -p udp -m udp --dport 3306 -j DROP
-A INPUT -p tcp -m tcp --dport 9000 -j DROP
-A INPUT -p udp -m udp --dport 9000 -j DROP
-A INPUT -p tcp -m tcp --dport 8080 -j DROP
-A INPUT -p udp -m udp --dport 8080 -j DROP
COMMIT
4 条回复 • 1970-01-01 08:00:00 +08:00
|
|
1
mantianyu 2014-03-16 20:42:45 +08:00 1
这不是 centos 系统预设的规则, 可能是 HN 预设的吧.
3306 端口 DROP 了还能正常使用, 莫非是 mysqld 工作在 unix socket 模式下? 贴个 my.cnf 看看?
另外, php-fpm 一般也是工作在 unix socket 模式下, 性能会高一些, 你可以改变一下 php-fpm 的工作模式.
|
|
|
2
ericFork 2014-03-16 21:02:27 +08:00 1
因为新版 php-fpm 的默认配置文件改变了,以前是默认监听 127.0.0.1:9000,现在是默认工作在 unix socket 下
|
|
|
3
WildCat 2014-03-16 21:12:35 +08:00
|
|
|
4
WildCat 2014-03-17 07:20:05 +08:00 via iPhone
@ ericFork @ mantianyu 还有个问题忘了问了,如果想要设置仅仅允许一些端口,把上面全删了,仅仅保留 -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 这样的可以吧?
|