linux:servers:vsftpd
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| linux:servers:vsftpd [2026/10/21 13:33] – Кирилл Молчанов | linux:servers:vsftpd [2026/10/21 17:05] (текущий) – Кирилл Молчанов | ||
|---|---|---|---|
| Строка 63: | Строка 63: | ||
| </ | </ | ||
| - | ===== Настройка vsFTPd | + | ===== Открытие портов в UFW ===== |
| Откройте порты 20, 21, 990 и диапазон 40000-50000 для TCP-подключений для vsFTPd в UFW: | Откройте порты 20, 21, 990 и диапазон 40000-50000 для TCP-подключений для vsFTPd в UFW: | ||
| Строка 73: | Строка 73: | ||
| </ | </ | ||
| - | Для настройки vsFTPd используете конфигурационный файл по пути **/ | + | ===== Настройка vsFTPd ===== |
| + | |||
| + | |||
| + | Чтобы настроить vsFTPd, используете конфигурационный файл по пути **/ | ||
| - | Перед тем, как редактировать файл, создайте резервную копию | + | Перед тем, как редактировать файл, создайте |
| <code bash> | <code bash> | ||
| sudo cp / | sudo cp / | ||
| Строка 221: | Строка 224: | ||
| # Если этот параметр включен, | # Если этот параметр включен, | ||
| # Не рекомендуется с точки зрения безопасности (код нетривиальный). Однако, | # Не рекомендуется с точки зрения безопасности (код нетривиальный). Однако, | ||
| - | № параметр не включен, | + | # параметр не включен, |
| # | # | ||
| # | # | ||
| Строка 240: | Строка 243: | ||
| # Программа vsftpd предусмотрела такую атаку и всегда была безопасна, | # Программа vsftpd предусмотрела такую атаку и всегда была безопасна, | ||
| # | # | ||
| + | # | ||
| # | # | ||
| # You may fully customise the login banner string: | # You may fully customise the login banner string: | ||
| + | # | ||
| + | # Вы можете полностью настроить строку баннера входа: | ||
| # | # | ||
| # | # | ||
| # You may specify a file of disallowed anonymous e-mail addresses. Apparently | # You may specify a file of disallowed anonymous e-mail addresses. Apparently | ||
| # useful for combatting certain DoS attacks. | # useful for combatting certain DoS attacks. | ||
| + | # | ||
| + | # Вы можете указать файл с запрещенными анонимными адресами электронной почты. Вероятно | ||
| + | # полезно для борьбы с некоторыми DoS-атаками. | ||
| # | # | ||
| # (default follows) | # (default follows) | ||
| Строка 255: | Строка 264: | ||
| # | # | ||
| # Вы можете ограничить или разрешить доступ локальных пользователей к их домашним каталогам. | # Вы можете ограничить или разрешить доступ локальных пользователей к их домашним каталогам. | ||
| - | chroot_local_user=YES | + | #chroot_local_user=YES |
| + | # | ||
| # Разрешить использовать каталоги, | # Разрешить использовать каталоги, | ||
| - | allow_writeable_chroot=YES | + | #allow_writeable_chroot=YES |
| # | # | ||
| # Зададим корневую директорию для каждого пользователя | # Зададим корневую директорию для каждого пользователя | ||
| Строка 316: | Строка 325: | ||
| pam_service_name=vsftpd | pam_service_name=vsftpd | ||
| # | # | ||
| - | # Белый список | + | # Uncomment this to indicate that vsftpd use a utf8 filesystem. |
| + | # | ||
| + | # Раскомментируйте, | ||
| + | utf8_filesystem=YES | ||
| + | </ | ||
| + | |||
| + | Перезапустите службу vsFTPd: | ||
| + | <code bash> | ||
| + | sudo systemctl restart vsftpd | ||
| + | </ | ||
| + | |||
| + | ===== Создание FTP пользователя ===== | ||
| + | |||
| + | Создайте пользователя без доступа к Bash: | ||
| + | <code bash> | ||
| + | useradd -m -s / | ||
| + | </ | ||
| + | |||
| + | Добавьте к конец файла строчку по пути **/ | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | Сохранить файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | Добавьте созданного пользователя в группу **ftp**: | ||
| + | <code bash> | ||
| + | sudo usermod -aG ftp ftpuser | ||
| + | </ | ||
| + | |||
| + | ===== Включение белого списка пользователей ===== | ||
| + | |||
| + | Чтобы включить белый список пользователей, | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | Добавьте в файл следующий код: | ||
| + | < | ||
| + | # Белый список | ||
| userlist_enable=YES | userlist_enable=YES | ||
| userlist_file=/ | userlist_file=/ | ||
| userlist_deny=NO | userlist_deny=NO | ||
| - | # | + | </ |
| + | |||
| + | Сохранить файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | Теперь в файл **/ | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | Один пользователь - одна строка. | ||
| + | |||
| + | Сохранить файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | Перезапустите службу vsFTPd: | ||
| + | <code bash> | ||
| + | sudo systemctl restart vsftpd | ||
| + | </ | ||
| + | |||
| + | ===== Включение защищенное соединение SSL/TLS ===== | ||
| + | |||
| + | Чтобы включить защищенное FTP-подключение, | ||
| + | |||
| + | Сгенерируйте новый сертификат для защиты соединения: | ||
| + | <code bash> | ||
| + | sudo openssl req -x509 -nodes -days 720 -newkey rsa:2048 -keyout / | ||
| + | </ | ||
| + | |||
| + | Откройте файл конфигурации **/ | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | Добавьте в файл следующий код: | ||
| + | < | ||
| # This option specifies the location of the RSA certificate to use for SSL | # This option specifies the location of the RSA certificate to use for SSL | ||
| # encrypted connections. | # encrypted connections. | ||
| Строка 345: | Строка 433: | ||
| require_ssl_reuse=NO | require_ssl_reuse=NO | ||
| ssl_ciphers=HIGH | ssl_ciphers=HIGH | ||
| - | # | ||
| - | # Uncomment this to indicate that vsftpd use a utf8 filesystem. | ||
| - | # | ||
| - | # Раскомментируйте, | ||
| - | utf8_filesystem=YES | ||
| - | # | ||
| - | # Включение пассивного режима FTP | ||
| - | pasv_enable=YES | ||
| - | pasv_min_port=40000 | ||
| - | pasv_max_port=50000 | ||
| - | |||
| </ | </ | ||
| - | ===== Создание FTP пользователя ===== | + | Сохранить файл **Ctrl+O** \\ |
| + | Выход из редактора **Ctrl+X** | ||
| - | Создайте | + | Перезапустите службу vsFTPd: |
| <code bash> | <code bash> | ||
| - | useradd -m -s / | + | sudo systemctl restart vsftpd |
| </ | </ | ||
| - | Добавьте к конец файла строчку по пути **/etc/shells**: | + | ===== Включение пассивного режима FTP ===== |
| + | |||
| + | Чтобы | ||
| <code bash> | <code bash> | ||
| - | sudo nano /etc/shells | + | sudo nano /etc/vsftpd.conf |
| </ | </ | ||
| + | Добавьте в файл следующий код: | ||
| < | < | ||
| - | / | + | # Включение пассивного режима FTP |
| + | pasv_enable=YES | ||
| + | # Диапазон портов | ||
| + | pasv_min_port=40000 | ||
| + | pasv_max_port=50000 | ||
| + | # Внешний IP сервера (если используйте NAT). | ||
| + | # | ||
| </ | </ | ||
| Строка 377: | Строка 464: | ||
| Выход из редактора **Ctrl+X** | Выход из редактора **Ctrl+X** | ||
| - | Добавьте созданного | + | Перезапустите службу vsFTPd: |
| <code bash> | <code bash> | ||
| - | sudo usermod -aG ftp ftpuser | + | sudo systemctl restart vsftpd |
| </ | </ | ||
| + | |||
| + | |||
linux/servers/vsftpd.1792589636.txt.gz · Последнее изменение: — Кирилл Молчанов
