Mapatu 127.0.1.2 IP lokala direktorio desberdinetan Apache zerbitzarian

Сложно, поскольку cron ищет файлы crontab в одном каталоге, что не подходит для отдельных пользовательские репозитории git. Я полагаю, вы могли бы заменить / usr / bin / crontab кодом, который, помимо эмуляции crontab (1) , определяет, кто пользователь, извлекает или создает его git хранит данные cron, фиксирует любые изменения, затем делает эти данные доступными для cron (8) , либо вызывая исходный crontab (1) (из-за бита setgid), либо устанавливается сам (предупреждение об опасности!). Обновление системы также будет сложным, так как во время обновления нужно будет установить обновленный / usr / bin / crontab , а затем переместить его в сторону, чтобы установить оболочку с поддержкой git (и аналогично для любых исправлений касаются crontab ).

Пользователи, которые выяснили, где находится исходный crontab (1) , смогут обойти git-материал; чтобы избежать этого, ваша реализация должна быть setgid crontab , что может открыть дверь к проблемам безопасности произвольной перезаписи файла crontab любого пользователя или, другими словами, отличным способом разрешить полную компрометация системы (злоумышленник записывает в корневой файл crontab, они выигрывают!), если ваш код содержит какие-либо проблемы с безопасностью.

Также сложно, если пользователь выясняет, где находится их репозиторий git для каждого cron, а затем начинает с этим разбираться; если это вызывает беспокойство, они должны принадлежать другому пользователю, и пользовательский crontab (5) клиент будет затем разговаривать с каким-то демоном, у которого есть права на эти репозитории (например, как sshd делает привсеп).

( rcs может быть достаточно, если вам просто нужно отслеживать изменения с течением времени, и предлагает меньше веревок, чтобы повеситься, чем git .)

0
23.03.2018, 05:41
1 ответ

В ваших конфигурациях виртуальных хостов вы используете виртуальные хосты на основе имени, как вы указываете ServerName. Это означает, что конфигурация будет загружаться только тогда, когда заголовок «Host» в клиентском запросе совпадает. Поведение Apache по умолчанию, когда он не может сопоставить запрошенный хост с какими-либо настроенными виртуальными хостами, заключается в загрузке первого настроенного виртуального хоста, который он может найти.

Есть много способов получить нужный контент, один из них — настроить заголовок «Host» в вашем запросе, чтобы он соответствовал ServerName, который вы пытаетесь достичь. Другой вариант — добавить IP-адрес в виде ServerAliasили вы можете переключиться на виртуальные хосты на основе IP и настроить все таким образом.

4
28.01.2020, 02:18

Теги

Похожие вопросы