Bảo vệ AdminCP & thư mục Install bằng .htaccess

Thảo luận trong 'Hacking - Security' bắt đầu bởi VXF, 9/5/12.

1votes
5/5, 1 vote

  1. VXF

    VXF Be like no other .. Staff Member

    Bài viết:
    1,277
    Likes :
    2,173
    Để tăng cường tính bảo mật cho AdminCP & thư mục Install của bạn, các bạn có thể sử dụng file .htaccess để tạo thêm 1 lớp bảo vệ cho chúng. Cụ thể như sau:

    1. Bảo vệ file admin.php
    Sau đây mình sẽ hướng dẫn tạo được file .htpasswd trên 2 Hosting Controller thông dụng hiện nay là Cpanel & Directadmin.
    Với cPanel:
    - Đăng nhập vào cPanel
    - Chọn "Password Protect Directories" >> "Web Root" >> Chọn thư mục gốc diễn đàn của bạn
    - Tick vào "Password protect this directory"
    - Trong ô "Name the protected directory" điền: Admin Control Panel Protected
    - Nhấn vào Save.
    - Trong phần "Create User" điền vào Username & Password của bạn.
    - Nhấn "Add/modify authorised user"
    Ok, như vậy bạn đã có 1 file passwd ở: /.htpasswds/public_html/ten_folder_dien_dan
    Với Directadmin:
    - Đăng nhập vào Directadmin
    - Chọn "Password Protected Directories" >> "Find a Directory to Password Protect" >> chọn thư mục gốc diễn đàn của bạn.
    - Tick vào ô "Protection Enabled".
    - Điền lần lượt các thông số "Protected Directory Prompt" - "Set/Update User" - "Password" - "Re-Enter Password"
    - Nhấn vào Save.
    Ok, như vậy bạn đã có 1 file passwd ở: .htpasswd/public_html/ten_folder_dien_dan

    Sau khi tạo file htpasswd ở trên. Các bạn mở file .htaccess (trong thư mục gốc forum của bạn) tìm đoạn sau:
    Mã:
    AuthGroupFile /dev/null
    AuthType Basic
    AuthUserFile path/to/passwd/file
    AuthName "ACP Protected"
    require valid-user
    Thay bằng:
    Mã:
    <Files admin.php>
    AuthType Basic
    AuthName "ACP Protected"
    AuthUserFile "path/to/passwd/file"
    Require valid-user
    </Files>
    Chú ý: path/to/passwd/file sẽ có dạng
    - /home/vietxforg/domains/vietxf.org/.htpasswd/public_html/.htpasswd (với Directadmin)
    - /home/vietxf.org/.htpasswds/public_html/passwd (với cPanel)

    2. Bảo vệ thư mục /install
    Tạo 1 file .htaccess trong thư mục /install với nội dung như sau:
    Mã:
    AuthType Basic
    AuthName "Install Protected"
    AuthUserFile "path/to/passwd/file"
    Require valid-user
    
    Ở đây path/to/passwd/file bạn có thể sử dụng lại đường dẫn file htpasswd bảo vệ admin.php ở trên hoặc tạo mới 1 tài khoản khác.

    3. Sử dụng địa chỉ IP để bảo vệ thay cho passwd
    Bạn có thể sử dụng địa chỉ IP để bảo vệ admin.php và thư mục /install của mình thay vì sử dụng passwd. Trong trường hợp này bạn cần sửa file .htaccess (trong thư mục gốc diễn đàn của bạn) để bảo vệ file admin.php như sau:
    Mã:
    <Files admin.php>
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    </Files>
    Và tạo file .htaccess trong thư mục /install như sau:
    Mã:
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    Thay 127.0.0.1 bằng địa chỉ IP hiện tại của bạn. Bạn có thể vào http://whoer.net để kiểm tra địa chỉ IP của bạn.
    ip_htaccess
    Bạn có thể thêm nhiều địa chỉ IP khác bằng cách thêm dòng sau:​
    Mã:
    Allow from 127.0.0.1
    Có một vấn đề phát sinh ở đây, Code trên chỉ hoạt động tốt nếu địa chỉ IP của bạn là IP tĩnh. Nếu bạn sử dụng IP động, thay vì việc bạn phải cập nhật địa chỉ IP ở file .htaccess trên mỗi khi địa chỉ IP thay đổi. Bạn có thể thêm đoạn code sau vào file .htaccess.
    Mã:
    Allow from 127.0
    Trong đó 127.0 là 2 lớp đầu địa chỉ IP của bạn.

    Done ! Tuts by Alucar (VietXF.ORG)
     
    Đang tải...
  2. Xavier

    Xavier Well-Known Member

    Bài viết:
    1,414
    Likes :
    522
    chọn cả folder gốc khi up lên luôn à
     
  3. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    ko đọc kỹ hả ông
     
  4. binkute

    binkute New Member

    Bài viết:
    46
    Likes :
    8
    Anh ạ, cho em hỏi, em không dùng cpanel thì tạo file .htpasswd thì phải làm sao ạ
     
  5. Xavier

    Xavier Well-Known Member

    Bài viết:
    1,414
    Likes :
    522
    ở đó nó có file htacess.txt đổi tên cái này thành .htacess là được ;))
     
  6. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    Bạn dùng Hosting controller nào vậy
     
    binkute thích bài này.
  7. binkute

    binkute New Member

    Bài viết:
    46
    Likes :
    8
    Vâng, em dùng sever chỉ quản lý bằng lệnh. Em chỉ biết các lệnh đơn giản, không biết tới cái này :)
     
  8. duvuthacu261

    duvuthacu261 New Member

    Bài viết:
    1
    Likes :
    1
    mình xóa install đi rồi có sao không :(
     
    Xuân Tĩnh thích bài này.
  9. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    Bạn dùng command htpasswd tên_user, tên_file. Password sẽ được tạo ra trong file ở trên.
     
  10. zerozonex

    zerozonex New Member

    Bài viết:
    1
    Likes :
    0
    Hihi, tuyệt vời lắm bạn. Trong khi xenforo còn rất mới lạ thì chúng ta rất cần những kiến thức tổng quát như thế này.
     
  11. cuibapvn

    cuibapvn New Member

    Bài viết:
    78
    Likes :
    4
    Giúp mình với ! mình đã làm đúng như trên , và cũng test 1 site khác thì đc nhưng khi test trên forum của em thì ra lỗi
    file .htaccess của em đây ( sau khi làm như admin thì nó auto chuyển thành cái này)
    thanks các bác nhiều !
     
  12. kuhuy102

    kuhuy102 Member

    Bài viết:
    219
    Likes :
    31
    Với Directadmin:
    - Đăng nhập vào Directadmin
    - Chọn "Password Protected Directories" >> "Find a Directory to Password Protect" >> chọn thư mục gốc diễn đàn của bạn.
    - Tick vào ô "Protection Enabled".
    - Điền lần lượt các thông số "Protected Directory Prompt" - "Set/Update User" - "Password" - "Re-Enter Password"
    - Nhấn vào Save.
    Ok, như vậy bạn đã có 1 file passwd ở: .htpasswd/public_html/ten_folder_dien_dan

    Sau 1 hồi đắn đo mình đã xóa file mới tạo đi thì gặp lỗi nên phải theo cái
    Sau khi tạo file htpasswd ở trên. Các bạn mở file .htaccess (trong thư mục gốc forum của bạn) tìm đoạn sau:
    Mình muốn trở về mặc định thì sao đây , vì như thế này các admin khác cũng ko thể vào trang quản trị :(
     
  13. cuibapvn

    cuibapvn New Member

    Bài viết:
    78
    Likes :
    4
    up
     
  14. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    Chỗ này của bạn
    <Files admin.php>
    AuthName "ACP Protected"
    </Files>
    AuthUserFile "/home/demoxxxxx/.htpasswds/public_html/forum/passwd"

    bạn copy đủ chưa. Nếu đủ rồi thì nó bị thiếu đó. bạn kiểm tra lại xem
     
  15. cuibapvn

    cuibapvn New Member

    Bài viết:
    78
    Likes :
    4
    cảm ơn bạn đã trả lời !
    Nhưng thực sự em cũng chả hiểu đoạn đó nữa , em đã làm đúng như trên sau khi save và test forum thì đoạn code lại auto chuyển thành như vậy :-o !
    khó hiểu thật
     
  16. sanvu88

    sanvu88 Well-Known Member

    Bài viết:
    1,048
    Likes :
    467
    thế này mới đúng nè:

    Mã:
    <Files admin.php>
    AuthType Basic
    AuthName "ACP Protected"
    AuthUserFile /home/demoxxxxx/.htpasswds/public_html/forum/passwd
    require valid-user
    </Files>
    
     
    cuibapvn thích bài này.
  17. cuibapvn

    cuibapvn New Member

    Bài viết:
    78
    Likes :
    4
    thanks bác !
    nhưng bác không hiểu ý em rồi !
    - EM đã làm đúng như trên , nhưng khi save và test forum thì nó lại tự động chuyển thành đoạn mã trên , chứ mình không có sửa nó , :(!
     
  18. sanvu88

    sanvu88 Well-Known Member

    Bài viết:
    1,048
    Likes :
    467
    Team đi bạn, mình làm bình thường mà
    yahoo: hon_the_ma_vuong_88
     
  19. boy8x_sg

    boy8x_sg New Member

    Bài viết:
    12
    Likes :
    0
    Sao minh làm file .htaccess và .htpasswd như sau
    Mã:
    <Files "config.php">
    AuthName "Private Access - Please login"
    AuthType Basic
    AuthUserFile /library/.htpasswd
    require valid-user
    </Files>
    
    File .htpasswd mình lưu trong /library như sau
    Mã:
    [COLOR=red]abc:1$Rj.xfO/VdCc[/COLOR]
    [COLOR=red]
    [/COLOR]
    Trên Apache server của mình mình đã chỉnh
    Mã:
    Allowoverride All 
    Nhưng chưa mở modrewrite thì khi chạy vào thư mục library/config.php bị lỗi sau
    Mã:
    [SIZE=6][B]Internal Server Error[/B][/SIZE]
     
    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Please contact the server administrator, abc@yahoo.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
    More information about this error may be available in the server error log.
    
    Ps: làm với trang admin.php vẫn bị lỗi như trên
    Mình đã sửa dc rồi do mình cấu hinh Apache trên Window s nên khi / nó trỏ về thư mục gốc nên bị sai dg dẫn
     
  20. ITCAnhDuy

    ITCAnhDuy Member

    Bài viết:
    423
    Likes :
    142
    Thế up code của xenforo không vào thư mục mà cho nó vào public_html luôn thì lúc này phải chọn thư mục gốc là public_html hả anh ?
     
    unicorn280489 thích bài này.
comments powered by Disqus

Chia sẻ trang này

Đang tải...