Tải bản đầy đủ (.pdf) (9 trang)

Tài liệu Thiết Kế Web Với Joomla part 17 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (528.45 KB, 9 trang )


Collection by traibingo

112
Part 18

Bảo mật cho trang quản trị Joomla! bằng cookie

Ý tưởng của giải pháp này là: Sử dụng chứng thực bằng cookie ngăn chặn
mọi truy cập trực tiếp tới vùng quản trị Joomla! bằng đường dẫn
/administrator (VD: Thay vào
đó phải truy cập gián tiếp thông qua một đường dẫn chỉ mình bạn biết
(chẳng hạn

Bước 1: Tạo một thư mục bí mật chẳng hạn [Joomla]/secret
Thư mục này nằm cùng mức với thư mục /administrator

Collection by traibingo

113
Lưu ý: Bạn hoàn toàn có thể sử dụng một thư mục có sẵn (chẳng hạn thư
mục /language)
Bước 2: Tạo một file "yoursite.php" trong thư mục bí mật trên với nội
dung sau:
< ?php
$admin_cookie_code="abcdef123456";
setcookie("YoursiteAdminSession",$admin_cookie_code,0,"/");
header("Location: /administrator/index.php");
?>
Bạn nên đổi cặp giá trị cookie "YoursiteAdminSession" &
"abcdef123456" bằng những chuỗi ký tự bất kỳ (gồm ký tự chữ cái và ký


tự số) để tránh hacker sử dụng công cụ chèn trực tiếp cookie trên vào trình
duyệt.
Bạn cũng có thể sử dụng một cái tên khác chứ không nhất thiết phải là
"yoursite.php" :)
Bước 3: Thêm nội dung sau tới file ".htaccess" của thư mục
/administrator
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/administrator
RewriteCond %{HTTP_COOKIE} !YoursiteAdminSession=abcdef123456
RewriteRule .* - [L,F]
Trong trường hợp HOSTING của bạn không hỗ trợ file .htaccess hãy liên
hệ với bộ phận kỹ thuật để được giúp đỡ.
Khi cần truy cập vào trang quản trị hãy gõ đường dẫn:
http://yoursite/secret/yoursite.php
 VD:
Reference:



Collection by traibingo

114


Các cách CHMOD cho tệp (file) và thư mục
(directory)
Để đảm bảo an toàn cho các file và thư mục trong Joomla!, tránh sự nhóm
ngó của các hacker thì một trong các yêu cầu quan trọng và phải luôn lưu ý
đó là CHMOD cho đúng.
Thông thường chúng ta cần thiết lập CHMOD 755 cho các thư mục và

CHMOD 644 cho các file.
CHMOD là gì? CHMOD= 755 là gì? CHMOD = 644 là gì?
CHMOD chính là thao tác thay đổi các quyền sau:
 "Read" (Đọc): viết tắt là "r", và được biểu diễn bằng số 4
 "Write" (Ghi / Chỉnh sửa): viết tắt là "w", và được biểu diễn bằng số
2
 "Execute" (Thực thi): viết tắt là "x", và được biểu diễn bằng số 1
CHMOD cùng lúc thay đổi quyền hạn trên các file/thư mục với các đối
tượng sau:
 "Owner" - chủ sở hữu của file/thư mục,
 "Group" - Nhóm mà Owner là thành viên,
 "Public / Others/ Everybody": những người còn lại.


Collection by traibingo

115

CHMOD 755 (rwx r-x r-x) cho thư mục
Lưu ý: Khái niệm CHMOD không tồn tại trên hệ thống Windows, mà chỉ có
trên các hệ thống Unix/Linux
CHMOD = 755 cho các thư mục có nghĩa là:
 7 = 4 + 2 + 1 : Người sở hữu thư mục có quyền đọc thư mục (read);
chỉnh sửa thư mục (write); liệt kê các thư mục và file bên trong
(execute);
 5 = 4 + 0 + 1 : Những người cùng nhóm chỉ có quyền đọc thư mục
(read); liệt kê các thư mục và file bên trong (execute)
 5 = 4 + 0 + 1 : Những người còn lại chỉ có quyền đọc thư mục (read);
liệt kê các thư mục và file bên trong (execute)


Collection by traibingo

116

CHMOD 755 (rwx r-x r-x) cho thư mục
CHMOD = 644 cho các tệp (file) có nghĩa là:
 6 = 4 + 2 + 0 : Người sở hữu thư mục có quyền đọc tệp (read); chỉnh
sửa tệp (write)
 4 = 4 + 0 + 0 : Những người cùng nhóm chỉ có quyền đọc tệp (read)
 4 = 4 + 0 + 0 : Những người còn lại chỉ có quyền đọc tệp (read)

Collection by traibingo

117

CHMOD 644 (rw- r r ) cho file
CMOD 755 cho các thư mục, CHMOD 644 cho các file bằng một file
PHP
Tạo một file "chmod.php" nằm trong thư mục mà bạn cần CHMOD cho
toàn bộ các file, thư mục bên trong nó với nội dung như sau:
<?php

system('find . -type d -exec chmod 755 {} \; 2>&1');
system('find . -type f -exec chmod 644 {} \; 2>&1');

echo("\n\nComplete!");

?>
Sau đó thực thi các dòng lệnh trên bằng cách mở link tới file này. VD:


CHMOD 755 cho các thư mục, CHMOD 644 cho các file bằng dòng
lệnh

Collection by traibingo

118
Nếu bạn là người quản trị server hoặc có thể thực thi dòng lệnh thông qua
SSH thì trước tiên bạn cần chuyển đến thư mục Joomla bằng lệnh "cd"
(change directory), sau đó bạn có thể dùng các lệnh sau:
find . -type d -exec chmod 755 {} \; // dùng để CHMOD cho các thư
mục
find . -type f -exec chmod 644 {} \; // dùng để CHMOD cho các file
hoặc
find . -type d -print0 | xargs -0 chmod 0775 // dùng để CHMOD cho các
thư mục
find . -type f -print0 | xargs -0 chmod 0664 // dùng để CHMOD cho các
file
hoặc
chmod -R 755 ./* // dùng để CHMOD tất cả các thư mục
và file
find . -type f -exec chmod 644 {} \; // dùng để CHMOD cho các file
CHMOD bằng các trình quản lý file như "File Manager", "FileZilla"
Đối với FileZilla:
 Chọn"Recurse into subdirectories" để áp dụng thao tác CHMOD cho
cả các thư mục con
 Chọn "Apply to all files and directories" để áp dụng thao tác CHMOD
cho tất cả các file và thư mục
 Chọn "Apply to files only" để chỉ áp dụng thao tác CHMOD cho các
file
 Chọn "Apply to directories only" để chỉ áp dụng thao tác CHMOD cho

các thư mục

Collection by traibingo

119

CHMOD 755 (rwx r-x r-x) cho thư mục bằng FileZilla


Collection by traibingo

120


CHMOD 755 (rwx r-x r-x) cho thư mục bằng "File Manager"

×