Score:0

Arch Linux การเชื่อมต่อระยะไกลขาเข้าหลุด

ธง cn

ฉันพบปัญหาในเซิร์ฟเวอร์ Arch Linux (ล่าสุด) ของฉัน ฉันสามารถทำซ้ำได้ด้วย netcat

หากฉันเริ่มฟังบนเซิร์ฟเวอร์ด้วย:

ncat -l -p 2000 -k

แล้ว

telnet (ไอพีในเครื่องของฉัน) 2000

จากเครื่องท้องถิ่น ฉันเห็นว่าการเชื่อมต่อทำงานได้ทั้งสองทาง

อย่างไรก็ตาม ถ้าฉัน telnet จากเครื่องระยะไกล การเชื่อมต่อจะถูกสร้างขึ้น แต่ไม่มีสิ่งใดที่ฉันพิมพ์บนฝั่งเซิร์ฟเวอร์ปรากฏขึ้นบนฝั่งระยะไกล ถ้าฉันพิมพ์อะไรบางอย่างที่ฝั่งรีโมต ทันทีที่กด Enter บรรทัดแรกจะปรากฏที่ฝั่งเซิร์ฟเวอร์ แต่จากนั้นการเชื่อมต่อก็หลุดไปด้วย การเชื่อมต่อถูกปิดโดยโฮสต์ต่างประเทศ.

ฉันสามารถยืนยันได้ว่าปัญหานี้ไม่เกี่ยวข้องกับเราเตอร์ของฉัน: การส่งต่อพอร์ตเดียวกันไปยังเครื่อง Debian เครื่องอื่นทุกอย่างทำงานได้ สิ่งนี้จะป้องกัน nginx และเซิร์ฟเวอร์อื่น ๆ ไม่ให้ทำงาน

ฉันไม่มีกฎ iptables ในขณะนี้:

$ iptables --รายการ
เชนอินพุท (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง         

ส่งต่อไปข้างหน้า (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง         

Chain OUTPUT (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง 

แนท:

# ncat -l -p 2000 -k -v             
Ncat: เวอร์ชัน 7.92 ( https://nmap.org/ncat )
Ncat: ฟังเมื่อ :::2000
Ncat: ฟังเมื่อ 0.0.0.0:2000


Ncat: การเชื่อมต่อจาก (ip สาธารณะระยะไกล)
Ncat: การเชื่อมต่อจาก (ip สาธารณะระยะไกล):60990

tcpdump บนเครื่องโลคัล:

# tcpdump -nnvvS พอร์ต 2000
tcpdump: กำลังฟัง eth0, ประเภทลิงก์ EN10MB (Ethernet), ความยาวสแน็ปช็อต 262144 ไบต์
13:09:46.847867 IP (tos 0x0, ttl 64, id 0, offset 0, flag [DF], proto TCP (6), ความยาว 60)
    (ip ท้องถิ่นของเซิร์ฟเวอร์).2000 > (ip สาธารณะระยะไกล).60990: ค่าสถานะ [S.], cksum 0x5399 (ไม่ถูกต้อง -> 0x8744), seq 1434025023, ack 276028935, ชนะ 65160, ตัวเลือก [mss 1460,sackOK,TS val 422478433 ecr 3525397188,nop,wscale 7], ความยาว 0
13:09:46.870265 IP (tos 0x0, ttl 64, id 14989, offset 0, flags [DF], proto TCP (6), ความยาว 53)
    (ip ท้องถิ่นของเซิร์ฟเวอร์).2000 > (ip สาธารณะระยะไกล).60990: ค่าสถานะ [P.], cksum 0x5392 (ไม่ถูกต้อง -> 0xa864), seq 1434025024:1434025025, ack 276028935, win 510, options [nop,nop,TS val 422478455 ecr 3525397212], ความยาว 1
13:09:49.931230 IP (tos 0x0, ttl 64, id 0, offset 0, flag [DF], proto TCP (6), ความยาว 40)
    (ip ท้องถิ่นของเซิร์ฟเวอร์).2000 > (ip สาธารณะระยะไกล).60990: ค่าสถานะ [R], cksum 0x94ad (ถูกต้อง), seq 1434025024, ชนะ 0, ความยาว 0

tcpdump บนเครื่องระยะไกล:

# tcpdump -nnvvS พอร์ต 2000
tcpdump: กำลังฟัง eth0, ประเภทลิงก์ EN10MB (Ethernet), ขนาดการดักจับ 262144 ไบต์
13:09:46.835291 IP (tos 0x10, ttl 64, id 59780, offset 0, flag [DF], proto TCP (6), ความยาว 60)
    (ip สาธารณะระยะไกล).60990 > (ip สาธารณะของเซิร์ฟเวอร์).2000: ค่าสถานะ [S], cksum 0xff3a (ไม่ถูกต้อง -> 0x4c94), seq 276028934, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3525397188 ecr 0,nop ,wscale 7], ความยาว 0
13:09:46.858924 IP (tos 0x0, ttl 48, id 0, offset 0, flag [DF], proto TCP (6), ความยาว 60)
    (ip สาธารณะของเซิร์ฟเวอร์).2000 > (ip สาธารณะระยะไกล).60990: ค่าสถานะ [S.], cksum 0xdbaa (ถูกต้อง), seq 1434025023, ack 276028935, ชนะ 65160, ตัวเลือก [mss 1452,sackOK,TS val 422478433 ecr 3525397188, nop,wscale 7], ความยาว 0
13:09:46.858957 IP (tos 0x10, ttl 64, id 59781, offset 0, flag [DF], proto TCP (6), ความยาว 52)
    (ip สาธารณะระยะไกล).60990 > (ip สาธารณะของเซิร์ฟเวอร์).2000: ค่าสถานะ [.], cksum 0xff32 (ไม่ถูกต้อง -> 0x06ea), seq 276028935, ack 1434025024, ชนะ 502, ตัวเลือก [nop,nop,TS val 3525397212 ecr 422478433 ], ความยาว 0
13:09:49.920045 IP (tos 0x10, ttl 64, id 59782, offset 0, flag [DF], proto TCP (6), ความยาว 58)
    (ip สาธารณะระยะไกล).60990 > (ip สาธารณะของเซิร์ฟเวอร์).2000: ค่าสถานะ [P.], cksum 0xff38 (ไม่ถูกต้อง -> 0x0603), seq 276028935:276028941, ack 1434025024, ชนะ 502, ตัวเลือก [nop,nop,TS val 3525400273 ecr 422478433], ความยาว 6
13:09:49.941752 IP (tos 0x0, ttl 48, id 0, offset 0, flag [DF], proto TCP (6), ความยาว 40)
    (ip สาธารณะของเซิร์ฟเวอร์).2000 > (ip สาธารณะระยะไกล).60990: ค่าสถานะ [R], cksum 0xe90b (ถูกต้อง), seq 1434025024, ชนะ 0, ความยาว 0
Copy Run Start avatar
jp flag
`ตารางรายการ nft` แสดงรายการอะไรหรือไม่
cn flag
ไม่ ผลลัพธ์ว่างเปล่า
Anton Danilov avatar
cn flag
ในทุกปัญหาเครือข่ายแปลก ๆ ให้รัน tcpdump จับทราฟฟิกและวางผลลัพธ์ลงในคำถาม
cn flag
ฉันไม่เคยใช้ tcpdump มาก่อน ฉันควรรันอย่างไร
MTG avatar
aq flag
MTG
FORWARD ของคุณคือการทิ้งสิ่งต่าง ๆ อย่างชัดเจน การเชื่อมต่อด้านเดียวหมายถึงบางสิ่งที่ปล่อยให้แพ็คเก็ตในทางเดียว แต่ไม่ใช่ในทางกลับกัน สถานีอื่นทำงานไม่ได้หมายความว่าไฟร์วอลล์บนเราเตอร์ของคุณเปิดรับทุกสิ่ง telnet อาจทำให้เข้าใจผิดได้ คุณควรมีหลักฐานว่า telnet เชื่อมต่อจริง เช่น ด้วย netstat ทั้งสองด้าน ดีกว่าใช้ nc กับ -v ทำ "tcpdump -n" ทั้งสองด้านและตรวจสอบการรับส่งข้อมูล
cn flag
ฉันได้อัปเดตคำถามด้วย tcpdumps ฉันได้รีเซ็ต iptables ด้วย ตอนนี้ยอมรับนโยบายเริ่มต้นสำหรับ FORWARD แล้ว
Score:0
ธง ru

เนื่องจาก tcpdump ของคุณแสดง server_local_ip และ server_public_ip - คุณมีที่อยู่ IP หลายรายการบนเซิร์ฟเวอร์ของคุณหรือไม่ นี่อาจเป็นปัญหาเกี่ยวกับการกำหนดเส้นทาง และถ้าเป็นปัญหา คุณควรกำหนดค่าการกำหนดเส้นทางนโยบาย

โพสต์คำตอบ

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