Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để thêm bảo mật bổ sung cho quản trị viên Django bằng cách sử dụng đăng nhập quản trị giả?

Chúng tôi sẽ tạo trang đăng nhập giả mạo quản trị viên Django bằng cách sử dụng gói của bên thứ ba. Điều này sẽ chỉ tạo ra một trang giả mạo quản trị viên Django và bất cứ khi nào bất kỳ ai cố gắng đăng nhập vào trang quản trị, cho dù họ nhập mật khẩu đúng hay sai, họ sẽ không thể đăng nhập và bản dùng thử với địa chỉ IP của họ sẽ được lưu trữ trong một bảng. .

Vì vậy, chỉ cần làm theo các bước dưới đây và bạn sẽ có thể bắt đầu tốt.

Thiết lập url cơ bản và thêm ứng dụng trong INSTALLED_APPS trong settings.py.

Ví dụ

Đầu tiên hãy cài đặt gói

pip install django-admin-honeypot

Trong settings.py, thêm cái này -

INSTALLED_APPS+ = ['admin_honeypot']

Chúng tôi chỉ cần thêm nó vào ứng dụng đã cài đặt cần thiết cho cài đặt.

Trong urls.py của dự án -

from django.contrib import admin
from django.urls import path,include

urlpatterns = [
   path(r'admin/', include('admin_honeypot.urls', namespace='
admin_honeypot')),
   path(r'secret/', admin.site.urls),
]

Ở đây, chúng tôi chỉ cần thay thế quản trị viên thực bằng quản trị viên giả và đặt quản trị viên của chúng tôi trên một điểm cuối khác.

Chạy các lệnh này -

python manage.py makemigrations
python manage.py migrate

Bây giờ bạn đã hoàn tất, nó sẽ tạo một bảng lưu trữ tất cả các nỗ lực đăng nhập vào quản trị viên với id phiên của họ, quản trị viên thực sự sẽ ở trên / secret điểm cuối.

Đầu ra

Trên https://127.0.0.1/admin/, bạn sẽ thấy màn hình xuất sau

Làm cách nào để thêm bảo mật bổ sung cho quản trị viên Django bằng cách sử dụng đăng nhập quản trị giả?

Đó là trang quản trị honeypot giả mạo, cho dù bạn thực hiện đúng hay sai, nó vẫn là trang giả mạo và sẽ lưu tất cả các lần thử trong một bảng. Nếu bạn truy cậphttps://127.0.0.1/secret/ và đăng nhập bằng tên người dùng và mật khẩu quản trị viên của mình -

Làm cách nào để thêm bảo mật bổ sung cho quản trị viên Django bằng cách sử dụng đăng nhập quản trị giả?

Trong một bảng, bạn sẽ nhận được tất cả các bản ghi.