Может ли кто-нибудь предложить какие-либо предложения. У меня работает инстанс Amazon EC2, основанный на 64-битном AMI Amazon Linux. Я установил все обновления с помощью yum, установил PHP5.3 и службу vsFTPd.
Я создал новую группу пользователей и нового пользователя, которому был дан пароль, и создал папку html для веб-файлов php, принадлежащих новой группе. В этом отношении все работает нормально. Создайте файл php в vi, и страница будет видна в браузере.
Теперь я запустил сервер vsFTPd, все в порядке. Я могу подключиться к нему почти мгновенно с экрана терминала, но выполнение ls -l требует времени, чтобы вернуться.
Подключитесь с помощью программного обеспечения FTP, и подключение может занять до 60 секунд, то же самое при смене папок. Затем, когда вы пытаетесь загрузить файл, иногда он уходит, и всегда кажется, что папки создаются нормально, но затем истекает время ожидания или разрывается соединение и не перезапускается. Отмените передачу и настройте снова, и он снова подключится нормально.
Может ли кто-нибудь предложить какие-либо идеи относительно того, что не так? Я пробовал включать и выключать пассивный режим на FTP-клиенте, но это не имеет никакого значения. Я не вижу, что это может быть неправильным, поскольку его подключение и действительно передает пару небольших текстовых файлов до истечения времени ожидания.
Любые мысли или предложения были бы очень полезны, если вы можете! У меня нет идей!
Обновите репозиторий "yum"
Установите vsFTPD Server из репозитория yum
Настроить основные настройки для сервера vsFTPD
а. Внесите следующие изменения в файл и сохраните i. Отключить анонимных пользователей anonymous_enable = NO ii. Разрешить локальных пользователей, что означает, что сервер vsFTPD будет использовать пользователей системы Linux и аутентификацию, чтобы определять, кто может войти в систему local_enable = YES iii. Разрешить локальным пользователям доступ WRITE, чтобы они могли загружать материал и изменять контент write_enable = YES iv. Ограничьте пользователей соответствующими домашними каталогами chroot_local_user = YES v. Основные изменения, связанные с vsFTPD pasv_enable = YES pasv_min_port = 1024 pasv_max_port = 1048 pasv_address =
Создать пользователя FTP
Назначьте пароль новому пользователю
Настройте SSL с сервером vsFTPD a. Создайте подкаталог для хранения файлов # sudo mkdir / etc / ssl / private
б. Создайте сертификат и ключ в одном файле # sudo openssl req -x509 -nodes -days 365 -newkey rsa: 1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
c. Добавьте сведения об SSL в файл конфигурации vsftpd # sudo vi /etc/vsftpd/vsftpd.conf
i. Specify the location of the certificate and key files
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ii. Enable the use of the files, disable anonymous users and force the use of SSL for both data transfer and login routines
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
iii. Restrict the type of connection to TLS, which is more secure than SSL
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
Перезапустите сервер vsFTPD, чтобы изменения вступили в силу.
Запускать vsFTPD сервер автоматически при каждой перезагрузке
Одним из факторов, который может способствовать плохой работе vsFTPd, является набор правил брандмауэра. Для типичного сеанса FTP вы захотите использовать пассивный FTP (обычно лучше работает с настройками вашего пользователя - как с программами, которые они используют, так и с их брандмауэрами).
Для этого вам нужно будет открыть порты 20, 21 и любые порты, которые вы укажете в конфигурации vsftpd.
В vsftpd вы можете настроить диапазон пассивных портов, установив значения pasv_min_port и pasv_max_port. Это позволяет вам использовать пассивный FTP, позволяя им легко работать с межсетевыми экранами того же типа, что и в EC2.
Вы должны выбрать порты выше 10000 - в идеале что-то немного случайное. Вам понадобится больше портов для большего количества пользователей, поэтому, если вы единственный пользователь, вы должны иметь возможность держать открытыми только 2 или 3 порта (например, минимум: 15243, максимум: 15245) - я считаю, что обычно это один порт на соединение ( но часто пользователь может установить более одного одновременного подключения, даже если это маловероятно)
Если у вас есть брандмауэр (например, shorewall), работающий на вашем сервере, вам нужно будет его настроить - также ваши правила iptables должны разрешать FTP-соединение на указанных вами портах. Что касается EC2, вам необходимо открыть соответствующие порты в группе безопасности, в которой работает ваш экземпляр. Можно найти еще несколько моментов из моего подхода к настройке пассивного FTP с vsftpd в Linux от Amazon. Вот.