Ngăn chặn Apache bắt đầu sau khi cài đặt apt-get


15

Khi tôi apt-get install apache2máy chủ khởi động tự động khi quá trình cài đặt hoàn tất và cấu hình Apache mặc định làm cho mọi thứ /var/www/có thể truy cập được ở phía máy khách. Do đó, nếu tôi có bất kỳ tập lệnh phía máy chủ nguồn đóng hoặc thông tin bí mật nào khác trong thư mục đó trước khi cài đặt Apache, nó có thể truy cập công khai cho đến khi tôi thay đổi cấu hình Apache và khởi động lại Apache hoặc cho đến khi tôi dừng Apache.

tôi có thể làm điều này

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

Và sau đó chỉ có một cửa sổ ngắn, nơi các công cụ bí mật có thể truy cập được, nhưng tốt hơn hết là giữ cho Apache không tự động bắt đầu và không bao giờ lộ ra /var/www/ngay cả trong một khoảnh khắc.

Có bất kỳ tùy chọn nào tôi có thể chuyển qua apt-get installhoặc các cách khác để ngăn Apache khởi động tự động sau khi được cài đặt không?


Tôi không biết hành vi đó là gì khi bạn tự biên dịch Apache thay vì sử dụng apt-get. Tôi cho rằng nếu bạn tự biên dịch nó, bạn có thể tìm thấy mã khởi động Apache sau khi cài đặt và vô hiệu hóa nó. Đó có thể là một câu trả lời đàng hoàng nếu ai đó có thể mô tả chi tiết hơn. Tuy nhiên, câu trả lời lý tưởng cho câu hỏi như đã nêu vẫn sẽ sử dụng apt-get.
David Winiecki

5
Tại sao không chỉ tường lửa khỏi máy chủ của bạn trong một phút trong khi thực hiện nâng cấp?
EEAA

Tôi đoán câu hỏi của tôi là một bản sao của câu hỏi này trên Askubfox.com: askubfox.com/questions/74061/ triệt
David Winiecki

1
Còn một lựa chọn khác: Sử dụng các bản phân phối Red Hat / CentOS, không chịu sự điều này hay bất kỳ sự điên rồ nào khác của Debian.
Michael Hampton

Câu trả lời:


13

Thử đi:

  1. Tạo một tệp /usr/sbin/policy-rc.dcó nội dung sau:
#!/bin/sh  
exit 101
  1. Làm cho nó thực thi:
chmod +x /usr/sbin/policy-rc.d

Sau này, tất cả các gói sẽ được cài đặt nhưng các dịch vụ sẽ không bắt đầu.

Khi bạn đã hoàn tất, bạn có thể xóa tệp:

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

Tôi đang thử cái này Thêm thông tin tại đây: jpetazzo.github.io/2013/10/06/ ( #!Mặc dù tôi sẽ sử dụng .)
David Winiecki

10

Rất nhiều lựa chọn:

  1. Di chuyển nội dung nguồn đóng ra khỏi /var/www
  2. Thay đổi quyền trên nội dung đó để người dùng apache không thể đọc được
  3. Iptables dừng lưu lượng cổng 80/443
  4. Truyền biến môi trường runlevel tới apt-get:
sudo RUNLEVEL=1 apt-get install apache2

Cài đặt apache2 có để các tập tin cấu hình "hiện tại" không? Ví dụ: một mẫu còn lại trong /etc/apache2/httpd.conf sẽ không bị ghi đè, phải không?
Hyppy

Tôi nghĩ rằng việc thay đổi cấu hình Apache (sau khi thực hiện / var / www không thể truy cập bằng một trong các phương thức trong các câu trả lời này) là ngụ ý.
David Winiecki

Ý tôi là, tôi không nghĩ bất kỳ phương thức nào trong số 4 phương pháp này sẽ sửa đổi cấu hình Apache.
David Winiecki

1
Tôi nghĩ rằng tôi sẽ sử dụng RUNLEVEL=1vì nó có vẻ như là tùy chọn đơn giản nhất và nó đã hoạt động trong một thử nghiệm, nhưng iptables hoặc một số tường lửa khác cảm thấy như đúng cách.
David Winiecki
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.