Создание ftp пользователя без панели управления ISPmanager

Материал из Энциклопедия хостинга
Перейти к: навигация, поиск


По-умолчанию, при установке ОС Linux из любых шаблонов, на сервере доступен только суперпользователь root. Подключение с данными root по протоколу FTP невозможно в целях безопасности (используется незашифрованный пароль). При установке шаблонов ОС типа minimal сервер FTP также не будет включен в установочный пакет. Если у Вас возникла необходимость быстрой ручной настройки нового ftp пользователя при отсутствии на сервере панели управления ISPmanager, нужно сделать следующее:

- Подключитесь к серверу по протоколу SSH (используя, например, Putty http://putty.org) пользователем root

Содержание

Установка proftpd (если proftpd уже установлен, пропустите этот шаг):

Системы Debian/Ubuntu

apt-get install proftpd

Система CentOS

yum install proftpd

Если сервер не запустился автоматически после установки, используйте команду:

service proftpd start

для его запуска.


Ограничение ftp пользователей пределами домашнего каталога

Данная статья подразумевает работу конфигурацией ProFTPd "по-умолчанию", а в этом случае пользователь может выходить за пределы своего домашнего каталога и, хотя прав на работу с другими папками у него, скорее всего, нет, но при недостаточно строгой конфигурации сервера это может представлять угрозу безопасности. Решить эту проблему можно добавив одну строку в файл proftpd.conf:

DefaultRoot ~

Добавить ее можно в конец файла. После сохранения, перезапустите ftp сервер:

service proftpd restart

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

Простым ftp пользователям нет необходимости иметь доступ к командной оболочке. Перед тем, как приступите к созданию новых пользователей, выполните команду:

echo '/bin/false' >> /etc/shells

Создайте нового пользователя

useradd имя_пользователя -d /home/имя_папки -m -s /bin/false
passwd имя_пользователя

Командами выше мы создали пользователя (имя_пользователя нужно заменить на не занятое имя) и соответствующую группу, назначили и создали (ключ -m можно опустить, если каталог уже существует) домашний каталог /home/имя_папки и выбрали /bin/false в качестве командной оболочки пользователя, тем самым ее отключив в целях безопасности. Командой passwd мы создали пользователю необходимый пароль.

  • В большинстве случаев, на данном этапе Вы уже можете подключаться с созданным пользователем к ftp серверу, который по-умолчанию работает на 21 порту. Однако, есть еще несколько шагов, которые, возможно, вы захотите выполнить:

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

Доступ к командной оболочке (shell)

Если Вы все-таки хотите предоставлять пользователю доступ к командной оболочке, то указывайте путь до любой действующей вместо /bin/false, например:

/bin/sh

или

/bin/bash

Пользователям обычного протокола ftp не нужен доступ к shell, поэтому, безопаснее его не предоставлять.


Расположение proftpd.conf

Файл настроек proftpd.conf может располагаться в разных местах, в зависимости от вашей версии ОС:

Debian: /etc/proftpd/proftpd.conf
CentOS: /etc/proftpd.conf
Ubuntu: /etc/proftpd.conf


Используйте этот файл для более детальной настройки своего ftp сервера при необходимости.


Ограничение прав ftp пользователя

При необходимости, Вы можете закрыть права на запись для пользователя, например, в домашнюю директорию и оставить их только для какой-нибудь внутренней папки, например upload:

От имени суперпользователя измените права:

chmod 555 /home/имя_папки
mkdir /home/имя_папки/upload
chown имя_пользователя:имя_пользователя /home/имя_папки/upload

В данном случае второе имя_пользователя является именем группы, которое по умолчанию совпадает с созданным вами именем пользователя.


Таким образом, за короткое время и небольшое количество действий, Вы можете создать безопасного базового ftp пользователя и начать работу с ftp на сервере.

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты

Заметили ошибку?

Выделите ее и нажмите CTRL+ENTER