אני מאלה שאוהבים לחדש וללמוד דברים חדשים, לא מזמן הייתי צריך להתקין ולהגדיר שרת FTP והחלטתי לעשות זאת אחרת ממה שתמיד עשיתי.
במקרה זה בחרתי בשירות FTP עם משתמשים וירטואליים, משתמשים אשר יאוחסנו בקובץ מוצפן (משתמש, סיסמה, הגדרות וכו '), כולם עם FTPd טהור.
כאן אני אראה לך איך לעשות את זה ... טוב, בוא נתחיל 😉
ראשית כל, ציין כי הפקודות במדריך זה מיועדות להפצות כמו דביאן או מבוססות עליהן, אולם אם מישהו משתמש בהפעלה אחרת בשרת שלו עליו להתקין את אותן חבילות ולהשתמש בהגדרות שהוגדרו למטה, הדבר היחיד שצריך לשנות היא פקודת ההתקנה.
1. ראשית עלינו להתקין FTPd טהור:
apt-get install pure-ftpd
הפלט יסתיים בערך כך:
2. השירות כבר מופעל, אך הוא חסר תועלת אם לא הגדרנו אותו כראוי, בואו נשים קובץ תצורה נרחב אך כמעט סטנדרטי, הוא מכיל את הרגיל, קובע כי משתמשים אנונימיים אינם מורשים וכו 'וכו'.
cd /etc/pure-ftpd/ && wget http://ftp.desdelinux.net/pure-ftpd.conf
3. ובכן, נניח שתיקיית ה- FTP שלנו היא / var / www / ftp / ואנחנו רוצים ליצור משתמש שיכול להעלות מידע לתיקייה / var / www / ftp / sysadmin /, בואו נשים את הדברים הבאים במסוף:
pure-pw useradd sysadmin -u 2001 -g 2001 -d /var/www/ftp/sysadmin/
משמעות הדבר היא:
pure-pw: הפקודה משמשת למניפולציה של משתמשי Pure-FTPd
useradd: אנו מציינים שנוסיף משתמש
sysadmin: המשתמש שאני רוצה ליצור
-u 2001: UserID של אותו משתמש
-g 2001: GroupID של אותו משתמש
-d / var / www / ftp / sysadmin /: התיקיה שתהיה הבית של אותו משתמש, כלומר לאן הם יעלו דברים
כשאתה נכנס לשורה הקודמת, הוא יבקש ממך את הסיסמה של אותו משתמש.
4. כעת עליהם לרענן את קובץ מסד הנתונים של המשתמש, לשם כך אנו נכנסים לתיקיה / etc / pure-ftpd / (cd / etc / pure-ftpd) ומכניסים למסוף:
pure-pw mkdb
5. כעת עלינו להתחיל את Pure-FTPd אך עם ציון שנשתמש בקובץ המשתמשים הווירטואליים, ראשית בוא נעצור את השירות:
/etc/init.d/pure-ftpd stop
לאחר מכן נדאג שהוא לא יתחיל כברירת מחדל כרגיל:
chmod -x /etc/init.d/pure-ftpd
ועכשיו אנו מתחילים את השירות בדרכנו:
/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb
6. אם ינסו להשתמש ביישום כמו Filezilla הם יראו שהם יכולים להתחבר ללא בעיות עם המשתמש שנוצר, אולם הם לא יוכלו להעתיק שום דבר או ליצור ספריות, זאת מכיוון שהתיקיה / var / www / ftp / sysadmin / (בית המשתמש לפי הדוגמה) אין את ההרשאות המתאימות, היא תתוקן בסימן:
chown -R 2001:2001 /var/www/ftp/sysadmin/
זכרו, ה- Uid and Gid 2001 הוא המשתמש שהקמנו, אנחנו יצרנו אותו עם הפקודה בשלב הקודם 3 😉
7. כדי להפסיק את השירות, פשוט לחץ על [Ctrl] + [C] באותו מסוף או, במסוף אחר, בצע:
killall pure-ftpd
כעת נציין כי השירות יתחיל אוטומטית עם המערכת עם תחילת השרת, לשם כך אנו משנים את הקובץ /etc/rc.local ולפני השורה האחרונה שאומרת "יציאה 0" שמנו את הפקודה איתה אנו מתחילים את שירות ה- FTP:
/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb
במילים אחרות, זה ייראה כך:
אתה יכול לערוך את הקובץ באמצעות nano, vi או העורך המועדף עליך, או אם אתה מעדיף, העתק והדבק פקודה זו שתקל על עבודתך:
perl -pi -e "s[exit 0][/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb]g" /etc/rc.local && echo "exit 0" >> /etc/rc.local
... כן כן ... כפי שאתה קורא, "להקל", זו פקודה מקיפה כן, אבל זה פשוט להחליף טקסט בפרל והד לא מזיק 🙂
8. ברגע שזה נעשה, הפעל מחדש את השרת ותראה ששירות ה- pure-ftpd התחיל ומוכן לעבודה 😀
כיצד למחוק משתמשים?
כפי שאמרתי לך קודם, הפקודה טהור-pw זה מה שאנחנו צריכים כדי לתפעל משתמשים, כדי למחוק משתמש (למשל, sysadmin) בוא נניח את הדברים הבאים:
cd /etc/pure-ftpd/
pure-pw userdel sysadmin
pure-pw mkdb
זכרו שבכל פעם שאתם מבצעים שינוי למשתמש כלשהו, עליכם ליצור מחדש את קובץ מסד הנתונים הווירטואלי של המשתמשים, הוא ממוקם ב- / etc / pure-ftpd / והוא נוצר / מתעדכן ב- pure-pw mkdb
בכל מקרה חברים אני חושב שאין הרבה יותר להוסיף, מזמינים אתכם לקרוא את העזרה של pure-pw כי זה מאפשר לנו הרבה יותר ממה שהראיתי לכם כאן (זו רק הדרכה קצרה וכמעט בסיסית).
לפני שנה או שנתיים הייתי מאלה שקשרו הכל ל- OpenLDAP או MySQL, אך ככל שעבר הזמן הבנתי שכל כך הרבה חיבורים למסדי נתונים שהם שרתים ככאלה מייצרים צריכה שפעמים רבות אנחנו לא יכולים להרשות לעצמנו, מסיבה זו, שימוש בחלופות קיימא לחלוטין כגון שימוש בבסיסי נתונים בקבצי היישום עצמו, כמו במקרה זה של .pdb של Pure-FTPd 🙂
כל ספק או שאלה אנסה לעזור ככל יכולתי.
ברכות ו ... פריצה שמחה!
זה ש .. תיעוד במקרה של שגיאות 😀
ואני כבר כותב את הפוסט על אופן ההתקנה של Nginx + MySQL + Spawn_FastCGI כמו שעשיתי בצדק, ובזכות זה הבלוג עובד כל כך טוב :)
אני מקווה שיהיה מוכן למחר או למחרתיים.
פוסט טוב; זה מצחיק, לאחרונה התאמצתי לשים את שרת ה- ftp שלי אפילו לא יכולתי עם vsftpd והלכתי ל- pure-ftpd ומה אם אני חושב שאני צריך זה לתת דוגמא ל conf ברורה שהתיעוד טוב מאוד, אבל לפחות היסודות . הצפנה, או לפחות יציאת ההנעה למקרה שמשתמשים בנתב.
דרך אגב עם פקודה זו pure-ftpwho מאפשר לך לדעת מי מחובר לשרת, ואם משהו מוריד;).
ולדבריך, הצבת מסד נתונים לחיבור לשרת אינה כה הכרחית.
תודה על התגובה 🙂
כן, לא הסברתי הרבה דברים (למעשה) בתצורה, זה שהנחתי שמי שיודע לנהל שרת, שרוצה להתקין שירות FTP, שמישהו לא יתקל בבעיות גדולות בקריאת התגובות של קובץ ה- conf ^ - ^
ברכות ושוב, תודה על ההערה
שלום פוסט טוב מאוד, אני משתמש (או לפחות בינתיים) ב- vsftpd אבל יש לי כמה בעיות עם זה, ורציתי לראות אם קרה לי לזה, האם יש לך כתובת אתר או מסמך כלשהו כדי לראות איך התצורה שלו היא?
תודה רבה };)
אתה יכול לראות את התצורה כאן: http://ftp.desdelinux.net/pure-ftpd.conf
בכל שאלה או אם אתם זקוקים למשהו פתחו שרשור בפורום שנעזור לכם בשמחה 🙂
טוב מאוד 😀
רק דבר אחד קטן, בפקודה perl חסר הסמל ^, כך שהוא לא משנה את היציאה השנייה שנמצאת בתגובות:
perl -pi -e "s[^exit 0][/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb]g" rc.local && echo "exit 0" >> rc.local
לגבי
מצוין, יש לי רק שאלה, איך אוכל ליצור משתמש לקריאה בלבד? אני משתמש בסנטוס 6.5, pureftpd, ispconfig ומצב גרפי.
אני משתמש ב- ispconfig רק עבור ftp
ברכות ותודה
דרך זו של התקנת pureftp היא ASCO 🙂 אתה משאיר את השירות פועל כשורש, יוצר משתמש וירטואלי ואז משנה את ההרשאות במערכת הקבצים, ומעלה זמן רב וכו '. אופן התקנת החבילה מוכן לשימוש, אין צורך לבצע את כל השלבים הללו
אתם מוזמנים לפרסם מדריך פחות "מגעיל" .. 😉
מה את מציעה? שים את שרת ה- ftp כדי להאזין ליציאה> 1024? אם שרת ה- ftp מאזין ליציאה הסטנדרטית שלו: 22 עליו להריץ כשורש אלא אם כן תשנה את יכולות הליבה, אם ברצונך לשפר את האבטחה השתמש במסגרת MAC עם SELinux וריאנט אחר יהיה לכלא / לשרוט את השרת ftp.
הקישור ל- pure-ftpd.conf למטה או לא קיים. אתה יכול לשחזר אותו?
תודה
כעבור שנתיים הקישור לקובץ pure-ftpd.conf עדיין למטה 🙁