Как вы написали свой псевдоним, команда, которую вы запускаете, будет расширена как
pcmanfm 1>/dev/null 2>&1 & '/'
Это запустит pcmanfm
без каких-либо параметров в качестве фонового задания и , затем попытается запустить /
как команду.
Возможно, вам нужна функция вместо псевдонима
explorer() { pcmanfm "$@" >/dev/null 2>&1 & }
С точки зрения безопасности, не рекомендуется настраивать веб-страницы с одним и тем же пользователем Apache. Пользователь Apache должен иметь возможность читать веб-страницы, но не писать на них.
Таким образом, в стандартной конфигурации веб-структуры могут быть доступны для чтения всем, а при необходимости записи - обычно для записи пользователем Apache, что является кошмаром безопасности.
Один из способов избежать этого - установка / использование mod_ruid2. https: // github.com / mind04 / mod-ruid2
Что касается Debian, этого достаточно:
apt-get install libapache2-mod-ruid2
Обратите внимание, что пользователь Apache по умолчанию зависит от дистрибутива. В Debian это www-data, в RH / CentOS - apache, а в SuSE - wwwrun. С этого момента я буду называть его пользователем Apache по умолчанию.
Если вы не определите какие-либо директивы в vhost, он будет вести себя традиционным образом; в противном случае поведение будет изменено.
Идея состоит в том, чтобы запустить процесс на виртуальном хосте с пользователем, имеющим права на виртуальный хост, и, как таковые, файлы будут иметь это право собственности, и, как вы пожелаете, другие пользователи не смогут читать их. Обычно вы определяете пользователя для каждого виртуального хоста.
В директивах Virtualhost или Directory в vhost вы определяете пользователя и группу, которые будут активны для этого каталога. Пользователь: группа пользователей - это эффективные разрешения, которые Apache будет использовать при доступе к виртуальному хосту / каталогу, и поэтому любой пользователь, принадлежащий к этой группе, сможет записывать / просматривать каталоги.
<Directory "/vhostdir/">
RMode config
RUidGid user usergroup
....
Таким образом, теперь при записи каталогов файлы могут быть созданы как 660 с правами собственности user: usergroup, если ими управляет группа пользователей. Точно так же файлы могут быть созданы другим пользователем с разрешениями на чтение для всего мира; однако для записи это будет не пользователь Apache по умолчанию, а другой пользователь.
Таким образом, преимущества mod_ruid2 заключаются в следующем:
Со страницы github:
О mod_ruid2 - это модуль suexec для apache 2.0, 2.2 и 2.4,на основе на основе mod_ruid и mod_suid2
- он работает только в Linux, потому что только ядро Linux реализовало необходимые возможности процесса. - он имеет лучшую производительность, чем mod_suid2, потому что ему не нужно убить детей httpd после одного запроса. он использует возможности ядра и после получения нового запроса снова подходит. - есть некоторые проблемы с безопасностью, например, если злоумышленник успешно использует процесс httpd, он может установить эффективные возможности и {{ 1}} setuid в качестве root. Я рекомендую использовать какой-нибудь патч безопасности в ядре (grsec) или что-то в этом роде ..
- есть два основных режима работы: stat и config 1. config по умолчанию, вы должны определить uid и gid. Если идентификатор [ug] не определен, используются пользователь и группа по умолчанию.
- stat httpd setuid и setgid для uid и gid запрошенного имени файла (скрипта) / каталога. Это хорошо, если вы используете mod_vhost_alias для виртуального хостинга.
INSTALL 1. Загрузите и установите последнюю версию libcap отсюда 2. run / apachedir / bin / apxs -a -i -l cap -c mod_ruid2.c 3. настройте httpd.conf 4. перезапустите apache
ОПЦИИ КОНФИГУРАЦИИ: RMode config | stat (по умолчанию - config) RUidGid user | #uid group | #gid - когда RMode настроен, устанавливается на этот uid и gid
RMinUidGid user | #uid group | #gid - когда uid / gid меньше min uid / gid установлен на uid / gid по умолчанию RDefaultUidGid user | #uid group | #gid
RGroups group1 group2 - дополнительные группы устанавливаются через setgroups @none - { {1}} очистить все ранее определенные группы.
RDocumentChrRoot - Установить корневой каталог и корень документа внутри
ПРИМЕР:
ServerAdmin (скрытый) RDocumentChRoot / home / example.com / public_html ServerName example.com ServerAlias www.example.com Конфигурация RMode # не требуется, поскольку конфигурация используется по умолчанию RUidGid user1 group1 RGroups apachetmp RMode stat Конфигурация RMode RUidGid user2 group2 RGroups groups1 RUidGid user3 group3 Конфигурация RMode {{ 1}} RUidGid user4 user4 RGroups groups4