ปัญหา FTP
เปิดพอร์ตบน azure NSG และไฟร์วอลล์ของเซิร์ฟเวอร์: 21,20,4000-40009,990,14147
ปัญหา: ไคลเอนต์ไม่สามารถเชื่อมต่อกับ ftp จากบรรทัดคำสั่งและ Powershell
เราสามารถเชื่อมต่อกับ testuser ได้ แต่ไม่เห็นไดเรกทอรี / รายการ
ติดตั้ง Wireshark บนเซิร์ฟเวอร์และบนแล็ปท็อปของฉันเพื่อดักจับแพ็กเก็ตสร้างตัวกรองบน wireshark ด้วย“ ftp” และ“ IP” การดักจับแพ็กเก็ตไม่ระบุสภาพอากาศว่าเป็นโหมด passive หรือ active และแหล่ง IP นั้นถูกต้อง (เรากำหนดค่า IP หลักและ IP รองบนเซิร์ฟเวอร์)
เราพบว่าการเชื่อมต่อ ftp ไม่ทำงานจากพรอมต์คำสั่ง กำลังพยายามเริ่มต้นการเชื่อมต่อกับ ftp.abcd.com ซึ่งแก้ไขเป็น 11.22.33.44 และไม่ใช่เซิร์ฟเวอร์ FTP จริง 44.33.22.11 ที่อยู่ IP 11.22.33.44 และ 44.33.22.11 มีการกำหนดค่าในเครื่องเดียวกัน อย่างไรก็ตาม DNS แก้ไขไปยัง FTP IP สำรองแทน Primary
เริ่มแรกเรายังพบว่าการเชื่อมต่อ FTP กับ 11.22.33.44 นั้นใช้งานได้ดีและการเชื่อมต่อเหล่านี้เป็นการเชื่อมต่อที่ใช้งานอยู่ เราไม่สามารถเห็นได้ว่าโหมดพาสซีฟทำงานที่นี่ นอกจากนี้ในขณะที่เริ่มต้นการเชื่อมต่อกับ 11.22.33.44 จาก Commad promt เซสชั่นค้างหลังจากที่คุณให้คำสั่ง 'dir' แต่เดียวกันจะทำงานร่วมกับลูกค้า ftp อื่น ๆ เช่น FileZilla และ Winscp
ฉันลองทดสอบกับ WinSCP และ FileZilla และได้เห็นการเชื่อมต่อโหมดพาสซีฟทำงานได้ดีและไม่ทำงานซึ่งเป็นสิ่งที่คาดหวัง เราตรวจสอบว่าเหตุใดคำสั่ง 'dir' จึงไม่ทำงานจากอุปกรณ์หลังจากการตรวจสอบความถูกต้องสำเร็จเราต้องเห็นว่าไฟร์วอลล์ windows กำลังบล็อกการเชื่อมต่อ เราปิดการใช้งานไฟร์วอลล์และทุกอย่างเริ่มทำงานตามที่คาดไว้ ฉันตรวจสอบสิ่งเดียวกันในตอนท้ายหลังจากสร้างกฎไฟร์วอลล์ปัญหาได้รับการแก้ไข มีระบบหนึ่งซึ่งแม้หลังจากปิดการใช้งานไฟร์วอลล์ติดอยู่ที่รายชื่อไดเรกทอรีนี่อาจเป็นปัญหาภายในระบบนั้นหรือการเชื่อมต่อถูกบล็อคโดยปัจจัยภายนอก เนื่องจากหลังจากปิดการใช้งานพวกเราส่วนใหญ่ก็สามารถทำงานได้ดี
ต้องทำการตั้งค่าบนเครื่องไปที่แผงควบคุม→ Windows Firewall →การตั้งค่าขั้นสูง→กฎขาเข้าดับเบิลคลิกที่คอลัมน์ชื่อเพื่อจัดเรียงตามชื่อเลื่อนลงจนกว่าคุณจะเห็นกฎสองข้อที่เรียกว่า "โปรแกรมโอนไฟล์"; สิ่งเหล่านี้ถูกตั้งค่าเป็นบล็อกบนพีซีของฉัน (วงกลมสีแดงขนาดใหญ่พร้อมเส้นผ่าน) ดับเบิลคลิกที่กฎบนแท็บทั่วไปภายใต้การกระทำตั้งค่าเป็นอนุญาตการเชื่อมต่อคลิกตกลง