Вы выполняете Единицу в 11,10 по умолчанию, если Вы нажимаете Meta (ключ окон) и вводите netbeans
,
Необходимо смочь видеть немного записей, связанных с netbeans.
Можно препятствовать тому, чтобы пользователь получил доступ к определенным частям файловой системы путем установки списков управления доступом. Например, чтобы гарантировать, что пользователь abcd
не может получить доступ ни к какому файлу под /home
:
setfacl -m user:abcd:0 /home
Этот подход прост, но необходимо не забыть блокировать доступ ко всему, что Вы не хотите abcd
смочь получить доступ.
Получить надежный контроль над какой abcd
видьте, настройте chroot, т.е. ограничьте пользователя поддеревом файловой системы.
Необходимо сделать все файлы, в которых нуждается пользователь (например. mysql
и все его зависимости, если Вы хотите, чтобы пользователь смог работать mysql
) под chroot. Скажите, что путь к chroot /home/restricted/abcd
; mysql
программа должна быть доступной под /home/restricted/abcd
. Указание символьной ссылки вне chroot бесполезно, потому что поиск символьной ссылки затронут chroot тюрьмой. В соответствии с Linux, можно хорошо использовать, связывают, монтируется:
mount --rbind /bin /home/restricted/abcd/bin
mount --rbind /dev /home/restricted/abcd/dev
mount --rbind /etc /home/restricted/abcd/dev
mount --rbind /lib /home/restricted/abcd/lib
mount --rbind /proc /home/restricted/abcd/proc
mount --rbind /sbin /home/restricted/abcd/sbin
mount --rbind /sys /home/restricted/abcd/sys
mount --rbind /usr /home/restricted/abcd/usr
Можно также скопировать файлы (но затем необходимо будет заботиться, что они актуальны).
Для ограничения пользователя chroot добавьте a ChrootDirectory
директива к /etc/sshd_config
.
Match User abcd
ChrootDirectory /home/restricted/abcd
Можно протестировать его с: chroot --userspec=abcd /home/restricted/abcd/ /bin/bash
Можно также использовать концепции безопасности, такие как SELinux или AppArmor. В обоих случаях необходимо записать довольно тонкую конфигурацию, чтобы удостовериться, что Вы не покидаете дыр.
Необходимо использовать chroot
. chroot
управляйте изменяет корневой каталог, который видят все дочерние процессы. Я дам пример, чтобы продемонстрировать, как он работает.
Это было записано на месте; я не на самом деле перед машиной UNIX прямо сейчас. В этом примере существует названный каталог dir
с тремя файлами: a
, b
, c
, и ls
. Первые три являются регулярными файлами. ls
hardlink к реальному ls
двоичный файл так, чтобы мы могли перечислить файлы в то время как в chroot.
Я иду в chroot
в dir
. (Обратите внимание, что я, вероятно, забываю некоторые каталоги в корневом каталоге.)
Вот установка в выходной форме оболочки:
$ pwd
/home/alex/test
$ l
dir
$ ls dir
a b c ls
$ ./ls dir # does the same thing
a b c ls
$ ls /
bin boot dev etc home mnt media proc sbin sys usr var
Теперь я буду chroot
в dir
. /bin/bash
аргумент выбирает, какой процесс должен быть выполнен с новым корневым каталогом. Это принимает значение по умолчанию к /bin/sh
.
$ chroot /bin/bash dir
$ # this prompt is now from a subprocess running in the new root directory
$ PATH=/ ls
a b c ls
$ pwd
/
Теперь мы выходим от chroot
:
$ exit
$ # this prompt is now from the original bash process, from before the chroot
$ pwd
/home/alex/test
Я надеюсь, что это иллюстрирует как chroot
работы команды. В основном то, что необходимо сделать для решения проблемы, должно выполнить a chroot
управляйте как тот пользователь каждый раз, когда они входят в систему. Возможно, поместите его в сценарий запуска?
hardlink в файл продолжит работать внутри a chroot
, даже если к тому файлу не могут получить доступ другие средства (это работает, потому что hardlinks указывают на inodes, не пути). Так, чтобы позволить пользователю доступу, например, mysql
команда, Вы выполнились бы:
ln /usr/bin/mysql /path/to/chroot/target
chmod
. то, когда Вы говорите, "не было бы, это быть легче выполнить команду... не теряет доступ к ним", та команда chroot
. если Вы объясните, что Вы подразумеваете "под всей chroot средой", или почему это было бы проблемой, то возможно, я пойму лучше. (обратите внимание, что можно предоставить доступ ко всем исполняемым файлам с остротой: ln /bin/* /path/to/chroot/target
)
– strugee
18.11.2013, 07:23
chroot
самостоятельно или сообщите мне то, что не имело смысла. еще лучше сделайте обоих. (и прочитайте страницы справочника.)
– strugee
18.11.2013, 07:36