При установці Linux з будь-якого дистрибутива за замовчуванням буде доступний лише користувач root. У той же час з міркувань безпеки не буде можливо підключитися через FTP під цим користувачем. У цій статті ми пояснимо, як швидко налаштувати FTP-сервер і створити користувача, використовуючи лише команди консолі Linux.
Крок 1. Встановіть безпечне з’єднання з сервером
Спочатку вам потрібно підключитися до вашого сервера. Ви можете зробити це за допомогою протоколу SSH (Secure Shell), який забезпечує безпечний спосіб віддаленого доступу. Замість того, щоб входити як «root», який є обліковим записом адміністратора в Linux за замовчуванням, використовуйте звичайний обліковий запис і запускайте команди через «sudo» для додаткової безпеки.
Крок 2: Встановіть FTP-сервер
Наступний крок - установка FTP-сервера. У цьому підручнику ми будемо використовувати «proftpd», популярний FTP-сервер з відкритим кодом.
Якщо ви використовуєте CentOS, спочатку встановіть репозиторій EPEL. Введіть наступні команди в терміналі:
sudo yum install epel-release
sudo yum install proftpd
Якщо ви використовуєте Debian або Ubuntu, просто введіть:
sudo apt install proftpd
Крок 3: Налаштуйте автоматичний запуск FTP
Після встановлення FTP-сервера налаштуйте його на автоматичний запуск під час кожного завантаження сервера. Це виконується наступними командами:
sudo systemctl start proftpd.service
sudo systemctl enable proftpd.service
Крок 4. Налаштуйте брандмауер
З міркувань безпеки ваш брандмауер має бути налаштований таким чином, щоб дозволити вхідні з’єднання на TCP-порт 21. Точна команда залежить від того, яку утиліту керування брандмауером ви використовуєте. Для «iptables»:
sudo iptables -I INPUT -p tcp -m tcp --dport 21 -j ACCEPT
sudo systemctl save iptables
для "брандмауера":
sudo firewall-cmd --permanent --zone=public --add-port=21/tcp
sudo firewall-cmd –reload
для 'nftables' в Debian 11:
sudo nft add rule ip filter input tcp dport { 21 } ct state new accept
Після налаштування брандмауера не забудьте зберегти зміни, щоб вони застосували після перезавантаження. Для «iptables» і «firewalld» це робиться автоматично, тоді як для «nftables» вам потрібно буде вручну зберегти поточні правила у файлі, який буде завантажено під час запуску системи.
Крок 5. Обмежте користувачів FTP їхнім внутрішнім каталогом
За замовчуванням користувачі FTP можуть виходити за межі свого внутрішнього каталогу, що може становити загрозу безпеці. Щоб запобігти цьому, додайте рядок DefaultRoot ~ до файлу 'proftpd.conf'. Цей рядок обмежує користувачів їхнім внутрішнім каталогом. Додайте його в кінець файлу, а потім перезавантажте FTP-сервер:
sudo systemctl restart proftpd.service
Крок 6: Створення нового користувача FTP
Тепер ви готові створити нового користувача FTP. Він не потребує доступу до командної оболонки, тому вимкніть його з міркувань безпеки. Ось команди для цього:
sudo useradd [username] -d /home/[username] -m -s /usr/sbin/nologin
sudo passwd [username]
Замініть [ім’я користувача] на потрібне ім’я користувача. Команда 'passwd' запропонує вам ввести пароль для нового користувача.
Тепер ви налаштували сервер FTP і створили нового користувача FTP на сервері Linux. Під час налаштування завжди пам’ятайте про безпеку.