Ubuntu Server 18.04.1. Настройка и установка FTP-сервера vsftpd
תוכן עניינים:
- תנאים מוקדמים
- התקנת vsftpd באובונטו 18.04
- קביעת תצורה של vsftpd
- 1. גישה ל- FTP
- 2. הפעלת העלאות
- 3. כלא חרוט
- 4. חיבורי FTP פסיביים
- 5. הגבלת כניסה למשתמש
- 6. אבטחת הילוכים באמצעות SSL / TLS
- הפעל מחדש את שירות vsftpd
- פתיחת חומת האש
- יצירת משתמש FTP
- השבתת גישה של מעטפת
- סיכום
FTP (Protocol Transfer Protocol) הוא פרוטוקול רשת רגיל המשמש להעברת קבצים לרשת מרוחקת וממנה. להעברת נתונים מאובטחת ומהירה יותר, השתמש ב- SCP או SFTP.
ישנם שרתי FTP מקוד פתוח רבים הזמינים עבור לינוקס. הפופולריים והנפוצים ביותר הם PureFTPd, ProFTPD ו- vsftpd. במדריך זה נתקין vsftpd (מאוד מאובטח Ftp Daemon). זהו שרת FTP יציב, מאובטח ומהיר. אנו נראה לך כיצד לקבוע את התצורה של vsftpd להגביל את המשתמשים לספרייה הביתית שלהם ולהצפין את כל השידור באמצעות SSL / TLS.
למרות שמדריך זה נכתב עבור אובונטו 18.04 אותן הוראות חלות על אובונטו 16.04 ועל כל הפצה המבוססת על Debian, כולל Debian, Linux Mint ו- Elementary OS.
תנאים מוקדמים
לפני שתמשיך במדריך זה, וודא שאתה מחובר כמשתמש עם הרשאות סודו.
התקנת vsftpd באובונטו 18.04
חבילת vsftpd זמינה במאגרי אובונטו. כדי להתקין אותו, פשוט הפעל את הפקודות הבאות:
sudo apt update
sudo apt install vsftpd
שירות vsftpd יתחיל אוטומטית לאחר השלמת תהליך ההתקנה. אמת זאת על ידי הדפסת סטטוס השירות:
sudo systemctl status vsftpd
הפלט ייראה כמו להלן, ויראה ששירות vsftpd פעיל ופועל:
* vsftpd.service - vsftpd FTP server Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2018-10-15 03:38:52 PDT; 10min ago Main PID: 2616 (vsftpd) Tasks: 1 (limit: 2319) CGroup: /system.slice/vsftpd.service `-2616 /usr/sbin/vsftpd /etc/vsftpd.conf
קביעת תצורה של vsftpd
ניתן להגדיר את שרת vsftpd על ידי עריכת קובץ
/etc/vsftpd.conf
. מרבית ההגדרות מתועדות היטב בתוך קובץ התצורה. עבור כל האפשרויות הזמינות בקר בדף הרשמי של vsftpd.
בסעיפים הבאים נעבור על כמה הגדרות חשובות הנחוצות להגדרת תצורה של התקנה מאובטחת vsftpd.
התחל בפתיחת קובץ התצורה vsftpd:
1. גישה ל- FTP
אנו נאפשר גישה לשרת ה- FTP רק למשתמשים המקומיים, נמצא את ההוראות
anonymous_enable
ו-
local_enable
ונוודא את ההתאמה של התצורה שלך לשורות שלהלן:
anonymous_enable=NO local_enable=YES
2. הפעלת העלאות
write_enable
את
write_enable
הגדרת ה-
write_enable
כדי לאפשר שינויים במערכת הקבצים כגון העלאה ומחיקה של קבצים.
3. כלא חרוט
כדי למנוע ממשתמשי ה- FTP לגשת לקבצים שמחוץ לספריות הביתיות שלהם, מבטלים את הגדרת
chroot
.
chroot_local_user=YES
כברירת מחדל כדי למנוע פגיעות אבטחה, כאשר chroot מופעל vsftpd יסרב להעלות קבצים אם ניתן לכתוב את הספרייה בה משתמשים נעולים.
השתמש באחת מהשיטות להלן כדי לאפשר העלאה כאשר פעולת השלטים מופעלת.
-
שיטה 1. השיטה המומלצת לאפשר העלאה היא להשאיר את פעולת הרעש ולהגדיר ספריות FTP. במדריך זה, ניצור ספריית
/etc/vsftpd.confftp
בתוך בית המשתמש אשר תשמש כערך וספרייתuploads
הניתנות לכתיבה להעלאת קבצים.user_sub_token=$USER local_root=/home/$USER/ftp
שיטה 2. - אפשרות נוספת היא להוסיף את ההנחיה הבאה בקובץ התצורה vsftpd. השתמש באפשרות זו אם עליך להעניק גישה הניתנת לכתיבה למשתמש שלך לספריה הביתית.
/etc/vsftpd.confallow_writeable_chroot=YES
4. חיבורי FTP פסיביים
vsftpd יכול להשתמש בכל יציאה לחיבורי FTP פסיביים. אנו נפרט את טווח היציאות המינימלי והמקסימלי ונפתח בהמשך את הטווח בחומת האש שלנו.
הוסף את השורות הבאות לקובץ התצורה:
/etc/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/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
לאחר יצירת אישור SSL פתח את קובץ התצורה vsftpd:
sudo nano /etc/vsftpd.conf
מצא את ההוראות
rsa_private_key_file
ו-
rsa_private_key_file
, שנה את הערכים שלהן לנתיב קובץ ה-
pam
והגדר את ההנחיה
ssl_enable
ל-
YES
:
rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem ssl_enable=YES
אם לא צוין אחרת, שרת ה- FTP ישתמש רק ב- TLS ליצירת חיבורים מאובטחים.
הפעל מחדש את שירות vsftpd
לאחר שתסיים לערוך, קובץ התצורה vsftpd (למעט הערות) אמור להיראות כך:
/etc/vsftpd.conf
listen=NO listen_ipv6=YES anonymous_enable=NO local_enable=YES write_enable=YES dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem ssl_enable=YES user_sub_token=$USER local_root=/home/$USER/ftp pasv_min_port=30000 pasv_max_port=31000 userlist_enable=YES userlist_file=/etc/vsftpd.user_list userlist_deny=NO
שמור את הקובץ והפעל מחדש את שירות vsftpd כדי שינויים ייכנסו לתוקף:
פתיחת חומת האש
לפתיחת יציאה
21
(יציאת פקודות FTP), יציאה
20
(יציאת נתונים FTP) ו-
30000-31000
(טווח יציאות פסיביות), הפעל את הפקודות הבאות:
sudo ufw allow 20:21/tcp
sudo ufw allow 30000:31000/tcp
כדי למנוע נעילה בחוץ, פתח את היציאה
22
:
sudo ufw allow OpenSSH
טען מחדש את כללי UFW על ידי השבתה והפעלה מחדש של UFW:
sudo ufw disable
כדי לאמת את הפעלת השינויים:
sudo ufw status
Status: active To Action From -- ------ ---- 20:21/tcp ALLOW Anywhere 30000:31000/tcp ALLOW Anywhere OpenSSH ALLOW Anywhere 20:21/tcp (v6) ALLOW Anywhere (v6) 30000:31000/tcp (v6) ALLOW Anywhere (v6) OpenSSH (v6) ALLOW Anywhere (v6)
יצירת משתמש FTP
כדי לבדוק את שרת ה- FTP שלנו ניצור משתמש חדש.
- אם כבר יש לך משתמש שברצונך להעניק גישה ל- FTP דלג על הצעד הראשון. אם תגדיר
allow_writeable_chroot=YES
בקובץ התצורה שלך, דלג על השלב השלישי.
-
צור משתמש חדש בשם
newftpuser
:sudo adduser 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 מאובטח ומהיר במערכת אובונטו 18.04.
ftp אובונטוכיצד להתקין שרת minecraft באובונטו 18.04

מדריך זה מכסה את ההתקנה והתצורה של הגרסה האחרונה של Minecraft Server באובונטו 18.04. אנו נשתמש ב- systemd להפעלת שרת Minecraft וכלי השירות mcrcon לצורך חיבור למופע הפועל.
כיצד להתקין שרת ftp עם vsftpd ב- centos 7

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

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