🐧 Как создать только SFTP пользователя на Ubuntu и Debian |

🐧 Как создать только SFTP пользователя на Ubuntu и Debian

Мануал

SFTP (SSH File Transfer Protocol) – это безопасный файловый протокол, используемый для доступа, управления и передачи файлов через зашифрованный транспортный сеанс SSH.

Здесь SFTP пользователь означает создание учетной записи для доступа к серверу только через SFTP.

У этого пользователя нет доступа к оболочке SSH.

Это позволяет использовать безопасный канал для предоставления ограниченного доступа к определенным файлам и каталогам.

В этом руководстве описано, как создать пользователя, работающего только по SFTP, без доступа к оболочке в системах Ubuntu и Debian.

Шаг 1 – Создание новой учетной записи

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

Следующая команда создаст новую учетную запись с именем sftpuser без доступа к оболочке.

Вы можете изменить имя пользователя по своему выбору

sudo adduser --shell /bin/false sftpuser 

Шаг 2 – Создайте каталог для SFTP

Теперь создайте структуру каталогов, которая будет доступна пользователю sftp.

sudo mkdir -p /var/sftp/files 

Здесь мы разрешим пользователю доступ только к каталогу «files».

Теперь измените владельца каталога файлов на sftpuser.

Так что sftpuser может читать и писать только в этом каталоге.

sudo chown sftpuser:sftpuser /var/sftp/files 

И установите владельца и группу /var/sftp root.

Пользователь root имеет доступ для чтения/записи при этом доступе.

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

sudo chown root:root /var/sftp  
sudo chmod 755 /var/sftp 

Шаг 3 – Настройка sshd только для SFTP

/etc/ssh/sshd_config – это основной файл конфигурации сервера OpenSSH.

Будьте осторожны при изменении этого файла конфигурации, потому что любая ошибка может привести к потере соединения.

Откройте файл конфигурации SSH в текстовом редакторе:

sudo vim /etc/ssh/sshd_config 

и добавьте следующие настройки в конец файла.

Match User sftpuser
	ForceCommand internal-sftp
	PasswordAuthentication yes
	ChrootDirectory /var/sftp
	PermitTunnel no
	AllowAgentForwarding no
	AllowTcpForwarding no
	X11Forwarding no

Сохраните файл и закройте его. Вот директивы:

  • Match User Определяет имя пользователя, к которому применяются конфигурации только SFTP. В нашем случае это: sftpuser
  • ForceCommand internal-sftp применяет только SFTP-доступ к пользователю и ограничивает доступ к оболочке.
  • PasswordAuthentication yes разрешает аутентификацию пользователя по паролю.
  • ChrootDirectory /var/sftp Разрешить пользователю доступ к каталогам только в этом каталоге. Здесь / var / sftp действует как корневой каталог пользователя.
  • AllowAgentForwarding no Указывает, разрешен ли проброс ssh-агента. По умолчанию – да.
  • AllowTcpForwarding no Указывает, разрешен ли проброс TCP. По умолчанию – да.
  • X11Forwarding no Указывается, где графическое приложение не разрешено

Перезапустите службу SSH, чтобы применить новые настройки:

sudo systemctl restart ssh 

Это все.

Вы успешно выполнили инструкции по созданию пользователя только с SFTP доступом в системах на основе Debian.

Шаг 4 – Советы по безопасности (параметры)

Вот несколько основных, но важных советов по безопасности для учетных записей SFTP в производственной среде.

  1. Запускаем SSH-сервер на нестандартном порту
  2. Запретить аутентификацию по паролю и настроить аутентификацию на основе ключа
  3. Убедитесь, что брандмауэр ограничивает доступ только для определенных IP-адресов.
  4. И держите пакет openssh в актуальном состоянии

Заключение

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

 

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий