Bảo mật admincp bằng cách gắn địa chỉ IP truy cập admin

Thảo luận trong 'Source code' bắt đầu bởi viethung_9x, 25 Tháng một 2011.

  1. Offline

    viethung_9x

    • Windows XP

    Số bài viết:
    613
    Đã được thích:
    735
    Điểm thành tích:
    560
    Bảo mật admincp luôn là đề tài hot nhất, việc này đã làm cho nhiều webmaster và cả hacker hao tâm tổn sức. Hum nay tôi xin giới thiệu với các bạn một giải pháp bảo mật hiệu quả cho admincp:
    Công dụng của nó ngoài việc đảm bảo chỉ 1 IP được phép login vào admincp. Còn có thêm tính năng đặt biệt giúp bạn có thể dễ dàng update IP đó.
    Cách làm:
    - Bạn mở file capnhapip.php, chỉinh lại $pass = '12345'; cho phù hợp.
    copy và lưu code sau với tên capnhapip.php
    PHP:
    <?php
    SESSION_start
    ();
    $pass '12345';
    $file_listip "listip.txt";
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>Kiểm tra IP</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
    <?php
    $fopen_ip 
    fopen($file_listip"r");

    while ( !
    feof($fopen_ip) )
        {
            
    $read_ip fgets($fopen_ip,50);
            
    $ip explode('<nbb>'$read_ip);
            
    $list_ip[] = $ip[1];
        }
        
    fclose($fopen_ip);

    if ( 
    in_array($_SERVER['REMOTE_ADDR'], $list_ip) ){ 
            echo 
    "<center>IP của bạn đã được cập nhập sẵn.</center>";
        }
    else {
        if (
    $_POST[submit]) {
            if (
    $_POST[code] == "$pass"$_SESSION['code'] = "$pass";
        }
        if (!
    $_SESSION['code'] || $_SESSION['code'] != "$pass") {
            echo 
    "<center><form action='' method=post>
            Code: <input type=password name=code> <input type=submit name=submit value=Submit>
            </form></center>
            "
    ;
            exit;
        }
            
    $new_ip $_SERVER['REMOTE_ADDR'];
            
    $fp fopen($file_listip"a+");  
            
    fputs ($fp"<nbb>$new_ip<nbb>\n");  
            
    fclose($fp);
            echo 
    "<center>IP của bạn đã được cập nhập thành công.</center>";
    }
    ?>
    </body>
    </html>
    - Mở file Security, chỉnh IP hosting của bạn.
    lưu code sau với tên security.php
    Mã:
    <?php
    $list_ip = array(
        "127.0.0.1",        // Local
        "203.171.30.107"    // IP Hosting
        );
    $file_listip = "listip.txt";
    $fopen_ip = fopen($file_listip, "r");
    
    while ( !feof($fopen_ip) )
        {
            $read_ip = fgets($fopen_ip,50);
            $ip = explode('<nbb>', $read_ip);
            $list_ip[] = $ip[1];
        }
        fclose($fopen_ip);
    
    if ( !in_array($_SERVER['REMOTE_ADDR'], $list_ip) ){ 
            echo "<center>Khong co quyen truy cap</center>";
            exit();
        }
    ?>
    tạo file listip.txt
    ( file listip.txt không chứa nội dung gì )
    - UP 3 file security.php, checkip.php , listip.txt vào thư mục admincp.
    - Chmod File listip.txt thành 777.
    - Mở file global.php và thêm vào đằng sau <?
    Mã:
    include("security.php");  
     
    Cách sử dụng:
    - Truy cập vào địa chỉ: http://yoururl.com/forum/admincp/capnhapip.php
    Nhập mật khẩu của bạn để cập nhập địa chỉ IP mới.
    [TIP] Nên dùng Sock SSh do chính hosting của bạn tạo ra để truy cập vào admincp [/TIP]

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí