Ограничение SFTP доступа группе пользователей в CentOS 8 / RHEL 8

RHEL 26-08-2020, 11:57 sobir 1 606 0


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

Открываем конфигурационный файл демона OpenSSH:
vi /etc/ssh/sshd_config

Комментируем следующую строку:
#Subsystem      sftp    /usr/libexec/openssh/sftp-server

Добавляем в самый конец файла следующее:
Subsystem sftp internal-sftp
Match group sftpgroup
  ChrootDirectory /home/%u
  ForceCommand internal-sftp
  AllowTcpForwarding no

Создадим группу sftpgroup для пользователей:
groupadd sftpgroup

Создадим пользователя sftpuser1, назначим ему домашнюю директорию, укажем основную группу sftpgroup и запретим доступ к оболочке shell:
useradd -d /home/sftpuser1 -m -g sftpgroup -s /sbin/nologin sftpuser1

Назначим пароль для пользователя sftpuser1:
passwd sftpuser1

Настройки chroot требуют, чтобы владельцем домашней директории пользователя был root и права доступа должны быть выставлены следующие:
chown root /home/sftpuser1 && chmod 755 /home/sftpuser1

Создадим синоним директории сайта:
mkdir -p /var/www/html && mkdir /home/sftpuser1/html

Назначим права доступа, чтобы пользователь имел возможность изменения в директории сайта:
chown sftpuser1 /home/sftpuser1/html && chgrp sftpgroup /var/www/html && chmod 775 /var/www/html

Монтируем директорию:
mount --bind /var/www/html /home/sftpuser1/html

Перезапуск демона OpenSSH:
systemctl restart sshd
Похожие новости
Мониторинг статус-кодов HTTP NGINX в Zabbix

Мониторинг кодов состояния сайта из лог-файла nginx access log....

Подробнее
Боремся с майнером Kinsing на зараженных серверах Linux / Docker

Предотвращаем работу майнинговой малвари под названием Kinsing....

Подробнее
Настройка NFS хранилища в CentOS 8 / RHEL 8

Создание простого сетевого хранилища данных NFS....

Подробнее
Установка и настройка Ansible в Ubuntu

Учимся использовать Ansible на сервере Ubuntu....

Подробнее
Поднимаем ocserv с аутентификацией LDAP

Поднимаем VPN сервер OpenConnect (ocserv) в контейнере Docker с аутентификацией пользователей из Microsoft...

Подробнее
Запуск systemd в контейнере в CentOS 8 / RHEL 8

Запускаем systemd в контейнере Podman’а....

Подробнее
Комментарии (0)
Новые комментарии
komronu8 сентября 2022 18:23

Салом, можно ещё создать файл в /etc/nginx/proxy_params, a потом добавить туда

img
К комментарию
sobir26 августа 2022 10:43

Можно ещё так: 1. Создаем отдельную сеть для наших контейнеров docker network

img
К комментарию
komronu22 августа 2022 15:12

Спасибо за отзыв, написал отдельную статью по установке и настройке Ansible

img
К комментарию
sobir19 августа 2022 18:00

Думаю в статье необходимо также описать процесс установки Ansible.

img
К комментарию
sobir17 октября 2021 11:40

Принудительное обновление сертификата: certbot certonly --force-renew -d

img
К комментарию
sobir3 июля 2021 14:19

Можно, но я решил описать процесс копирования ключей более подробно.

img
К комментарию
Все комментарии
Какой дистрибутив Linux вы часто используете?
Календарь
«    Декабрь 2023    »
ПнВтСрЧтПтСбВс
 123
45678910
11121314151617
18192021222324
25262728293031
Подпишись на канал