เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | เนื้อหา | ถัดไป>

1.4. การรักษาความปลอดภัย FTP


มีตัวเลือกใน /etc/vsftpd.conf เพื่อช่วยทำให้ vsftpd ปลอดภัยยิ่งขึ้น ตัวอย่างเช่น ผู้ใช้สามารถจำกัดไว้ที่โฮมไดเร็กทอรีของตนเองได้โดยการไม่ใส่ความคิดเห็น:


chroot_local_user=ใช่


คุณยังสามารถจำกัดรายชื่อผู้ใช้เฉพาะให้อยู่ในไดเร็กทอรีหลักของพวกเขา:


chroot_list_enable=ใช่ chroot_list_file=/etc/vsftpd.chroot_list


หลังจากยกเลิกการใส่เครื่องหมายตัวเลือกด้านบนแล้ว ให้สร้าง a /etc/vsftpd.chroot_list มีรายชื่อผู้ใช้หนึ่งรายต่อบรรทัด จากนั้นรีสตาร์ท vsftpd:


sudo systemctl รีสตาร์ท vsftpd.service


นอกจากนี้ /etc/ftpusers file คือรายชื่อผู้ใช้ที่ ไม่อนุญาต การเข้าถึง FTP รายการเริ่มต้นประกอบด้วย root, daemon, none เป็นต้น หากต้องการปิดใช้งานการเข้าถึง FTP สำหรับผู้ใช้เพิ่มเติม ให้เพิ่มลงในรายการ


FTP สามารถเข้ารหัสได้โดยใช้ FTPS. แตกต่างจาก SFTP, FTPS คือ FTP ผ่าน Secure Socket Layer (SSL) SFTP เป็น FTP เช่นเซสชันผ่านการเข้ารหัส SSH การเชื่อมต่อ. ข้อแตกต่างที่สำคัญคือ ผู้ใช้ SFTP จำเป็นต้องมี เปลือก บัญชีในระบบแทน a เข้าสู่ระบบ เปลือก. การให้เชลล์แก่ผู้ใช้ทุกคนอาจไม่เหมาะสำหรับสภาพแวดล้อมบางอย่าง เช่น เว็บโฮสต์ที่ใช้ร่วมกัน อย่างไรก็ตาม เป็นไปได้ที่จะจำกัดบัญชีดังกล่าวไว้เฉพาะ SFTP และปิดใช้งานการโต้ตอบกับเชลล์ ดูหัวข้อ OpenSSH-Server สำหรับข้อมูลเพิ่มเติม


เพื่อกำหนดค่า FTPS, แก้ไข /etc/vsftpd.conf และที่ด้านล่างเพิ่ม:


ssl_enable=ใช่


นอกจากนี้ ให้สังเกตใบรับรองและตัวเลือกที่เกี่ยวข้องกับคีย์:


rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key


โดยค่าเริ่มต้น ตัวเลือกเหล่านี้จะถูกกำหนดเป็นใบรับรองและคีย์ที่จัดเตรียมโดยแพ็คเกจ ssl-cert ในสภาพแวดล้อมการใช้งานจริง ควรแทนที่ด้วยใบรับรองและคีย์ที่สร้างขึ้นสำหรับโฮสต์เฉพาะ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับใบรับรอง โปรดดูส่วนที่ 5 “ใบรับรอง” [p. 198.


ตอนนี้รีสตาร์ท vsftpd และผู้ใช้ที่ไม่ระบุชื่อจะถูกบังคับให้ใช้ FTPS:


sudo systemctl รีสตาร์ท vsftpd.service


เพื่อให้ผู้ใช้ที่มีเปลือกของ /usr/sbin/nologin เข้าถึง FTP แต่ไม่มีการเข้าถึงเชลล์ แก้ไข / etc / เชลล์

การเพิ่มไฟล์ เข้าสู่ระบบ เปลือก:


# /etc/shells: เชลล์การเข้าสู่ระบบที่ถูกต้อง

/bin/csh

bin / sh /

/usr/bin/es

/usr/bin/ksh

/bin/ksh

/usr/bin/rc

/usr/bin/tcsh

/ bin / tcsh

/usr/bin/อิช

/ถัง/แดช

/ bin / bash



/bin/rbash

/usr/bin/หน้าจอ

/usr/sbin/nologin


นี่เป็นสิ่งจำเป็นเพราะโดยค่าเริ่มต้น vsftpd ใช้ PAM สำหรับการตรวจสอบสิทธิ์และ /etc/pam.d/vsftpd

ไฟล์การกำหนดค่าประกอบด้วย:


ต้องมีการตรวจสอบสิทธิ์ pam_shells.so


พื้นที่ เปลือกหอย โมดูล PAM จำกัดการเข้าถึงเชลล์ที่ระบุไว้ใน / etc / เชลล์ ไฟล์


ไคลเอนต์ FTP ยอดนิยมส่วนใหญ่สามารถกำหนดค่าให้เชื่อมต่อโดยใช้ FTPS ไคลเอ็นต์ FTP บรรทัดคำสั่ง lftp สามารถใช้ FTPS ได้เช่นกัน


ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: