Запретить запуск Apache после установки apt-get

Когда я apt-get install apache2 сервер запускается автоматически после завершения установки, а конфигурация Apache по умолчанию делает все в /var/www/ доступны для клиентской части. Таким образом, если у меня есть какие-либо сценарии на стороне сервера с закрытым исходным кодом или другая секретная информация в этом каталоге до установки Apache, он будет общедоступным, пока я не изменю конфигурацию Apache и не перезапущу Apache или пока я не остановлю Apache.

я могу сделать это

sudo apt-get install -y apache2
sudo service apache2 stop
# Finish setting up...

И тогда есть только краткое окно, где секретный материал доступен, но было бы предпочтительнее вообще не запускать Apache автоматически и никогда не показывать /var/www/ даже на одно мгновение.

Есть ли варианты, на которые я могу перейти apt-get install или другие способы предотвратить автоматический запуск Apache после его установки?

2 ответа

Решение

Попробуй это:

  1. Создать файл /usr/sbin/policy-rc.d со следующим содержанием:
#!/bin/sh  
exit 101
  1. Сделайте его исполняемым:
chmod +x /usr/sbin/policy-rc.d

После этого все пакеты будут установлены, но службы не запустятся.

Как только вы закончите, вы можете удалить файл:

rm -f /usr/sbin/policy-rc.d

Много вариантов:

  1. Переместить закрытый исходный контент из /var/www
  2. Измените разрешения для этого контента так, чтобы пользователь apache не мог его прочитать
  3. Iptables для остановки трафика порта 80/443
  4. Передайте переменную среды уровня выполнения apt-get:
sudo RUNLEVEL=1 apt-get install apache2
Другие вопросы по тегам