Làm thế nào để bảo mật phpmyadmin?


9

Tôi đã kiểm tra nhật ký apache của mình, và, whooooaaa, ​​có rất nhiều bot đang cố gắng khai thác phpmyadmin. Điều đầu tiên tôi làm là thay đổi tên thư mục thành một cái gì đó tối nghĩa hơn.

Nhưng, có bất kỳ mẹo nào khác để bảo mật phpmyadmin không?

(Bản thân cơ sở dữ liệu chỉ có sẵn từ mạng cục bộ)


5
Bản thân cơ sở dữ liệu có thể chỉ có thể truy cập cục bộ nhưng nếu giao diện quản lý của nó (phpMyAdmin) được công khai mà không có sự khác biệt.
John Gardeniers

4
Cách tốt nhất để bảo mật phpMyAdmin là tìm hiểu cách sử dụng ứng dụng khách dòng lệnh MySQL và sau đó gỡ cài đặt phpMyAdmin.
MDMarra

@MDMarra Tôi hoàn toàn đồng ý với bạn, nhưng tôi vừa có một nhiệm vụ cho khách hàng này, người đã yêu cầu cài đặt PhpMyAdmin, tôi không bao giờ sử dụng nó và luôn thích SSH cho nó. Mặc dù, đối với một số cách sử dụng, học SQL không phải là một tùy chọn và GUI như vậy PhpMyAdmin được nhiều người dùng hoan nghênh nhưng phải được bảo mật đúng cách bởi chúng tôi, các chuyên gia và chuyên gia. Điều đó rất kiêu ngạo khi nghĩ ngược lại.
Boris Guéry

Câu trả lời:


13

Chúng tôi kết hợp nhiều thứ:

  • Bảo vệ phpMyAdmin thông qua cấu hình .htaccess hoặc Apache yêu cầu đăng nhập tên người dùng / mật khẩu HTTP.
  • Bảo vệ phpMyAdmin thông qua cấu hình .htaccess hoặc Apache để chỉ cho phép truy cập từ một số địa chỉ IP đáng tin cậy nhất định
  • Đặt phpMyAdmin vào Virtualhost của riêng nó và chạy nó trên một cổng không chuẩn
  • Chỉ cho phép kết nối HTTPS với phpMyAdmin chứ không phải HTTP thông thường
  • Chỉ cho phép kết nối với mạng LAN (sử dụng VPN để vượt qua tường lửa của bạn và chỉ cho phép kết nối nếu bạn sử dụng mạng LAN / VPN đó)
  • Đừng đặt tên thư mục trong một cái gì đó rõ ràng như / phpMyAdmin /

Bạn cũng có thể sử dụng chuyển tiếp cổng SSH để sử dụng các khóa SSH. Xem https://stackoverflow.com/a/3687969/193494


6

Thêm một .htaccess chỉ cho phép truy cập IP cục bộ vào thư mục phpmyadmin.


Điều gì xảy ra nếu nó có nghĩa là cho khách hàng sử dụng? Nhiều webhost sử dụng PHPMyAdmin.
Luc

6

Cung cấp phpmyadmin trên một vhost chỉ có thể truy cập từ localhost và yêu cầu người dùng sử dụng ssh và chuyển tiếp cổng để có quyền truy cập vào nó.


2

Sử dụng .htaccess

Chúng tôi chỉ cần tung ra một tập tin .htaccess với bảo vệ tên người dùng / mật khẩu và (tùy theo hoàn cảnh) địa chỉ IP.

Điều này cho phép Hoa Kỳ truy cập tài nguyên một cách nhanh chóng và dễ dàng từ các máy tính đáng tin cậy nhưng tránh được tin tặc.

Một lưu ý khác ... không sử dụng tên người dùng / mật khẩu CÙNG cho .htaccess của bạn như bạn làm với PHPMyAdmin ... điều đó thật ngớ ngẩn. :-)

Hi vọng điêu nay co ich.


2

Tôi đồng ý với htaccess (/ w mật khẩu) và https.

Bạn cũng có thể xem xét thêm IP thứ hai vào máy chủ đó và tạo một máy chủ ảo Apache dựa trên IP cho phpmyadmin. Đây chỉ có thể là một IP mạng cục bộ, do đó nó sẽ được bảo vệ bởi tường lửa (và bạn thậm chí có thể không có quy tắc tự nhiên cho nó).

Càng nhiều lớp (ví dụ htaccess + https + Virtualhost), tôi nghĩ càng tốt. Lý tưởng nhất là các bot không thể tiếp cận nó ngay từ đầu.

Tất nhiên bạn luôn có thể đặt phpmyadmin trên một hộp khác.


1

Ngoài các câu trả lời được cung cấp, chúng tôi cũng sử dụng OSSEC nguồn mở để theo dõi nhật ký web của chúng tôi và cảnh báo / chặn các bản quét này.

Nó rất đơn giản để cài đặt và theo mặc định, nó sẽ tìm thấy nhật ký web của bạn và bắt đầu theo dõi chúng.

Liên kết: http://www.ossec.net


1

Di chuyển phpmyadmin vào một thư mục có tên bị che khuất theo cách người ta mong đợi một mật khẩu, nghĩa là: sự kết hợp của các chữ cái hỗn hợp cũng như các số (ví dụ: PhP01mY2011AdMin) và mật khẩu "bảo mật" tương tự bảo vệ thư mục với .htpasswd làm mánh khóe

Sau đó, một lần nữa, nếu tính bảo mật của cơ sở dữ liệu mysql của bạn là quan trọng đối với doanh nghiệp của bạn, người ta phải hỏi "whatcha đang làm một công cụ quản trị như phpmyadmin có thể truy cập internet ngay từ đầu?" Nhưng này, mọi người đều có lý do để sống.


0
  • HTTPS
  • Làm cho nó có thể truy cập chỉ thông qua đường hầm VPN / SSH

phpmyadmin là quá nhiều của một con thú để bảo mật. Bạn cần mod_security và một tuần thời gian để gỡ lỗi các cảnh báo chỉ để vô hiệu hóa một nửa quy tắc để đảm bảo chức năng của phpmyadmin. Kết luận: Đừng làm cho nó có thể truy cập công khai.

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.