ปัญหาไฟร์วอลล์เมื่อปรับใช้ Tomcat ที่ CentOS


10

ฉันพยายามปรับใช้เซิร์ฟเวอร์ Tomcat ในสภาพแวดล้อม CentOS แต่ไม่ได้รับคำขอ

การเรียกใช้งาน startup.sh ทำงานอย่างถูกต้องและบันทึกแสดงว่า tomcat กำลังทำงาน

16-Dec-2016 13:36:58.440 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [http-nio-8080]
16-Dec-2016 13:36:58.444 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [ajp-nio-8009]
16-Dec-2016 13:36:58.445 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 14803 ms

เมื่อใช้ netstat เพื่อตรวจสอบพอร์ตการฟังก็จะแสดงเป็นฟัง

$netstat -atnp|grep LISTEN

tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      3321/java

เพื่อข้ามไฟร์วอลล์ฉันเพิ่มกฎที่กำหนดเองที่ iptables

$iptables -nL

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50060
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50030
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50105
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50090
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50075
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50070
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:123
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

ฉันเพิ่มกฎด้านบนเพื่อหลีกเลี่ยงข้อผิดพลาดในการเพิ่มกฎหลังจากการปฏิเสธทั่วไป Iptables ทำงานเมื่อเซอร์วิสส่งคืนสิ่งต่อไปนี้:

$service iptables status
Redirecting to /bin/systemctl status  iptables.service
● iptables.service - IPv4 firewall with iptables
Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled)
Active: active (exited) since Fri 2016-12-16 13:09:47 EST; 1h 45min ago
Main PID: 728 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/iptables.service

อย่างไรก็ตามคำขอไม่ถึง Tomcat เนื่องจากบันทึกการเข้าถึง localhost ว่างเปล่า

Firewalld ไม่ได้รบกวนการเชื่อมต่อเพราะมันอ้างว่าถูกปิดการใช้งาน:

$firewall-cmd --state
not running

มีการตั้งค่าไฟร์วอลล์อื่น ๆ ที่ฉันหายไปหรือไม่


CentOS รุ่นใด จะเกิดอะไรขึ้นถ้าคุณเรียกใช้สถานะ iptables ของบริการ
— Anthony Fornito

ฉันเพิ่มกฎ iptables ที่เหลือ เวอร์ชั่น Mi คือ CentOS Linux รีลีส 7.2.1511 (Core) การเรียกใช้บริการ iptables สถานะแสดง iptables ว่าใช้งานได้
— Jared Rox

คุณพยายามปิดการใช้งานไฟร์วอลล์หรือไม่ ทำสิ่งนี้เพื่อให้คุณสามารถ จำกัด ปัญหาให้แคบลงได้
— Vikelidis Kostas

ตกลงดังนั้นพอร์ตไฟร์วอลล์จึงเปิดอยู่และบริการกำลังฟังอยู่ แต่จะเกิดอะไรขึ้นเมื่อคุณพยายามเชื่อมต่อกับมัน
— Michael Hampton

คำตอบ:


10

ฉันคิดว่าสิ่งที่เกิดขึ้นที่นี่คือคุณกำลังผสมเทคโนโลยีของคุณ

ลอง:

iptables บริการหยุด

เห็นคุณยังคงได้รับการตอบสนองเหมือนเดิม

หากคุณทำเช่นนั้นคุณจะต้องลบ iptables หรือ firewalld

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.