Я пытаюсь настроить учетную запись FTP на моем сервере, на котором выполняется установка Debian и proftpd. Мне нужны некоторые базовые команды, которые позволят мне просматривать, редактировать и создавать пользователей ftp. Я также не понимаю, нужно ли мне затем добавлять этих пользователей специально в proftpd или достаточно их просто на сервере.
В конечном итоге я хотел бы иметь пользователя FTP, к которому я мог бы подключиться с помощью beanstalkapp, инструмента развертывания svn, чтобы он мог развертывать контент в моем каталоге / var / www /.
Приветствуется любая помощь, даже если это просто ссылки на некоторые команды оболочки, которые я должен использовать для просмотра и обновления пользователей.
ProFTPd поддерживает концепцию пользователей только по FTP. Чтобы это заработало, вам нужно сначала внести следующие изменения в файл proftpd.conf:
AuthOrder mod_auth_unix.c mod_auth_file.c #add mod_auth_file.c
AuthUserFile /etc/proftpd/ftpasswd #Add this entire line
Убедитесь, что файл / etc / proftpd / ftpasswd существует и доступен для чтения пользователю, от имени которого работает демон proftpd.
Кроме того, вам нужно будет добавить следующие строки:
RequireValidShell off
UseFtpUsers off
Перезапустите демон ProFTPd. Ваша служба FTP теперь будет разрешать подключения только с учетных записей FTP. Вы можете создать учетную запись только для FTP, используя следующий синтаксис:
ftpasswd --passwd --file=/etc/proftpd/ftpasswd --name=ftpuser --uid=5001 --gid=5001 --home=/var/www/beanstalkapp --shell=/bin/false
Обратите особое внимание на параметры «--uid» и «--gid». Если вы укажете здесь числовое значение, которое не соответствует какому-либо существующему пользователю / группе, пользователь FTP будет иметь те же права доступа к файлам, что и пользователь, выполняющий демон proftpd (обычно доступ только для чтения к большинству каталогов). Если вы хотите разрешить пользователю FTP фактически перезаписывать файлы, установите uid таким образом, чтобы он соответствовал UID фактического пользователя системы, которому принадлежит каталог (Что-то я узнал из другого вопроса SF).
Для дополнительной безопасности вы также можете добавить следующие строки в файл proftpd.conf:
<Directory "/var/www/beanstalkapp">
DirFakeUser on ~
DirFakeGroup on ~
</Directory>
Это заставит FTP-клиент показать файлы, как если бы они принадлежали FTP-пользователю / FTP-группе в корневом каталоге пользователя FTP.
Насколько мне известно, proFTPd по умолчанию использует системные учетные записи. Вы просто создаете системные учетные записи с помощью useradd, и все будет в порядке ...
Однако я привык к pure-ftpd, где есть команды для создания «виртуальных» пользователей, которые сопоставляются с одной и той же системной учетной записью, что является моей философией.
Почему бы не использовать SSH / SFTP? Это намного безопаснее, чем FTP, и требует минимальной настройки.