Как настроить пользователя SFTP в Linux

Чтобы создать пользователя SFTP в Linux, вы можете следовать систематическому подходу, который обеспечит пользователю ограниченный доступ и безопасную передачу файлов.

Обзор SFTP

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

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

Сначала вам нужно создать новую учетную запись пользователя sftp, которая будет использоваться для входа в систему и передачи файлов с помощью SFTP.

sudo adduser sftpuser

Создание каталога для SFTP

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

sudo mkdir -p /home/sftpuser/uploads

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

sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser

Затем измените права собственности на каталог uploads:

sudo chown sftpuser:sftpuser /home/sftpuser/uploads

Настройка SSH для SFTP

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

sudo nano /etc/ssh/sshd_config

Добавьте следующие строки в конец файла, чтобы настроить доступ к SFTP:

Match User sftpuser
    ChrootDirectory /home/sftpuser
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

Вот что делает каждая строка:

  • Match User sftpuser применяет эти настройки только к sftpuser.
  • ChrootDirectory /home/sftpuser ограничивает доступ пользователя к /home/sftpuser .
  • ForceCommand internal-sftp заставляет пользователя использовать только SFTP, запрещая доступ к оболочке SSH.
  • AllowTcpForwarding no и X11Forwarding no – это дополнительные меры безопасности, не позволяющие пользователю использовать другие возможности SSH.

После сохранения изменений перезапустите службу SSH, чтобы применить изменения.

sudo systemctl restart ssh

Тестирование пользователя SFTP

Теперь вы можете протестировать подключение к серверу SFTP, используя SFTP-клиент или командную строку для подключения к серверу.

sftp sftpuser@your_server_ip

После подключения вы можете использовать команды SFTP для навигации и управления файлами в каталоге uploads.

Например, используйте команду ls для просмотра списка файлов и put для загрузки файлов.

sftp> ls
sftp> cd uploads
sftp> get remotefile.txt
sftp> put lists.txt

Заключение

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

Зарубин Иван Эксперт по Linux и Windows

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

Вдохновлен www.tecmint.com

Похожие статьи

Комментарии (0)