apt-get 설치 후 Apache가 시작되지 않도록 방지


15

언제 apt-get install apache2완료를 설치할 때 서버가 자동으로 시작되고 기본 아파치 구성에 모든 것을 만드는 /var/www/클라이언트 측에 접근. 따라서 Apache를 설치하기 전에 해당 디렉토리에 비공개 소스 서버 측 스크립트 또는 기타 비밀 정보가있는 경우 Apache 구성을 변경하고 Apache를 다시 시작하거나 Apache를 중지 할 때까지 공개적으로 액세스 할 수 있습니다.

나는 이것을 할 수있다

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

그리고 비밀스러운 것들에 접근 할 수있는 간단한 창이 있지만, 아파치가 자동으로 시작되는 것을 막고 /var/www/한 순간도 노출시키지 않는 것이 좋습니다 .

apt-get installApache를 설치 한 후 자동으로 시작되지 않도록 할 수있는 옵션 이나 다른 방법이 있습니까?


을 사용하는 대신 Apache를 직접 컴파일 할 때 동작이 무엇인지 모르겠습니다 apt-get. 직접 컴파일하면 설치 후 Apache를 시작하고 비활성화하는 코드를 찾을 수 있다고 가정합니다. 누군가가 더 자세히 설명 할 수 있다면 괜찮은 대답 일 수 있습니다. 그러나 언급 된 질문에 대한 이상적인 답변은 여전히 ​​사용 apt-get됩니다.
David Winiecki

5
업그레이드하는 동안 1 분 동안 서버에서 방화벽을 해제하지 않는 이유는 무엇입니까?
EEAA

내 질문은 askubuntu.com에서 이와 비슷한 내용 인 것 같습니다. askubuntu.com/questions/74061/…
David Winiecki

1
또 다른 옵션 : Red Hat / CentOS 배포판을 사용하십시오.이 배포본은 데비안의 다른 광기에 영향을받지 않습니다.
Michael Hampton

답변:


13

이 시도:

  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

나는 이것을 시도하고있다. 여기에 더 많은 정보 : jpetazzo.github.io/2013/10/06/... (I 사용에 갈거야 #!하지만.)
데이비드 Winiecki

10

많은 옵션 :

  1. 비공개 소스 콘텐츠를 외부로 이동 /var/www
  2. Apache 사용자가 읽을 수 없도록 해당 컨텐츠에 대한 권한을 변경하십시오.
  3. 포트 80/443 트래픽을 중지하기위한 IP 테이블
  4. 런레벨 환경 변수를 apt-get다음으로 전달하십시오 .
sudo RUNLEVEL=1 apt-get install apache2

apache2 설치가 "현재"구성 파일을 그대로 두지 않습니까? 예를 들어, /etc/apache2/httpd.conf에 남아있는 템플릿은 덮어 쓰지 않습니까?
Hyppy

Apache 구성을 변경하면 (이 답변의 방법 중 하나를 사용하여 / var / www에 액세스 할 수 없게 만든 후) 암시됩니다.
David Winiecki

나는이 4 가지 방법 중 어느 것도 Apache 구성을 수정할 것이라고 생각하지 않습니다.
David Winiecki

1
RUNLEVEL=1가장 간단한 옵션처럼 보이고 테스트에서 작동했기 때문에 사용할 것이라고 생각 하지만 iptables 또는 다른 방화벽은 올바른 느낌입니다.
David Winiecki
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.