Шпаргалка - настройка SFTP + CHROOT в FreeBSD

Входные данные

Пользователь: ivanov
Домашняя директория: /home/ivanov

Пользователь-администратор: adm
Домашняя директория: /home/adm

Задачи

  • предоставить ограниченный домашней директорией доступ по SFTP. Для созданных файлов и директорий должны быть определены следующие права соответственно rw–rw— и rwx-rwx—
  • дать sftp-доступ пользователю-адинистратору adm к домашнему каталогу пользователя ivanov

Решение

Добавим следующие строки в /etc/ssh/sshd_config

Subsystem sftp internal-sftp

## admin
Match User adm
  ChrootDirectory %h
  ForceCommand internal-sftp -u 0007
        
## user  
Match User ivanov
  ChrootDirectory %h
  ForceCommand internal-sftp -u 0007

Назначим корректные права для домашней директории (туда будет выполняться chroot)

chmod 750 /home/adm
chown root /home/adm
chmod 750 /home/ivanov
chown root /home/ivanov

Запуск службы

echo 'sshd_enable="YES"' >> /etc/rc.conf
service sshd start

Для доступа к файлам воспользуйтесь программой WinSCP

Настроим доступ для adm

Выполним монтирование с ключом –bind домашних каталогов пользователей в домашний каталог пользователю-адинистратора.

Добавим в /etc/fstab

## bind mounts
/home/ivanov	/home/adm/ivanov	none	defaults,bind,auto	0	0

Выполним

sudo -u adm mkdir /home/adm/ivanov/
mount /home/adm/ivanov/
chsh -s /sbin/nologin adm

Комментарии

 
blog/2013/06/25-шпаргалка_-_настройка_sftp_chroot_в_freebsd.txt · Последние изменения: 2015/09/30 19:09 — Антон Бугреев · []