Proftpd มีเซิร์ฟเวอร์ sftp ในตัวที่จะช่วยให้คุณแยกผู้ใช้ออกจาก sshd อย่างสมบูรณ์เพื่อวัตถุประสงค์ในการถ่ายโอนไฟล์ คุณสามารถตั้งค่าเพื่อที่จะใช้ไฟล์ passwd ที่แยกจากกันอย่างสมบูรณ์เพื่อแยกไฟล์เหล่านั้นออกไปอีก (มันยากที่จะเข้าสู่ระบบด้วย ssh และแยก chroot หากคุณไม่มีผู้ใช้ใน / etc / passwd .. .)
proftpd ยังช่วยให้คุณสามารถ chroot และแยกผู้ใช้ sftp ไปยังชุดของไดเรกทอรีได้อย่างง่ายดาย
เราทำสิ่งนี้:
LoadModule mod_sftp.c
<VirtualHost 10.1.1.217>
ServerName "ftp.example.com"
# from http://www.proftpd.org/docs/howto/NAT.html
MasqueradeAddress 1.2.3.4
PassivePorts 27001 27050
UseSendfile off
ExtendedLog /var/log/proftpd/access.log WRITE,READ default
ExtendedLog /var/log/proftpd/auth.log AUTH auth
AuthUserFile /etc/proftpd/AuthUsersFile
AuthOrder mod_auth_file.c
<IfModule mod_sftp.c>
Port 10022
SFTPAuthorizedUserKeys file:/etc/proftpd/ssh_authorized_keys/%u
SFTPEngine On
SFTPLog /var/log/proftpd/sftp.log
SFTPHostKey /etc/ssh/proftpd-ssh_host_rsa_key
SFTPHostKey /etc/ssh/proftpd-ssh_host_dsa_key
MaxLoginAttempts 6
</IfModule>
</VirtualHost>