=======Конфигурация ftps сервера на базе Centos Linux и vsftpd ======= ==== Введение. ==== Как то раз возникла задача организовать ftps сервер со входом по логину паролю\\ Было принято решение использовать vsftpd и ОС - Linux Centos 5.8\\ ==== Конфигурация ==== 1. Установка пакетов yum install vsftpd db4 db4-utils openssl 2. Генерация self-signed SSL сертификата openssl genrsa -out key.pem 1024 openssl req -new -key key.pem -out req.pem Country Name (2 letter code) [AU]:RU State or Province Name (full name) [Some-State]: Locality Name (eg, city) []:Moscow Organization Name (eg, company) [Internet Widgits Pty Ltd]:Test Company Organizational Unit Name (eg, section) []:IT dept Common Name (eg, YOUR name) []:ftps.example.ru Email Address []:adm@example.ru Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: openssl req -x509 -days 365 -key key.pem -in req.pem -out cert.pem Перемещение сертификата в конфигурационную директорию vsftpd. mv cert.pem /etc/vsftpd/cert.pem 3. Конфигурация vsftpd Файл /etc/vsftpd/vsftpd.conf\\ ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES require_ssl_reuse=NO implicit_ssl=YES ssl_tlsv1=YES ssl_sslv2=YES ssl_sslv3=YES rsa_cert_file=/etc/vsftpd/cert.pem listen=YES listen_address=212.1.1.1 listen_port=990 background=YES log_ftp_protocol=YES guest_enable=YES guest_username=ftp syslog_enable=YES xferlog_enable=YES vsftpd_log_file=/var/log/vsftpd.log local_enable=YES chroot_local_user=YES pam_service_name=vsftpd secure_chroot_dir=/usr/share/vsftpd user_config_dir=/etc/vsftpd/vsftpd_user_conf virtual_use_local_privs=YES Создание тестового пользователя login/password\\ Файл /etc/vsftpd/login test password Создание бызы Berkley DB db_load -T -t hash -f login login.db chmod 600 login.db Создание PAM файла , использующего базу login.db\\ **Файл** /etc/pam.d/vsftpd #%PAM-1.0 auth required pam_userdb.so db=/etc/vsftpd/login account required pam_userdb.so db=/etc/vsftpd/login session required pam_loginuid.so Создание FTP directory для пользователя test и конфигурация правил доступа. mkdir /test_ftp chmod 775 /test_ftp chgrp nobody /test_ftp Файл /etc/vsftpd/vsftpd_user_conf/ write_enable=YES local_root=/test_ftp Запуск сервиса и проверка наличие настройки на запуск при загрузке ОС. service vsftpd start temp=`chkconfig --list | grep vsftp | grep on`;if [ "$temp" ]; then echo ok; else chkconfig vsftp on; fi **PS: Если будут проблемы с доступом необходима selinux (chcon semanage) или просто отключение** ==== Пример подключения ==== Для примера возьмем winSCP клиент. (Можно использовать Filezilla и т.д) Пример настройки: {{:ru:jobs:winscp.jpg?500|500}} Жмем логин и работаем. ==== Об авторе ==== [[https://www.linkedin.com/pub/alexey-vyrodov/59/976/16b|Profile]] автора