การตรวจสอบสิทธิ์ของ FTP (บนเซิร์ฟเวอร์ที่อาจไม่อนุญาตให้แสดงรายการไดเรกทอรี)


2

เป็นไปได้หรือไม่ที่จะตรวจสอบสิทธิ์การอ่าน / เขียนสำหรับไดเรกทอรีที่กำหนดบนเซิร์ฟเวอร์ FTP โดยใช้บรรทัดคำสั่ง?

ฉันรู้ว่ามีวิธีต่อไปนี้:

  • เข้าสู่ไดเรกทอรีหลัก
  • ใช้lsคำสั่ง

แต่ฉันไม่สามารถไปทางนี้ได้เนื่องจากข้อเท็จจริงที่ว่าlsคำสั่งไม่พร้อมใช้งานสำหรับเหตุผลด้านความปลอดภัยในเซิร์ฟเวอร์บางตัว การอัปโหลดไฟล์เพื่อวัตถุประสงค์ในการทดสอบไม่ใช่ตัวเลือกสำหรับฉันเช่นกัน

ดูเหมือนว่าวิธีที่ดีที่สุดคือการตรวจสอบสิทธิ์ในไดเรกทอรีการทำงานเท่านั้น ทำอย่างไร


ls .ควรทำงาน หากไม่มีlsคุณอาจเมา
Jakuje

ดังนั้นจึงเป็น FTP หรือ SFTP ใช้แท็กที่ถูกต้องเท่านั้น! ไคลเอนต์บรรทัดคำสั่ง FTP คืออะไร แพลตฟอร์มอะไร คุณ จำกัด ลูกค้าไว้หรือไม่? คุณต้องการโซลูชันทั่วไปที่ทำงานบนเซิร์ฟเวอร์ทั้งสองที่ทำและสนับสนุนอยู่lsหรือไม่?
Martin Prikryl

@ มาร์ตินในขณะนี้ฉันตรวจสอบความเป็นไปได้ของการทำในไคลเอนต์บรรทัดคำสั่งที่มีอยู่แล้วใน Windows 7 ในการแก้ปัญหาสุดท้ายฉันจะใช้การใช้งานจาวาของฉันเพื่อตรวจสอบมัน ดังนั้นฉันคิดว่าถ้าเป็นไปได้ในไคลเอนต์ windows ftp แล้วมันจะเป็นไปได้ในการดำเนิน java เช่นกัน ฉันไม่ได้ถูก จำกัด โดยไคลเอนต์หรือไลบรารีโดยทั่วไปกรณีของฉันคือฉันไม่สามารถพึ่งพาการกำหนดค่าเซิร์ฟเวอร์หรือซอฟต์แวร์เซิร์ฟเวอร์ดังนั้นอย่างใดอย่างหนึ่งแล้วฉันสามารถใช้คำสั่ง 'ls' ในอื่น ๆ ฉันสามารถใช้ Someting อื่นหากมีตัวเลือกอื่น
Kamil

โปรดทราบว่าเซิร์ฟเวอร์สามารถปิดใช้งานคำสั่งใด ๆ "เพื่อความปลอดภัย" ดังนั้นด้วยทัศนคตินี้คุณไม่สามารถทำอะไรได้
Martin Prikryl

คำตอบ:


0

ตัวเลือกที่คุณมี:

  • LISTคำสั่งobsolete ( lsใน Widows ftp.exe) - แยกการตอบสนองด้วยรูปแบบที่ไม่ได้กำหนด แต่โดยทั่วไปชอบ:

    > LIST
    < 150 Opening ASCII mode data connection for file list
    < drwxr-xr-x   3 user group       4096 Aug  6 08:37 name
    
  • MLSDคำสั่งที่ทันสมัย(ไม่สนับสนุนftp.exe) - แยกคำที่พบบ่อย (แม้ว่าจะไม่ได้มาตรฐานจริงๆ) UNIX.mode"ความจริง"

    > MLSD
    < 150 Opening ASCII mode data connection for MLSD
    < modify=20150806063726;perm=flcdmpe;type=dir;unique=FD01U404A6;UNIX.group=505;UNIX.mode=0755;UNIX.owner=10005; name
    
  • STATคำสั่งobsolete (ไม่ได้รับการสนับสนุนโดยftp.exeชัดแจ้ง แต่สามารถใช้งานได้quote STAT path) - แยกคำตอบด้วยรูปแบบที่ไม่ได้กำหนด แต่โดยทั่วไปชอบ:

    > quote STAT name
    < drwxr-xr-x   3 user group       4096 Aug  6 08:37 name
    
  • MLSTคำสั่งที่ทันสมัย(ไม่ได้รับการสนับสนุนโดยftp.exeชัดแจ้ง แต่ใช้การเรียกได้quote MLST path) - แยกคำที่พบบ่อย (แม้ว่าจะไม่ได้มาตรฐานจริงๆ) UNIX.mode"ความจริง"

    > MLST name
    < 250-Start of list for name
    <  modify=20150806063729;perm=flcdmpe;type=dir;unique=FD01U4104C;UNIX.group=505;UNIX.mode=0755;UNIX.owner=10005; name
    < 250 End of list
    

ในทุกกรณีเซิร์ฟเวอร์ต้องรองรับคำสั่งตั้งแต่แรก LISTเซิร์ฟเวอร์ทั้งหมดทำสนับสนุน การสนับสนุนสำหรับคำสั่งอื่น ๆ ( STAT, MLSDและMLST) ไม่เป็นสากล


บาง FTP ลูกค้ายังสนับสนุนSTATคำสั่ง FTP, เช่น ftp> rstatus fileและบางเซิร์ฟเวอร์ FTP กลับข้อมูลแฟ้มข้อมูลเดียวกันในSTATการตอบสนองตามที่พวกเขาต้องการสำหรับเช่น LIST
Castaglia

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