Install Vsftpd to configure FTP Server in centos 7
תוכן עניינים:
- תנאים מוקדמים
- התקנת vsftpd ב- CentOS 7
- קביעת תצורה של vsftpd
- 1. גישה ל- FTP
- 2. הפעלת העלאות
- 3. כלא חרוט
- 4. חיבורי FTP פסיביים
- 5. הגבלת כניסה למשתמש
- 6. אבטחת הילוכים באמצעות SSL / TLS
- הפעל מחדש את שירות vsftpd
- פתיחת חומת האש
- יצירת משתמש FTP
- השבתת גישה של מעטפת
- סיכום
FTP (פרוטוקול העברת קבצים) הוא פרוטוקול רשת שרת לקוח רגיל המאפשר למשתמשים להעביר קבצים לרשת מרוחקת וממנה.
ישנם מספר שרתי FTP מקוד פתוח הזמינים עבור לינוקס. הפופולריים והנפוצים ביותר הם PureFTPd, ProFTPD ו- vsftpd.
במדריך זה נתקין את vsftpd (מאוד מאובטח Ftp Daemon) ב- CentOS 7. זהו שרת FTP יציב, מאובטח ומהיר. אנו נראה לך כיצד לקבוע את התצורה של vsftpd להגביל את המשתמשים לספרייה הביתית שלהם ולהצפין את כל השידור באמצעות SSL / TLS.
להעברת נתונים מאובטחת ומהירה יותר, השתמש ב- SCP או SFTP.
תנאים מוקדמים
לפני שתמשיך במדריך זה, וודא שאתה מחובר כמשתמש עם הרשאות סודו.
התקנת vsftpd ב- CentOS 7
חבילת vsftpd זמינה במאגרי ברירת המחדל של CentOS. כדי להתקין אותה, הוציא את הפקודה הבאה:
sudo yum install vsftpd
לאחר התקנת החבילה, הפעל את הדמון vsftpd והפעל אותו אוטומטית בזמן האתחול:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
אתה יכול לוודא ששירות vsftpd פועל על ידי הדפסת הסטטוס שלו:
sudo systemctl status vsftpd
הפלט ייראה כמו להלן, ויראה ששירות vsftpd פעיל ופועל:
● vsftpd.service - Vsftpd ftp daemon Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2018-11-22 09:42:37 UTC; 6s ago Main PID: 29612 (vsftpd) CGroup: /system.slice/vsftpd.service └─29612 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
קביעת תצורה של vsftpd
קביעת התצורה של שירות vsftpd כוללת עריכת קובץ התצורה
/etc/vsftpd/vsftpd.conf
. מרבית ההגדרות מתועדות היטב בתוך קובץ התצורה. עבור כל האפשרויות הזמינות בקר בדף הרשמי של vsftpd.
בסעיפים הבאים נעבור על כמה הגדרות חשובות הנדרשות כדי להגדיר התקנה מאובטחת vsftpd.
התחל בפתיחת קובץ התצורה vsftpd:
sudo nano /etc/vsftpd/vsftpd.conf
1. גישה ל- FTP
אנו נאפשר גישה לשרת ה- FTP רק למשתמשים המקומיים, נמצא את ההוראות
anonymous_enable
ו-
local_enable
ונוודא את ההתאמה של התצורה שלך לשורות שלהלן:
anonymous_enable=NO local_enable=YES
2. הפעלת העלאות
write_enable
את
write_enable
הגדרת ה-
write_enable
כדי לאפשר שינויים במערכת הקבצים כגון העלאה ומחיקה של קבצים.
3. כלא חרוט
מנע ממשתמשי ה- FTP לגשת לקבצים שמחוץ לספריות הביתיות שלהם על ידי ביטול
chroot
הנחיית
chroot
.
chroot_local_user=YES
כברירת מחדל, כאשר הפונקציה מופעלת vsftpd יסרב להעלות קבצים אם ניתן לכתוב את הספרייה בה משתמשים נעולים. זה כדי למנוע פגיעות אבטחה.
השתמש באחת מהשיטות להלן כדי לאפשר העלאה כאשר פעולת השלטים מופעלת.
-
שיטה 1 - השיטה המומלצת לאפשר העלאה היא להשאיר את פעולת הרעש ולהגדיר ספריות FTP. במדריך זה, ניצור ספריית
/etc/vsftpd/vsftpd.confftp
בתוך בית המשתמש אשר תשמש כערך וספרייתuploads
הניתנות לכתיבה להעלאת קבצים.user_sub_token=$USER local_root=/home/$USER/ftp
שיטה 2. - אפשרות נוספת היא להוסיף את ההנחיה הבאה בקובץ התצורה vsftpd. השתמש באפשרות זו אם עליך להעניק גישה הניתנת לכתיבה למשתמש שלך לספריה הביתית.
/etc/vsftpd/vsftpd.confallow_writeable_chroot=YES
4. חיבורי FTP פסיביים
vsftpd יכול להשתמש בכל יציאה לחיבורי FTP פסיביים. אנו נפרט את טווח היציאות המינימלי והמקסימלי ונפתח בהמשך את הטווח בחומת האש שלנו.
הוסף את השורות הבאות לקובץ התצורה:
/etc/vsftpd/vsftpd.conf
pasv_min_port=30000 pasv_max_port=31000
5. הגבלת כניסה למשתמש
כדי לאפשר רק למשתמשים מסוימים להיכנס לשרת ה- FTP להוסיף את השורות הבאות לאחר קו
userlist_enable=YES
:
userlist_file=/etc/vsftpd/user_list userlist_deny=NO
כאשר אפשרות זו מופעלת, עליך לציין במפורש אילו משתמשים יכולים להתחבר על ידי הוספת שמות המשתמשים לקובץ
/etc/vsftpd/user_list
(משתמש אחד בכל שורה).
6. אבטחת הילוכים באמצעות SSL / TLS
על מנת להצפין את שידורי ה- FTP באמצעות SSL / TLS, יהיה עליכם לקבל אישור SSL ולהגדיר את שרת ה- FTP שישתמש בו.
אתה יכול להשתמש בתעודת SSL קיימת שנחתמה על ידי רשות אישורים מהימנה או ליצור אישור חתימה עצמית.
במדריך זה, ניצור תעודת SSL בחתימה עצמית באמצעות הפקודה
openssl
.
הפקודה הבאה תיצור מפתח פרטי של 2048 סיביות ותעודת חתימה עצמית בתוקף ל 10 שנים. גם המפתח הפרטי וגם האישור יישמרו באותו קובץ:
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
לאחר יצירת אישור SSL פתח את קובץ התצורה vsftpd:
sudo nano /etc/vsftpd/vsftpd.conf
מצא את ההוראות
rsa_private_key_file
ו-
rsa_private_key_file
, שנה את הערכים שלהן לנתיב קובץ ה-
pam
והגדר את ההנחיה
ssl_enable
ל-
YES
:
rsa_cert_file=/etc/vsftpd/vsftpd.pem rsa_private_key_file=/etc/vsftpd/vsftpd.pem ssl_enable=YES
אם לא צוין אחרת, שרת ה- FTP ישתמש רק ב- TLS ליצירת חיבורים מאובטחים.
הפעל מחדש את שירות vsftpd
לאחר שתסיים לערוך, קובץ התצורה vsftpd (למעט הערות) אמור להיראות כך:
/etc/vsftpd/vsftpd.conf
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES chroot_local_user=YES listen=NO listen_ipv6=YES pam_service_name=vsftpd userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=NO tcp_wrappers=YES user_sub_token=$USER local_root=/home/$USER/ftp pasv_min_port=30000 pasv_max_port=31000 rsa_cert_file=/etc/vsftpd/vsftpd.pem rsa_private_key_file=/etc/vsftpd/vsftpd.pem ssl_enable=YES
שמור את הקובץ והפעל מחדש את שירות vsftpd כדי שינויים ייכנסו לתוקף:
פתיחת חומת האש
לפתיחת יציאה
21
(יציאת פקודות FTP), יציאה
20
(יציאת נתונים FTP) ו-
30000-31000
(טווח יציאות פסיביות), הנפק את הפקודות הבאות:
sudo firewall-cmd --permanent --add-port=20-21/tcp
sudo firewall-cmd --permanent --add-port=30000-31000/tcp
טען מחדש את כללי חומת האש על ידי הקלדה:
יצירת משתמש FTP
כדי לבדוק את שרת ה- FTP שלנו ניצור משתמש חדש.
- אם כבר יש לך משתמש שברצונך להעניק גישה ל- FTP דלג על הצעד הראשון. אם תגדיר
allow_writeable_chroot=YES
בקובץ התצורה שלך, דלג על השלב השלישי.
-
צור משתמש חדש בשם
newftpuser
:sudo adduser newftpuser
בשלב הבא, עליך להגדיר את סיסמת המשתמש:
sudo passwd newftpuser
הוסף את המשתמש לרשימת משתמשי ה- FTP המותרת:
echo "newftpuser" | sudo tee -a /etc/vsftpd/user_list
צור את עץ ספריות ה- FTP וקבע את ההרשאות הנכונות:
sudo mkdir -p /home/newftpuser/ftp/upload
sudo chmod 550 /home/newftpuser/ftp
sudo chmod 750 /home/newftpuser/ftp/upload
sudo chown -R newftpuser: /home/newftpuser/ftp
כפי שנדון בסעיף הקודם, המשתמש יוכל להעלות את הקבצים שלו
ftp/upload
.
בשלב זה שרת ה- FTP שלך פונקציונלי לחלוטין ועליך להיות מסוגל להתחבר לשרת שלך עם כל לקוח FTP שניתן להגדיר אותו לשימוש בהצפנת TLS כמו FileZilla.
השבתת גישה של מעטפת
כברירת מחדל, בעת יצירת משתמש, אם לא צוין במפורש, למשתמש תהיה גישה SSH לשרת.
כדי להשבית את הגישה למעטפת, אנו ניצור מעטפת חדשה שתדפיס פשוט הודעה המציינת למשתמש כי חשבונו מוגבל לגישה ל- FTP בלבד.
הפעל את הפקודות הבאות כדי ליצור את הקליפה
/bin/ftponly
ולהפוך אותה להפעלה:
echo -e '#!/bin/sh\necho "This account is limited to FTP access only."' | sudo tee -a /bin/ftponly
echo -e '#!/bin/sh\necho "This account is limited to FTP access only."' | sudo tee -a /bin/ftponly
sudo chmod a+x /bin/ftponly
הוסף את המעטפת החדשה לרשימת הפגזים התקפים בקובץ
/etc/shells
:
echo "/bin/ftponly" | sudo tee -a /etc/shells
שנה את מעטפת המשתמש ל
/bin/ftponly
:
sudo usermod newftpuser -s /bin/ftponly
השתמש באותה פקודה כדי לשנות את הקונכייה עבור משתמשים אחרים שברצונך לתת גישה רק ל- FTP.
סיכום
במדריך זה למדת כיצד להתקין ולהגדיר שרת FTP מאובטח ומהיר במערכת CentOS 7 שלך.
ftp centosכיצד להתקין ולהגדיר שרת nfs ב- Ubuntu 18.04

Network File System (NFS) הוא פרוטוקול מערכת קבצים מבוזר המאפשר לשתף ספריות מרוחקות ברשת. במדריך זה נעבור כיצד להתקין שרת NFSv4 באובונטו 18.04.
כיצד להתקין שרת ftp עם vsftpd ב- debian 9

במדריך זה נתקין את vsftpd. זהו שרת FTP יציב, מאובטח ומהיר. אנו נראה לך כיצד לקבוע את התצורה של vsftpd להגביל את המשתמשים לספרייה הביתית שלהם ולהצפין את כל השידור באמצעות SSL / TLS.
כיצד להתקין שרת ftp עם vsftpd באובונטו 18.04

במדריך זה נתקין את vsftpd. זהו שרת FTP יציב, מאובטח ומהיר. אנו נראה לך כיצד לקבוע את התצורה של vsftpd להגביל את המשתמשים לספרייה הביתית שלהם ולהצפין את כל השידור באמצעות SSL / TLS.