Как ссылка, я нахожусь на Ubuntu 12.04.5
Я чувствую, что посмотрел на сто из них и по некоторым причинам, ни один не работал. Это происходит, скорее всего, из-за отсутствия понимания с моей стороны о том, что точно я делаю. То, что я пытаюсь сделать, настраивается пользователь, и только позвольте тому пользователю иметь доступ к их каталогу и чему-либо в соответствии с их корневым каталогом. Однако я не хочу, чтобы они смогли получить доступ к чему-либо выше этого корневого каталога (значение, что им нельзя позволить изменить каталог путем выполнения cd ..
в то время как в /home/username
).
Вот шаги, которые я сделал:
username
.sgroup
.Настройте файлы username
потребности смочь выполнить вещи как mysql, ls, энергия, и т.д. путем выдачи следующих команд:
[AS ROOT]
mount --rbind /bin /home/username/sprg/bin
mount --rbind /dev /home/username/sprg/dev
mount --rbind /etc /home/username/sprg/etc
mount --rbind /lib /home/username/sprg/lib
mount --rbind /proc /home/username/sprg/proc
mount --rbind /sbin /home/username/sprg/sbin
mount --rbind /sys /home/username/sprg/sys
mount --rbind /usr /home/username/sprg/usr
root
в настоящее время владеет всем под sprg
включая саму папку.
Отредактированный /etc/ssh/sshd_config
и измененный строка: Subsystem sftp /usr/lib/openssh/sftp-server
кому: Subsystem sftp internal-sftp
. В конце файла я добавил следующее:
Match user username
ChrootDirectory /home/username
AllowTCPForwarding no
ForceCommand internal-sftp
Перезапущенный ssh через sudo service ssh restart
.
Теперь, когда я изменяю своего пользователя на username
через su - username
, Я все еще могу просмотреть файлы и папки за пределами моего /home/username
каталог. Также отметьте это root
владеет /home/username
.
Для оборачивания его все, что я надеюсь делать, сделали, чтобы пользователь вошел в терминал через ssh, был направлен к их корневому каталогу (который уже происходит), и затем запрещает им от когда-либо доступа к другому каталогу, ЕСЛИ это не находится под /home/username
. В этом случае они свободны сделать, как им нравится в соответствии с тем каталогом.
Любая справка ценилась бы!
Теперь, когда я изменяю своего пользователя на имя пользователя через
su - username
, я все еще могу просмотреть файлы и папки за пределами моего/home/username
каталог. Также обратите внимание, что корень владеет/home/username
.
Ограничения на SSH не собираются влиять su
. Настройки кажутся прекрасными мне, таким образом, необходимо протестировать его путем выполнения ssh username@localhost
и sftp username@localhost
. Так как Вы сказали, что пользователь регистрирует на пути SSH, учитывая эти настройки, su
не должна быть проблема.