Khu vực quản trị Drupal và đăng nhập, Bảo vệ chúng bằng HTTPS


15

Tôi đã đọc rất nhiều về điều này và thử nhiều phương pháp tôi đã tìm thấy và chưa thể làm cho mọi thứ hoạt động bình thường.

Tôi muốn có thể bảo mật khu vực quản trị và các trang đăng nhập được liên kết. Vì vậy, bất cứ điều gì trong example.com/admin/* hoặc example.com/user/*, v.v., cần phải vượt qua SSL / TLS. Chúng tôi muốn áp dụng điều này cho từng trang web với thiết lập nhiều trang. Vì vậy example1.com, example2.com, example3.com đều nằm trên cùng một tài khoản máy chủ / người dùng.

Cài đặt

  • Drupal 7 đa trang
  • Làm sạch URL được kích hoạt
  • PHP 5.3
  • MySQL v14 d5
  • Apache2

Ghi chú

  • Bảo mật không phải là một lựa chọn, vì không có bản phát hành Drupal 7 ổn định và việc sử dụng phiên bản dev hiện tại yêu cầu vá Drupal Core, đi ngược lại chính sách của chúng tôi
  • Đã thử phiên 443 nhưng không thành công
  • Đã thử Đăng nhập an toàn nhưng không thành công
  • Chứng chỉ SSL (một bản tự ký ngay bây giờ, trong khi thử nghiệm) được cài đặt và hoạt động trên máy chủ cho các mục đích khác, chứ không phải Drupal.
  • Tôi đã đọc tất cả các tài liệu trên Drupal.org về việc kích hoạt HTTPS và đã cố gắng làm theo các hướng dẫn ở đó với rất ít thành công
  • Tôi đã bật cài đặt $ conf ['https'] trong settings.php mà không có kết quả rõ rệt.

Câu hỏi

Nếu tôi kích hoạt HTTPS cho mọi thứ trên một trang web, tôi sẽ nhận được 404 cho mọi thứ đang cố gắng đi qua https: //, điều này khiến tôi nghĩ rằng các quy tắc viết lại không áp dụng cho các trang https. Tôi đang thiếu gì ở đây? Có một điều kiện viết lại / quy tắc tôi có thể thêm vào htaccess để sửa lỗi này không?

Đây không phải là một vấn đề được giải quyết trong cộng đồng Drupal? Có phải mọi người chỉ rời khỏi khu vực quản trị của họ không được bảo mật, với mật khẩu người dùng được gửi rõ ràng? Tôi thấy điều này thật khó tin, nhưng dường như không có giải pháp tích hợp hoặc thường được biết đến cho vấn đề này.


Câu hỏi hay. Bạn đã đọc cái này? drupal.stackexchange.com/questions/23149/...
undersound

Drupal nên hoạt động mà không gặp vấn đề gì trên cả http và https. Tôi đoán vấn đề của bạn nằm ở cấu hình Apache (có thể trang web SSL trỏ đến DocumentRoot khác). Bạn có thể vui lòng gửi cấu hình Apache của bạn và .htaccess của Drupal để phân tích thêm không?
por

@undersound Cảm ơn bạn. Có tôi đã đọc cái đó. Chúng tôi thực sự quan tâm đến việc đảm bảo tất cả các nhiệm vụ quản trị qua HTTPS, không chỉ là sự kiện đăng nhập.
KevinL

2
Có lẽ đặt cược tốt nhất là giúp kiểm tra và đẩy hai bản vá cốt lõi cần thiết để phê duyệt. Cả hai đều có thông tin cập nhật từ tuần này ...
squarecandy

Câu trả lời:


4

Đó không phải là câu hỏi bạn đã hỏi, nhưng câu trả lời đơn giản nhất là bạn chỉ nên thay đổi chính sách của mình.

Lõi "hack" (vá nó) và chạy các bản phát hành không ổn định là thực tế của việc chạy một trang web.

Hai bản vá cần thiết cho bảo mật thường xuyên cần cuộn lại, đánh giá hoặc cải tiến. Tham gia vào chu trình đó và giúp họ ổn định.


0

Tôi đã sử dụng các cài đặt sau để thực hiện việc này ... và không cần mô-đun để thực hiện. 1) httpd.conf

#APACHE stuff...
Listen 443
NameVirtualHost *:443
Include conf.d/vhosts/*.conf #Need this for multi-site and subdomains

<IfModule mod_header.c>
#enable HSTS
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
</IfModule>

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

2) conf.d / vhosts / site1.conf

<VirtualHost *:443>
#APACHE stuff...
SSLEngine on
RewriteCond %{HTTP_HOST} !^www\. [NC] #Force www... be careful with subdomains
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</VirtualHost>

3) cài đặt.php

$base_url = 'https://www.example.com';  // NO trailing slash!

Và voooala !! điều này sẽ làm cho tất cả lưu lượng truy cập http đi qua https bao gồm các tài nguyên như js và css. Nếu bạn muốn tên miền phụ, hãy nhớ thêm các lệnh ServerAlias ​​thích hợp trong (các) tệp vhosts.


0

Tôi sử dụng mô-đun SSL Ubercart , đây là một mô-đun tuyệt vời, mặc dù nó được đặt tên khủng khiếp . Bạn không cần phải chạy Ubercart để tận dụng mô-đun này rất ổn định và dễ sử dụng.

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.