Как создать и ограничить пользователя в папке в Ubuntu 18.04 LTS

12 set 2022 2 min di lettura
Как создать и ограничить пользователя в папке в Ubuntu 18.04 LTS
Indice dei contenuti

Введение

Ваш системный администратор может дать вашим пользователям возможность безопасно загружать файлы на сервер. Наиболее распространенный способ сделать это — разрешить передачу файлов по протоколу безопасной передачи файлов (SFTP). По умолчанию пользователи SSH могут просматривать все файлы на сервере.

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

Может быть полезно создать пользователя с доступом к веб-серверу Apache2, не давая ему возможность повышать уровень, а затем просматривать файлы сервера.

Давайте посмотрим, как это сделать.

Предпосылки

Установка Апача 2. или нгинкс.

Настроить OpenSSH

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

Откроем следующий файл:

sudo nano /etc/ssh/sshd_config

Давайте найдем строку Subsystem sftp и изменим ее следующим образом:


Subsystem sftp internal-sftp

Добавим в конец файла следующие строки:


Match Group jail_user
 ChrootDirectory /var/www
 X11Forwarding no
 AllowTcpForwarding no
 ForceCommand internal-sftp

Сохраните и закройте файл.

Перезапустите службу SSH (OpenSSH)

sudo service ssh restart

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

Чтобы создать нового пользователя терминала, введите следующую команду:

sudo useradd ftpuser

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

sudo passwd ftpuser

Создайте новую группу и управляйте разрешениями

Создайте системную группу для пользователей, которым вы хотите запретить доступ по SFTP:

sudo addgroup --system jail_user

Теперь измените учетную запись пользователя, которую вы хотите ограничить. Обратите внимание, что это предотвратит доступ этих пользователей к сеансу удаленной оболочки.

Добавьте нового пользователя во вновь созданную группу:

sudo usermod -G jail_user ftpuser

Давайте удостоверимся, что разрешения веб-сервера Apache верны:

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

Измените права доступа к файлам в корневой папке Apache:

cd /var/www
sudo chown ftpuser:jail_user *

Вы можете дать полный доступ только что созданному пользователю с помощью следующей команды:

sudo adduser ftpuser www-data
sudo chown -R www-data:www-data /var/www/html
sudo setfacl -R -mu:ftpuser:rwx /var/www/html

Первая команда добавит пользователя в группу www-data, вторая изменит владельца всех каталогов и файлов по следующему пути /var/www/html и третья включит права на запись.

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

Конфигурация завершена.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.