Score:0

80 พอร์ต การเชื่อมต่อถูกปฏิเสธ

ธง cn

ฉันยังใหม่กับไฟร์วอลล์ Ubuntu และฉันมีเซิร์ฟเวอร์ Ubuntu 20.04

พอร์ตทั้งหมด 8080, 81 ... มีอยู่ภายนอก แต่เมื่อฉันลอง เทลเน็ต IP 80 ฉันได้รับ telnet: ไม่สามารถเชื่อมต่อกับโฮสต์ระยะไกล: การเชื่อมต่อถูกปฏิเสธ

รายละเอียดสถานะ ufw เป็น:

สถานะ: ใช้งานอยู่
การบันทึก: เปิด (ต่ำ)
ค่าเริ่มต้น: ปฏิเสธ (ขาเข้า) อนุญาต (ขาออก) ปฏิเสธ (กำหนดเส้นทาง)
โปรไฟล์ใหม่: ข้าม

ถึงการดำเนินการจาก
-- ------ ----
80 อนุญาตให้เข้าได้ทุกที่                  
80/tcp อนุญาตในทุกที่                  
22/tcp อนุญาตในทุกที่                  
4000 อนุญาตให้ทุกที่                  
443 อนุญาตให้เข้าได้ทุกที่                  
80/tcp (Nginx HTTP) อนุญาตในทุกที่                  
81 อนุญาตในทุกที่                  
80 (v6) อนุญาตให้เข้าได้ทุกที่ (v6)             
80/tcp (v6) อนุญาตในทุกที่ (v6)             
22/tcp (v6) อนุญาตในทุกที่ (v6)             
4000 (v6) อนุญาตในทุกที่ (v6)             
443 (v6) อนุญาตให้เข้าได้ทุกที่ (v6)             
80/tcp (Nginx HTTP (v6)) อนุญาตในทุกที่ (v6)             
81 (v6) อนุญาตให้เข้าได้ทุกที่ (v6)  

คำถามที่คล้ายกันที่ช่วยให้ฉันเพิ่มพูนความรู้เกี่ยวกับหัวข้อ:

https://serverfault.com/questions/129086/how-to-start-stop-iptables-on-ubuntu

การเชื่อมต่อพอร์ต 80 ถูกปฏิเสธ

ลิงค์สุดท้ายแนะนำให้รีสตาร์ท iptables แต่ฉันหวังว่าฉันพลาดอะไรไปและไม่ต้องรีสตาร์ท iptables

โปรดแนะนำฉันว่าควรทำอย่างไรในสถานการณ์นี้ และวิธีรับการเข้าถึงโฮสต์ของฉันแบบสาธารณะด้วยพอร์ต 80

ขอบคุณมากสำหรับการสนับสนุน

Andrej Podzimek avatar
cn flag
เห็นได้ชัดว่าเมื่อคุณได้รับ *การเชื่อมต่อถูกปฏิเสธ* พอร์ตนั้น **ไม่** ถูกบล็อก (นอกจากนี้ การตั้งค่าไฟร์วอลล์ในปัจจุบันยังเรียกว่า nftables (คำสั่ง: `nft`) ไม่ใช่ iptables) คุณแน่ใจหรือว่ามีบางอย่างกำลังฟังอยู่ในพอร์ต `80` ของคุณ เมื่อคุณดูที่ `netstat -atpn` พอร์ตของคุณ `80` อยู่ในสถานะ `LISTEN` หรือไม่ (หมายเหตุอีกด้านคือคุณควร **ไม่** จำเป็นต้องใช้พอร์ต `80` ในตอนนี้ พอร์ต `443` ก็น่าจะเพียงพอแล้ว พอร์ต `80` เมื่อใช้งาน ควรเปลี่ยนเส้นทางไปที่ `https` บน พอร์ต `443` สำหรับความเข้ากันได้กับไคลเอ็นต์เก่ามาก)
dos4dev avatar
cn flag
สวัสดี @AndrejPodzimek `netstat -atpn` ให้ผลลัพธ์ถัดไปกับฉัน `tcp6 0 0 127.0.0.1:80 :::* LISTEN 55264/java ` ฉันใช้ 80 เพื่อการทดสอบ/การเรียนรู้ ฉันต้องย้ายไปที่พอร์ต 443 แต่ฉันต้องการเข้าใจสถานการณ์นี้
dos4dev avatar
cn flag
@AndrejPodzimek คุณช่วยอธิบายเพิ่มเติมได้ไหมว่าทำไมฉันถึงสามารถเชื่อมต่อกับเซิร์ฟเวอร์ Java ของฉันในเครื่องได้ แต่ไม่เปิดเผยต่อสาธารณะ
dos4dev avatar
cn flag
ฉันคิดว่าฉันจะมีปัญหาเดียวกันกับพอร์ต 443 `tcp6 0 0 127.0.0.1:443 :::* LISTEN 55264/java ` มีให้บริการเฉพาะในพื้นที่เท่านั้น
Tilman avatar
cn flag
น่าเสียดายที่คุณไม่ได้ให้คำสั่งที่แน่นอนที่คุณใช้ ฉันเดาว่าที่คุณเขียน `IP` แสดงว่าคุณใช้ที่อยู่ IP จริงๆ ที่อยู่นั้นคือ `127.0.0.1` หรือไม่ เนื่องจากตามผลลัพธ์ `netstat` ของคุณนั้นเป็นที่อยู่เดียวที่เซิร์ฟเวอร์ของคุณรับฟังพอร์ต 80
dos4dev avatar
cn flag
สวัสดี @Tilman ฉันไม่รู้ว่าปิดบังที่อยู่ IP จริงของฉันในคำถามอย่างไร สำหรับ telnet ฉันใช้ที่อยู่ IP จริงของฉัน
dos4dev avatar
cn flag
@AndrejPodzimek ขออภัยสำหรับคำถามหลอกๆ หมายความว่าฉันต้องปรับแต่งแอปพลิเคชัน Java ของฉันหรือไม่ ฉันต้องการหลีกเลี่ยงเพราะฉันไม่สามารถเข้าถึงแอปพลิเคชันจาวาได้มากนัก
Andrej Podzimek avatar
cn flag
`::1` จะเป็นที่อยู่เฉพาะของ `localhost` เอาต์พุต "netstat" แสดงซ็อกเก็ต "tcp6" (เช่นdual-stack ตามที่ควรจะเป็น) กำลังฟังที่อยู่ 'localhost' ที่ล้าสมัยจากการทดลองที่ล้มเหลวในปี 1975 ที่เรียกว่า IPv4 ซึ่ง [ทำให้อินเทอร์เน็ตเสียหาย](https://docs.google.com/document/d/1YgiM5K16mlRWwqf6DNKU3--IkmtEViyN72MADgTPcZs /). หากต้องการฟังบนอินเทอร์เฟซเฉพาะ `bind()` (หรือสร้าง) a [`ServerSocket`](https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java /net/ServerSocket.html) ด้วยหนึ่งในที่อยู่ของอินเทอร์เฟซ หากต้องการฟังที่อยู่ _any_ ให้ `ผูก ()` กับที่อยู่ * wildcard * `::`
Andrej Podzimek avatar
cn flag
@ dos4dev สิ่งนี้ขึ้นอยู่กับที่มาของที่อยู่ หากเป็นโค้ดแบบเดินสาย คุณอาจต้องแก้ไขโค้ด หากมาจากไฟล์การกำหนดค่า ให้ปรับแต่งไฟล์การกำหนดค่าและตั้งค่า (เช่น) `::` เป็นที่อยู่สำหรับฟัง BTW เอกสารระบุว่า: *หาก `bindAddr` เป็น `null` ค่าเริ่มต้นจะยอมรับการเชื่อมต่อกับที่อยู่ในเครื่องใดๆ/ทั้งหมด* อย่างไรก็ตาม หากแอปพลิเคชันใช้สตริงที่อยู่บางประเภทเสมอ (เช่น จากไฟล์ปรับแต่ง) จากนั้นคุณอาจต้องระบุ `::` อย่างชัดเจน

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา