Назад | Перейти на главную страницу

CentOS Добавление пользователя, ограниченного одним каталогом

Какой самый простой и стандартный способ создать и ограничить нового пользователя / var / www / в CentOS?

Изменить: Идеально ограничивается только SCP.

С достаточно свежей CentOS идет достаточно новый OpenSSH с chroot и internal-sftp функции.

Сначала вам нужно настроить OpenSSH для использования внутреннего SFTP. Это делается путем добавления этой строки в sshd.conf:

Subsystem sftp internal-sftp

Затем вы можете добавить правила для ограничения пользователей / групп в их домашних каталогах:

  Match user restrictedjoe
  ChrootDirectory /var/www
  X11Forwarding no
  AllowTcpForwarding no
  ForceCommand internal-sftp

Или для групп

  Match group restrictedgroup
  ChrootDirectory /var/www
  X11Forwarding no
  AllowTcpForwarding no
  ForceCommand internal-sftp

Мне неизвестен «стандартный способ», но один из способов сделать это - создать так называемую «тюрьму» для пользователя, где его / ее тюрьма находится в / var / www. Это можно сделать, создав chroot-тюрьму. См. Команду chroot. Тюрьма также может контролировать, что пользователь может делать в тюрьме, т.е. какие команды / программы можно запускать.

Судя по вашему ответу на мой комментарий, я бы не дал пользователю полную оболочку. Это значительно упрощает задачу. На ум приходят несколько замен оболочки, которые можно использовать, чтобы позволить пользователю управлять файлами и ничем другим:

Я лично использовал scponlyc несколько раз. Он даже включает скрипты для установки chroot jail для вас (github вики)

Моя любимая причина установки mysecureshell

http://mysecureshell.sourceforge.net/

Это наиболее удобный вариант настройки. Вы можете сделать с ним много замечательных вещей