sftp / ssh ล้มเหลวหลังจากเพิ่มประโยค“ Match group”


8

ฉันพยายามตั้งค่าเซิร์ฟเวอร์ sftp บน Ubuntu / แม่นยำบน EC2 ฉันประสบความสำเร็จในการเพิ่มผู้ใช้ใหม่ที่สามารถเชื่อมต่อผ่าน ssh ได้ แต่เมื่อฉันเพิ่มประโยคต่อไปนี้:

Match Group sftp
    ChrootDirectory /home/%u
    AllowTCPForwarding no
    X11Forwarding no
    ForceCommand internal-sftp

ฉันไม่สามารถเชื่อมต่อได้ (เลย, ssh หรืออย่างอื่น) และฉันได้รับข้อความ

Error: Connection refused
Error: Could not connect to server

ฉันสามารถเชื่อมต่อกับระบบย่อยที่ตั้งค่าเป็น:

#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

มีความคิดใดว่าเหตุใดเซิร์ฟเวอร์ ssh จึงล้มเหลวด้วยข้อ "จับคู่" นี้ เป็นหลักทุกอย่างทำงานยกเว้นส่วน "chroot"

คำตอบ:


15

ตกลงแก้ไขปัญหา:

มี 2 ​​สิ่งที่ทำให้เกิดปัญหา

  1. ฉันต้องย้ายข้อ "จับคู่" ไปยังจุดสิ้นสุดของไฟล์มันอยู่ตรงกลาง
  2. มีปัญหาสิทธิ์ - พบคำตอบที่อื่นที่แก้ไข

จาก: /ubuntu/134425/how-can-i-chroot-sftp-only-ssh-users-into-their-homes

"ความเจ็บปวดทั้งหมดนี้ต้องขอบคุณปัญหาด้านความปลอดภัยหลายประการตามรายละเอียดที่นี่โดยทั่วไปแล้วไดเรกทอรี chroot จะต้องเป็นเจ้าของโดย root และไม่สามารถเข้าถึงการเขียนแบบกลุ่มได้เลยน่ารักดังนั้นคุณต้องเปลี่ยน chroot เป็นเซลล์ที่ถือครองและ ภายในที่คุณสามารถมีเนื้อหาที่แก้ไขได้ของคุณ

sudo chown root /home/bob
sudo chmod go-w /home/bob
sudo mkdir /home/bob/writable
sudo chown bob:sftponly /home/bob/writable
sudo chmod ug+rwX /home/bob/writable

และแบมคุณสามารถเข้าสู่ระบบและเขียน / เขียนได้ "

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