Hiển thị kết quả từ 1 đến 6 / 6
  1. #1
    Tham gia
    10-12-2015
    Bài viết
    10
    Like
    2
    Thanked 0 Times in 0 Posts

    Buồn quá đi ! HỎI: Set thư mục gốc cho user trong linux

    Các pro cho hỏi làm sao để đặt thư mục gốc cho user trong linux? Ngăn không cho user này có thể đọc được file và thư mục của user khác?

    Cụ thể thì mình cài đặt và thử với VestaCP và CWP Control Panel, cài xong mình tạo host để test, rồi mình làm một file php có nội dung như sau:

    <?php
    $arr = glob ( '../../../../../../../*' );
    print_r($arr);

    Cái đoạn ../ là mình test dần dần, mỗi lần thêm một đoạn ../ để thử xem danh sách file và thư mục phía trước, kết quả là lùi được đến cả thư mục root của root luôn. Sau đó mình thử lệnh file_get_contents một file trong một host khác, nó in ra được nội dung file đó luôn -> với mấy CP này mà dùng làm host, có thể đi xem nội dung file config của các host khác.

    Test trên DirectAdmin và Kloxo thì không bị -> làm sao để không bị nhỉ?
    Quote Quote

  2. #2
    Tham gia
    16-12-2014
    Bài viết
    159
    Like
    1
    Thanked 47 Times in 39 Posts
    bạn xem lại quyền của user đang chạy php của 1 hosting
    <?php
    echo 'whoim = '.exec('/usr/bin/whoami');
    ?>
    Sau đó check quyền của user hosting này có thể read vào thư mục của user khác hay không
    ls -l /home/
    Nhận chống DDoS cho WEBSITE! - Skype: voduy13

  3. Thành viên Like bài viết này:


  4. #3
    Tham gia
    10-12-2015
    Bài viết
    10
    Like
    2
    Thanked 0 Times in 0 Posts
    Cảm ơn bạn đã phản hồi, dựa vào phản hồi của bạn mình đã check whoim thấy user thực thi php là user hiện tại (đối với VestaCP), đối với server LEMP là nginx.

    Lệnh: ls -l /home/

    total 12
    drwx--x--x 6 admin admin 4096 Jan 16 17:34 admin
    drwx--x--x 2 backup backup 4096 Jan 16 17:33 backup
    drwx--x--x 6 test test 4096 Jan 16 17:39 test

    Check qua thì user test không đọc được file trong thư mục của user admin, nhưng check các thư mục quan trọng, liên quan đến bảo mật của server như etc, mysql... thì đọc được.
    Giờ mình chỉ cần làm sao để user không thể back lại trước thư mục chính đã được set trước đó. Ví dụ user test chỉ đọc được file và thư mục trong thư mục /home/test mà thôi.

  5. #4
    Tham gia
    16-12-2014
    Bài viết
    159
    Like
    1
    Thanked 47 Times in 39 Posts
    hoặc là bạn loại bỏ quyền thực thi exec của PHP trong file php.ini
    Không thì rất là đơn giản, bất kỳ thư mục nào user1 có quyền vào đọc thì nó có thể vào đọc, những nơi ko cho thì nó ko vào được đó là luật phân quyền của Linux, nhưng file nhạy cảm của hệ thống thì mặc định root mới đọc sửa được, còn user thường chỉ có xem thôi, trên linux ko có file nào lưu pass (chúng mã hóa md5) chỉ có vestacp có file root mysql ở /root/.my.cnf nhưng file này mình tin cũng đã phân quyền chỉ có root đọc được. Nói chung là 1 user của hệ thống user đó phải có 1 số quyền hạn nhất định mà hệ thống dành cho nó. Ví dụ bạn set 1 thư mục quyền 755 thì có nghĩa là những user khác cũng được đọc chứ
    Nhận chống DDoS cho WEBSITE! - Skype: voduy13

  6. Thành viên Like bài viết này:


  7. #5
    Tham gia
    10-12-2015
    Bài viết
    10
    Like
    2
    Thanked 0 Times in 0 Posts
    Cảm ơn bạn nhiều, mấy cái chmod mình nắm được chút chút, sau khi google thì thấy có vẻ như liên quan đến cái chroot hơn, mình google thêm vậy.

  8. #6
    Tham gia
    24-04-2015
    Bài viết
    1
    Like
    0
    Thanked 0 Times in 0 Posts
    Đúng cái mình đang cần, cảm ơn chủ thớt và các pro đã chia sẽ

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •