Đăng Nhập

Vui lòng khai báo chính xác tên truy cập và mật khẩu!

Quên mật khẩu?

    Hướng dẫn bảo mật website NukeViet 3

      Admin
      Admin

      Giới tính : Nam

      Đến từ : TPHCM

      Ngày Tham gia : 03/04/2011

      Tổng số bài gửi : 2292

      #1

       Sat Oct 08, 2011 6:06 pm

      NukeViet 3 cung cấp nhiều công cụ và giải pháp bảo mật giúp người quản trị có những công cụ hữu hiệu nhằm tùy biến hệ thống, giúp hệ thống trở lên kín đáo và an toàn hơn trước sự soi mói của các hacker. Bài viết này tổng hợp và chia sẻ kinh nghiệm cũng như giải pháp bảo mật cho website sử dụng mã nguồn mở NukeViet 3.

      1. Hãy luôn cập nhật phiên bản

      Việc đầu tiên bạn cần làm đó là luôn cập nhật các phiên bản mới nhất của NukeViet việc này là hoàn toàn miễn phí và giúp chúng ta sửa chữa các lỗi ở phiên bản cũ, cập nhật thêm các tính năng mới cho hệ thống và các module.

      Ngoài cách cập nhật các phiên bản phát hành, bạn có thể cập nhật các bản cập nhật hàng ngày theo chức năng cập nhật phiên bản.

      Một chú ý trong việc phát triển thêm tính năng của site, bạn không nên hiển thị các thông tin của phiên bản NukeViet bạn đang sử dụng (chỉ hiển thị cho người điều hành tốt cao của site xem).

      2. Hạn chế sử dụng các module và block

      Hãy sử dụng các module và block một cách hạn chế, có nghĩa là chỉ cài những module và block nào thật cần thiết, sẽ trách được các lỗi (bug) tiềm ẩn trong bản thân module và block.

      Nếu module nào không sử dụng, bạn cần tiến hành xóa trong công cụ quản trị của NukeViet.

      3. Chặn truy cập thư mục không được phép

      Cách này nhằm tránh những người có chủ tâm không tốt khai thác thông tin về site của bạn, rồi dùng thông tin đó để dò lỗi và khai thác. Rất nhiều nhà cung câp dịch vụ Hosting hay Webmaster để ngầm định chế độ cho phép xem danh sách các file của thư mục. Tuy nhiên, bạn nên loại bỏ khả năng xem nội dung thư mục bằng cách tạo file file index.html trong tất cả các thư mục.

      Ngoài ra bạn cần thêm file .htaccess có nội dung: “deny from all” cho tất cả các thư mục không cho phép truy cập trực tiếp (chú ý khi dùng file .htaccess này tất cả các file trong thư mục này sẽ không truy cập trực tiếp được).

      Nếu là người phát triển module bạn nên lưu ý không cho truy cập trực tiếp các thư mục sau của mỗi module:

      modules/about/admin
      modules/about/blocks
      modules/about/funcs
      modules/about/language

      (Chú ý cách bảo vệ thư mục bằng file .htaccess chỉ áp dụng được cho hosting dung máy chủ web Apache, các máy chủ dùng IIS sẽ không được bảo vệ, vì vậy nếu có thể, bạn nên chuyển sang dùng hệ điều hành linux dùng máy chủ web Apache).

      Ngoài ra bạn nên chặn các loại bots dò tới các thư mục nhạy cảm của bạn bằng cách chèn code sau vào file robots.txt trên thư mục root:

      Disallow: /dir_name/

      Disallow: /file_name.ext

      4. Vấn đề Chmod:

      Chmod thư mục public_html thành 710 và các thư mục còn lại thành 701, việc này sẽ giúp bạn bảo vệ được cấu trúc website của mình.

      Các thư mục cache, data , files, logs, sess, tmp, uploads (và tất cả các thư mục con của chúng) cần chmod 755 (một số host cần chmod 777) để hệ thống có thể ghi file.

      Chmod tập tin config.php thành 400, điều này chống hacker local và view source của tập tin này.

      5. Thông tin Admin

      Thường thì mặc địch user của quản trị viên là admin và không thay đổi được, điều này làm cho các hacker chỉ cần đoán pass, việc cần làm là thay đổi tên admin.

      Do đó bạn nên đổi tên tài khoản admin thành 1 tên riêng nào đó chỉ có site bạn sử dụng.

      Ngoài ra bạn có thể bảo vệ khu vực admin 1 hoặc nhiều cách sau:

      5.1 Đổi tên thư mục admin:

      Bạn hãy đổi tên thư mục admin thành 1 cái tên nào đó mà chỉ bạn và các thành viên ban quản trị site được biết ví dụ adm2457

      Khi đó bạn cần sửa file includes /constants.php, tìm đến dòng
      Code:

      //Ten thu muc admin

      define( "NV_ADMINDIR", "admin" );

       

      //Ten thu muc editors

      define( "NV_EDITORSDIR", "admin/editors" );
      Sửa thành:
      Code:

      //Ten thu muc admin

      define( "NV_ADMINDIR", "adm2457" );

       

      //Ten thu muc editors

      define( "NV_EDITORSDIR", "adm2457/editors" );
      5.2 Bật chế độ captcha trong khi đăng nhập:

      Bạn có thể chọn chết độ đăng nhập có yêu cầu captcha tùy theo nhu cầu bảo vệ site bằng cách cấu hình hiển thị captcha trong phần Cấu hình -> Cấu hình chung.Hướng dẫn bảo mật website NukeViet 3 Image001
      5.3 Bật chế độ Kiểm tra IP khi truy cập khu vực admin

      Nếu Bạn có IP tĩnh, hoặc chỉ truy cập site trong giải IP có định, Bạn có thể cấu hình chức năng này trong phần: Quản trị -> Cấu hình site.

      Để thực hiện việc này bạn cần thêm địa chỉ IP hoặc dải IP truy cập vào admin vào phần dướiHướng dẫn bảo mật website NukeViet 3 Image003Sau đó Sửa phần cấu hình Kiểm tra IP khi truy cập khu vực admin và lưu lại.Hướng dẫn bảo mật website NukeViet 3 Image005Hướng dẫn bảo mật website NukeViet 3 Image005
      5.4. Bảo vệ thư mục admin bằng chức năng bảo vệ thư mục của hosting

      Nếu hosting của bạn có hỗ trợ chức năng bảo vệ thư mục bằng tài khoản và mật khẩu, bạn nên dùng chức năng này để bảo vệ thư mục admin. Nếu hosting của bạn không hỗ trợ bạn có thể dùng chức năng Kiểm tra tường lửa cho khu vực admin trong phần cấu hình của menu quản trị.

      6. Giấu file config.php

      File config.php là file chứa tất cả những gì quan trọng nhất, vì vậy việc không view được source của file này rất quan trọng. đó đó bạn nên đổi tên file di chuyển đến 1 vị trí người khác khó đoán ra.

      Sau khi đổi tên và đổi đường dẫn file config.php, các bạn tìm file includes /constants.php

      Tìm đến dòng:

      //Ten file config

      define( "NV_CONFIG_FILENAME", "config.php" );

      Edit lại cho phù hợp với path và tên file config.php

      Ví dụ: trên hosting các file được đặt trong thư mục /public_html/ , bạn có thể đổi tên file config.php thành cfg.nkv và di chuyển nó ra ngoài thư mục /public_htm/ (khi đó file cfg.nkv nằm ngang hàng với thư mục /public_html/) khi đó dòng.

      define( "NV_CONFIG_FILENAME", "config.php" );

      sẽ đực sửa thàn:

      define( "NV_CONFIG_FILENAME", "../cfg.nkv" );

      7. Thay đổi đường dẫn tới các thư mục hệ thống

      Các thư mục sau bạn nên đổi tên: cache, data , files, logs, sess, tmp sau khi đổi tên các thư mục này bạn cần khai báo lại các thông số này vào file includes/constants.php

      8. Mã hoá file cấu hình hệ thống

      Để hóa các file php bạn có thể chọn IonCube và ZendGuard 5. Việc mã hóa file để nếu bị xem thông tin sẽ khó mà giải mã được (khó không có nghĩa là không thể ).

      Các file bạn cần thiết hoá file config.php và includes/constants.php Nếu có điều kiện bạn mã hóa tất cả các file *.php của site.