Score:0

พยายามจำกัดผู้ใช้ sftp ไว้ที่หนึ่งไดเร็กทอรี - ล้มเหลวในการเข้าสู่ระบบด้วย "ข้อความที่ได้รับยาวเกินไป"

ธง in

ฉันได้เพิ่มผู้ใช้ ftp_user ด้วยบรรทัด /etc/passwd:

ftp_user:x:1002:1003:ftp user,0,0,0,0:/home/ftp_user/files:/usr/sbin/nologin

เพื่อจำกัดให้ผู้ใช้นั้นสามารถ r/w/list ไดเร็กทอรีนั้นเท่านั้น และไม่สามารถระบุไดเร็กทอรีอื่นได้

เมื่อฉันพยายาม SFTP ในฐานะผู้ใช้นั้น ฉันจะได้รับ:

ได้รับข้อความยาวเกินไป 1416128883

sftp ทำงานได้ดีเมื่อฉันมีเชลล์เป็น /bin/sh ในไฟล์ passwd

อัปเดต

ฉันใช้ระบบย่อย sftp กับสิ่งนี้ใน sshd_config:

จับคู่กลุ่ม SFTP
ChrootDirectory /home/ftp_user/files
X11หมายเลขการส่งต่อ
อนุญาตให้ Tcp ส่งต่อหมายเลข
ForceCommand ภายใน-sftp

จับคู่ผู้ใช้ ftp_user
การตรวจสอบรหัสผ่านใช่

ตอนนี้ เมื่อฉันพยายาม SFTP ฉันได้รับ:

debug3: ส่งแพ็คเก็ต: ประเภท 61
debug3: รับแพ็กเก็ต: ประเภท 60
ดีบัก 2: input_userauth_info_req
debug2: input_userauth_info_req: num_prompts 0
debug3: ส่งแพ็คเก็ต: ประเภท 61
debug3: รับแพ็กเก็ต: พิมพ์ 52
debug1: รับรองความถูกต้องสำเร็จ (คีย์บอร์ดโต้ตอบ)
รับรองความถูกต้องเป็น x.x.x.x ([x.x.x.x]:22)
debug2: fd 5 ตั้งค่า O_NONBLOCK
debug3: fd 6 คือ O_NONBLOCK
debug1: ช่อง 0: ใหม่ [ไคลเอ็นต์เซสชัน]
debug3: ssh_session2_open: channel_new: 0
debug2: ช่อง 0: ส่งเปิด
debug3: ส่งแพ็คเก็ต: ประเภท 90
debug1: ขอ [email protected]
debug3: ส่งแพ็คเก็ต: ประเภท 80
debug1: กำลังเข้าสู่เซสชันแบบโต้ตอบ
debug1: คำมั่นสัญญา: เครือข่าย
debug3: ส่งแพ็คเก็ต: ประเภท 1
packet_write_wait: การเชื่อมต่อกับพอร์ต x.x.x.x 22: ท่อแตก
ปิดการเชื่อมต่อ
hr flag
iirc sftp ต้องการเชลล์ล็อกอินที่ถูกต้อง เว้นแต่คุณจะบังคับให้ใช้ระบบย่อย `internal-sftp` - ดูตัวอย่าง [อนุญาต SFTP แต่ห้ามใช้ SSH?](https://serverfault.com/a/354618)
zwets avatar
us flag
รายการโฮมไดเร็กทอรีใน `/etc/passwd` ไม่ได้กำหนดตำแหน่งที่ผู้ใช้สามารถและไม่สามารถไปยังระบบไฟล์ได้ มันเป็นเพียงโฮมไดเร็กตอรี่ของพวกเขา ไม่สำคัญว่าคุณจะตั้งค่าเป็น `/home/ftp_user` หรือ `/home/ftp_user/files` ปัญหาการเข้าสู่ระบบเป็นปัญหาแยกต่างหาก
Omroth avatar
in flag
ตอนนี้ฉันใช้ระบบย่อย sftp กับ: Match group sftp ChrootDirectory /home/ftp_user/files X11หมายเลขการส่งต่อ อนุญาตให้ Tcp ส่งต่อหมายเลข ForceCommand ภายใน-sftp และฉันได้เพิ่ม ftp_user และตรวจสอบว่ามีอยู่ใน /etc/groups เมื่อเข้าสู่ระบบฉันได้รับ: packet_write_wait: การเชื่อมต่อกับพอร์ต x.x.x.x 22: ท่อแตก ปิดการเชื่อมต่อ
zwets avatar
us flag
โปรดเพิ่มข้อมูลเพิ่มเติมที่เกี่ยวข้องกับคำถามของคุณแทนที่จะใส่ในความคิดเห็น การเพิ่มเอาต์พุตดีบัก `sftp` ที่เลือก (`-vvv`) ที่เลือกไว้อาจเป็นประโยชน์
Omroth avatar
in flag
เสร็จแล้ว ขอบคุณ zwets

โพสต์คำตอบ

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