Я один з тих, хто любить інновації та пізнавати нові речі, недавно мені довелося встановити та налаштувати FTP-сервер, і я вирішив зробити це інакше, ніж завжди.
У цьому випадку я вибрав послугу FTP для віртуальних користувачів, користувачів, які будуть зберігатися у зашифрованому файлі (користувач, пароль, налаштування тощо), усі з Чистий FTPd.
Тут я покажу вам, як це зробити… що ж, почнемо
Перш за все, вкажіть, що команди в цьому посібнику призначені для дистрибутивів, таких як Debian, або на їх основі, однак, якщо хтось використовує інший дистрибутив на своєму сервері, він повинен встановити ті самі пакети та використовувати налаштування, встановлені нижче, єдине, що потрібно , яку потрібно змінити - це команда встановлення.
1. Спочатку ми повинні встановити Pure 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: Ідентифікатор групи цього користувача
-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 і 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
…так, так… як ви читаєте, «сприяти», це розширена команда, так, але вона просто замінює текст на perl і нешкідливе відлуння
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, але з часом я зрозумів, що так багато підключень до баз даних, які є серверами, створюють споживання, яке ми часто не можемо собі дозволити, тому використання повністю життєздатні альтернативи, такі як використання баз даних у власних файлах програми, як у цьому випадку Pure-FTPd .pdb
Будь-які сумніви чи запитання я намагатимусь допомогти, чим можу.
Вітаю та ... щасливого злому!