Directadmin Error Apache is functioning normally

echo “action=rewrite&value=httpd” >> /usr/local/directadmin/data/task.queue

ของผม centos 6.5 64bitนะครับ

มันควรจะออกมาแบบนี้นะครับ
[root@centos ~]# cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m

[root@centos ~]# service iptables save; service iptables restart
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
iptables: Setting chains to policy ACCEPT: filter mangle [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
iptables: Applying firewall rules: [ OK ]
iptables: Loading additional modules: [ OK ]
[root@centos ~]#

เช็คเลยครับ ว่ามี service อื่นควบคุม iptables อยู่อีกหรือเปล่า (ว่าแต่ที่บอกว่ามันหลุดหมายถึง iptables มัน flush เองใช่หรือเปล่าครับ?)

เช็คไงอ่ะครับ เพราะผมสั่ง service iptables save ไมไ่ด้ แต่ดันใช้คำสั่ง iptables-save ได้ และเข้าไปดูใน /etc/sysconfig/iptables มันก็มีอยู่ แต่สักพักมันกะหลุด

[root@onecool ~]# iptables-save

Generated by iptables-save v1.4.7 on Sun Apr 20 10:14:30 2014

*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state INVALID -j DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -s 202.117.3.104/32 -j DROP
-A INPUT -s 139.175.55.223/32 -j DROP
-A INPUT -p icmp -j DROP
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec --limit-burst 10 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 465 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 587 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 110 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 995 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 113 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 143 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 993 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -p udp -m udp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 1433 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: MSSQL "
-A INPUT -p tcp -m tcp --dport 1433 -j DROP
-A INPUT -p tcp -m tcp --dport 6670 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Deepthrt "
-A INPUT -p tcp -m tcp --dport 6670 -j DROP
-A INPUT -p tcp -m tcp --dport 6711 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Sub7 "
-A INPUT -p tcp -m tcp --dport 6711 -j DROP
-A INPUT -p tcp -m tcp --dport 6712 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Sub7 "
-A INPUT -p tcp -m tcp --dport 6712 -j DROP
-A INPUT -p tcp -m tcp --dport 6713 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Sub7 "
-A INPUT -p tcp -m tcp --dport 6713 -j DROP
-A INPUT -p tcp -m tcp --dport 12345 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Netbus "
-A INPUT -p tcp -m tcp --dport 12345 -j DROP
-A INPUT -p tcp -m tcp --dport 12346 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Netbus "
-A INPUT -p tcp -m tcp --dport 12346 -j DROP
-A INPUT -p tcp -m tcp --dport 20034 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: Netbus "
-A INPUT -p tcp -m tcp --dport 20034 -j DROP
-A INPUT -p tcp -m tcp --dport 31337 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: BO "
-A INPUT -p tcp -m tcp --dport 31337 -j DROP
-A INPUT -p tcp -m tcp --dport 6000 -m limit --limit 3/hour -j LOG --log-prefix "Firewalled packet: XWin "
-A INPUT -p tcp -m tcp --dport 6000 -j DROP
-A INPUT -p udp -m udp --dport 33434:33523 -j DROP
-A INPUT -p tcp -m tcp --dport 113 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p igmp -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p tcp -m tcp --dport 80 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p tcp -m tcp --dport 443 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 5/min -j LOG --log-prefix “Firewalled packet:”
-A INPUT -p tcp -j REJECT --reject-with tcp-reset
-A INPUT -j DROP
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 5/min -j LOG --log-prefix “Firewalled packet:”
-A FORWARD -p tcp -j REJECT --reject-with tcp-reset
-A FORWARD -j DROP
-A OUTPUT -p tcp -m tcp --dport 6660:6669 -j DROP
-A OUTPUT -p tcp -m tcp --dport 7000 -j DROP
-A OUTPUT -p tcp -m owner --uid-owner mail -m tcp --dport 25 -j ACCEPT
-A OUTPUT -p tcp -m owner --uid-owner root -m tcp --dport 25 -j ACCEPT
-A OUTPUT -d 127.0.0.1/32 -p tcp -m tcp --dport 25 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 25 -j REJECT --reject-with icmp-port-unreachable
-A OUTPUT -j ACCEPT
COMMIT

Completed on Sun Apr 20 10:14:30 2014

Generated by iptables-save v1.4.7 on Sun Apr 20 10:14:30 2014

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -d 192.168.xx.xx/32 -p tcp -m multiport --dports 80,443 -j DNAT --to-destination 110.170.xx.xx
COMMIT

Completed on Sun Apr 20 10:14:30 2014

หรือว่าผมต้องก๊อบค่าพวกนี้ไปไว้ใน /etc/init.d/iptables ครับ

หน้าตาเหมือนมี service firewall ตัวอื่นมาครอบ iptables อีกที

แน่ใจนะครับว่าไม่ไดมีพวก csf / apf อะไรพวกนี้อยู่

เช็คยังไงอ่ะครับ ผมว่าผมไม่ได้ลงเพิ่มนะครับ

ลองสั่ง chkconfig --list แล้ว copy มาดูครับ


[root@onecool ~]# chkconfig --listNetworkManager  0:off   1:off   2:on    3:on    4:on    5:on    6:offabrt-ccpp       0:off   1:off   2:off   3:on    4:off   5:on    6:offabrtd           0:off   1:off   2:off   3:on    4:off   5:on    6:offacpid           0:off   1:off   2:on    3:on    4:on    5:on    6:offatd             0:off   1:off   2:off   3:on    4:on    5:on    6:offauditd          0:off   1:off   2:on    3:on    4:on    5:on    6:offautofs          0:off   1:off   2:off   3:on    4:on    5:on    6:offblk-availability        0:off   1:on    2:on    3:on    4:on    5:on    6:offcertmonger      0:off   1:off   2:off   3:on    4:on    5:on    6:offcpuspeed        0:off   1:on    2:on    3:on    4:on    5:on    6:offcrond           0:off   1:off   2:on    3:on    4:on    5:on    6:offcups            0:off   1:off   2:on    3:on    4:on    5:on    6:offda-popb4smtp    0:off   1:off   2:on    3:on    4:on    5:on    6:offdirectadmin     0:off   1:off   2:on    3:on    4:on    5:on    6:offdnsmasq         0:off   1:off   2:off   3:off   4:off   5:off   6:offdovecot         0:off   1:off   2:on    3:on    4:on    5:on    6:offexim            0:off   1:off   2:on    3:on    4:on    5:on    6:offfirstboot       0:off   1:off   2:off   3:off   4:off   5:off   6:offhaldaemon       0:off   1:off   2:off   3:on    4:on    5:on    6:offhttpd           0:off   1:off   2:on    3:on    4:on    5:on    6:offip6tables       0:off   1:off   2:off   3:off   4:off   5:off   6:offiptables        0:off   1:off   2:off   3:off   4:off   5:off   6:offirqbalance      0:off   1:off   2:off   3:on    4:on    5:on    6:offkdump           0:off   1:off   2:off   3:off   4:off   5:off   6:offlvm2-monitor    0:off   1:on    2:on    3:on    4:on    5:on    6:offmdmonitor       0:off   1:off   2:on    3:on    4:on    5:on    6:offmessagebus      0:off   1:off   2:on    3:on    4:on    5:on    6:offmysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:offnamed           0:off   1:off   2:off   3:off   4:off   5:off   6:offnetconsole      0:off   1:off   2:off   3:off   4:off   5:off   6:offnetfs           0:off   1:off   2:off   3:on    4:on    5:on    6:offnetwork         0:off   1:off   2:on    3:on    4:on    5:on    6:offnfs             0:off   1:off   2:off   3:off   4:off   5:off   6:offnfslock         0:off   1:off   2:off   3:on    4:on    5:on    6:offntpd            0:off   1:off   2:on    3:on    4:on    5:on    6:offntpdate         0:off   1:off   2:off   3:off   4:off   5:off   6:offoddjobd         0:off   1:off   2:off   3:off   4:off   5:off   6:offportreserve     0:off   1:off   2:on    3:on    4:on    5:on    6:offproftpd         0:off   1:off   2:off   3:off   4:off   5:off   6:offpsacct          0:off   1:off   2:off   3:off   4:off   5:off   6:offquota_nld       0:off   1:off   2:off   3:off   4:off   5:off   6:offrdisc           0:off   1:off   2:off   3:off   4:off   5:off   6:offrestorecond     0:off   1:off   2:off   3:off   4:off   5:off   6:offrngd            0:off   1:off   2:off   3:off   4:off   5:off   6:offrpcbind         0:off   1:off   2:on    3:on    4:on    5:on    6:offrpcgssd         0:off   1:off   2:off   3:on    4:on    5:on    6:offrpcsvcgssd      0:off   1:off   2:off   3:off   4:off   5:off   6:offrsyslog         0:off   1:off   2:on    3:on    4:on    5:on    6:offsaslauthd       0:off   1:off   2:off   3:off   4:off   5:off   6:offsmartd          0:off   1:off   2:off   3:off   4:off   5:off   6:offsnmpd           0:off   1:off   2:on    3:on    4:on    5:on    6:offsnmptrapd       0:off   1:off   2:off   3:off   4:off   5:off   6:offspice-vdagentd  0:off   1:off   2:off   3:off   4:off   5:on    6:offsshd            0:off   1:off   2:on    3:on    4:on    5:on    6:offsssd            0:off   1:off   2:off   3:off   4:off   5:off   6:offstartips        0:off   1:off   2:on    3:on    4:on    5:on    6:offsysstat         0:off   1:on    2:on    3:on    4:on    5:on    6:offudev-post       0:off   1:on    2:on    3:on    4:on    5:on    6:offwdaemon         0:off   1:off   2:off   3:off   4:off   5:off   6:offwinbind         0:off   1:off   2:off   3:off   4:off   5:off   6:offwpa_supplicant  0:off   1:off   2:off   3:off   4:off   5:off   6:offypbind          0:off   1:off   2:off   3:off   4:off   5:off   6:off

ลองดูใน cron ว่ามีสั่ง reset firewall เป็นช่วงๆไว้หรือเปล่า
แล้วก็ Networkmanager นี่ก็เป็น service ที่รู้ดีเกินไปใน centos 6 ถ้าใช้ fixip ก็ปิดไปเลยก็ได้

ปัญหาคือ พอ restart iptables ทีไร ต้องใส่ค่า iptables -t nat -A PREROUTING -d 192.168.x.x -p tcp -m multiport --dports 80,443 -j DNAT --to-destination 110.170.x.x ใหม่ทุกทีครับ และใส่ไป สักประมาณ 1 ชั่วโมง ต้องใส่ใหม่ งงมากเลยครับทั้งที่ iptables-save แล้ว

ถึงปิดไว้ก็เป็นครับ ตั้งมานั่งเช็คตลอดเวลา นี่แหล่ะที่ผมเซง

ลองอันนี้ดูครับ

[B]rm -rf /usr/local/directadmin/data/templates/custom/virtual*
echo “action=rewrite&value=httpd” >> /usr/local/directadmin/data/task.queue
cd /usr/local/directadmin/
./dataskq
service httpd restart

ปล.จากการ Test โดย http://110.170.184.53/~onecool/ มันปกติดีนะครับ ลองเช็คไฟส์ /etc/hosts และ /etc/resolv.conf อีกครั้งครับ

[/B]

งงเหมือนกัน ตอนนี้ยังไม่หลุด เดี๋ยวถ้าหลุดแล้วจะลองนะครับ ถ้าได้ผลยังไงจะแจ้งนะครับ ขอบคุณครับ

ยังมีอาการหลุดเหมือนเดิมครับ ผมละงง ต้องสั่ง iptables -t nat -A PREROUTING -d 192.168.x.x -p tcp -m multiport --dports 80,443 -j DNAT --to-destination 110.170.x.x ใหม่ ถึงจะเข้าใช้งานเวปไซด์ได้

น่าจะมี cron ที่ reset firewall อยู่แน่ๆ ไม่งั้น rule มันต้องอยู่ยาวจนกว่าเราจะสั่ง stop หรือ reboot
เช็ค cron ดูดีๆ มันมีหลายที่

ถ้าเป็นผม จะไม่ใช้วิธี forward ใน firewall แต่แก้ไข virtual host template เพิ่มให้รองรับทั้ง ip นอก และ ip ใน ทั้งคู่เลย

รบกวนเขียน virtual host มาหน่อยได้ไหมครับ

อยากช่วยจัง ตอนนี้ทำได้แค่ช่วย “นึก” เพราะมองไม่เห็น สภาพแวดล้อมจริงๆ เอาเป็นว่าสั่งตามที่ผมบอกแล้วเอามาดูเลยนะครับ post ลงที่นี่แหละ

สั่งตามนี้ครับ

cat /etc/init.d/iptables

ps aux

iptables -V

iptables -L -t nat

cat /etc/crontab

cat /etc/cron.d/*

เก็บ Output มาดูให้หมดเลยนะครับ คงได้รู้กันก็คราวนี้แหละครับ :slight_smile:

cat /etc/init.d/iptables

$IPTABLES -A INPUT -p all -j DROP

$IPTABLES -A FORWARD -p tcp -j REJECT --reject-with tcp-reset
$IPTABLES -A FORWARD -p all -j DROP

#OUTPUT packets:
#Drop irc packets
$IPTABLES -A OUTPUT -p tcp --destination-port 6660:6669 -j DROP
$IPTABLES -A OUTPUT -p tcp --destination-port 7000 -j DROP

#SMTP output, only allow mail to send remotely.
$IPTABLES -A OUTPUT -m owner --uid-owner mail -p tcp --dport 25 -j ACCEPT
$IPTABLES -A OUTPUT -m owner --uid-owner root -p tcp --dport 25 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -d 127.0.0.1 --dport 25 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --dport 25 -j REJECT

Open VNC for USER1

$IPTABLES -A INPUT -m state --state NEW -m tcp -p tcp --dport 5800 -j ACCEPT
$IPTABLES -A INPUT -m state --state NEW -m tcp -p tcp --dport 5900 -j ACCEPT
$IPTABLES -A INPUT -m state --state NEW -m tcp -p tcp --dport 6000 -j ACCEPT

#Accept it anyway if it’s only output
$IPTABLES -A OUTPUT -j ACCEPT

#Masquerade internal connections going out.
#$IPTABLES -A POSTROUTING -t nat -o $EXTERNALIF -j MASQUERADE

exit 0