Настройка VSFTPd на CentOS (виртуальные пользователи)

vsftpd
Linux

Если перед Вами стоит вопрос доступа к вашему Linux серверу по FTP, удобным решением может стать ftp-сервер VSFTPd на основе виртуальных пользователей (отдельно заданные пользователи, не имеющие отношения к пользователям Linux). Тут Вы найдете пошаговую инструкцию по его настройке.

Установка

Устанавливаем пакет VSFTPd:

#yum -y install vsftpd

Устанавливаем пакет баз данных (понадобится для учета пользователей)

#yum install compat-db

Создание пользователя для ftp

#adduser -d /home/vweb/ virtualftp -s /sbin/nologin

Редактируем конфиги vsftpd

#nano /etc/vsftpd/vsftpd.conf

Редактируем параметр pam_service_name= :

pam_service_name=vsftpd-db

Добавляем блок информации о виртуальных пользователях

# Virtual users will be logged into /home/vweb/[username]/
user_sub_token=$USER
local_root=/home/vweb/$USER
guest_enable=YES
guest_username=virtualftp
# Umask applied for virtual users and anon
anon_umask=0022
# Allows uploading by virtual users
anon_upload_enable=YES
# Allows creation of directories by virtual users
anon_mkdir_write_enable=YES
# Allows deletion of files and directories by virtual users
anon_other_write_enable=YES

Создаем файл vsftpd-db

#nano /etc/pam.d/vsftpd-db

Содержание файла:

session optional pam_keyinit.so force revoke
auth required /lib64/security/pam_userdb.so debug db=/etc/vsftpd/login
account required /lib64/security/pam_userdb.so debug db=/etc/vsftpd/login

При этом файл с паролями будет в /etc/vsftpd/login.db

Создаем файл пользователей FTP

#nano /etc/vsftpd/login.txt

Формат файла-оригинала (login.txt):

user1
pass1
user2
pass2

и т.д.

Генерируем файл паролей

#rm /etc/vsftpd/login.db
#db42_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db
#chmod 600 /etc/vsftpd/vsftpd_users.db /etc/vsftpd/login.txt

Создаем директории для пользователей

#mkdir -p /home/vweb/user1
#mkdir -p /home/vweb/user2

Запускаем VSFTPd

#service vsftpd start

После этого можно попробовать войти на сервер.

Фиксация ошибок

Не удается войти на сервер:

#chown -R virtualftp:virtualftp  /home/vweb/
#chmod -R 644 /home/vweb/
#find /home/vweb/ -type d -exec chmod 755 {} \;

При попытки соединения сервер пишет «500 OOPS: cannot change directory». Возможно проблема в SELinux.

#/usr/sbin/setsebool -P ftp_home_dir=1

Дополнительная информация:

chrisgountanis.com
dragonflybsd.blogspot.com

Разрешаем пользователям FTP доступ к другим каталогам кроме своего

Бывает, что необходимо выделить пользователям доступ к файлом находящимся вне их основной ftp директории. Для используемого мной варианта отлично подошла модель mount -o bind.

В папке пользователя создаем папку для монтирования

#mkdir -p /home/vweb/user1/dirmount

Монтируем нужный каталог в эту папку:

#mount -o bind что_монтируем куда_монтируем

т.е.

#mount -o bind что_монтируем /home/vweb/user1/dirmount

Недостатком этой системы можно считать то, что после перезагрузки сервера монтировать каталоги придется заново.

Bitnami Redmine
Linux
Bitnami Redmine — быстро разворачиваем Redmine на любой машине

Я написал множество статей по тему установки, решения проблем и настройки таск-менеджера Redmine на различных устройствах. И, что не говори, сам процесс установки приложения, с учетом современных стандартов довольно сложен. Недавно, мне предстояло в очередной раз его повторить. И тут я открыл для себя потрясающе простое решение: пакет Bitnami Redmine. Поделиться …

Настройка отправки почты Redmine через exim4 (sendmail)
Linux
Отправка почты Redmine через exim4 (Sendmail)

Прошло 2-3 года с моих последних статей по настройке почты в Redmine. И долгое время мой надежный друг и помощник работал без перебоев. Но в какой-то момент, опять стали возникать проблемы с отправкой почты. А без таких уведомлений, заметно падает результативность работы сотрудников отдела. Не говоря уже о том, сколько эмоциональных …

Настройка VPN сервера
Linux
1
Настройка VPN сервера и клиентского компьютера

Чтобы разобраться с настройкой VPN, необходимо понимать, что же это такое. VPN (Virtual Private Network) – это виртуальная частная сеть. В неё входит группа протоколов, с помощью которых можно организовать визуальную сеть поверх незащищенной сети. Её используют для того, чтобы получить доступ в интернет, доступ в корпоративную сеть и объединение …

Top