HVAonline
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

HVAonline

Security, Designing, Hacking, Programming
 
Trang ChínhLatest imagesTìm kiếmĐăng kýĐăng Nhập
Tìm kiếm
 
 

Display results as :
 
Rechercher Advanced Search
Latest topics
» Xác định định dạng dữ liệu
Access Control List in Linux I_icon_minitimeFri Jul 10, 2015 7:02 pm by tran quang huy

» Compra Viagra. viagra generico catalogo
Access Control List in Linux I_icon_minitimeThu Aug 04, 2011 1:25 pm by Khách viếng thăm

» Compra Viagra. viagra generico all estero
Access Control List in Linux I_icon_minitimeThu Aug 04, 2011 11:55 am by Khách viếng thăm

» real time gaming online casinos
Access Control List in Linux I_icon_minitimeWed Aug 03, 2011 8:11 pm by Khách viếng thăm

» Why wont my phone lt me use GIF images?
Access Control List in Linux I_icon_minitimeWed Aug 03, 2011 7:34 pm by Khách viếng thăm

» fish oil dietary supplement
Access Control List in Linux I_icon_minitimeWed Aug 03, 2011 9:44 am by Khách viếng thăm

» How do i turn on cookies on .my headset?
Access Control List in Linux I_icon_minitimeTue Aug 02, 2011 10:25 pm by Khách viếng thăm

» гинекология грибы
Access Control List in Linux I_icon_minitimeMon Aug 01, 2011 10:33 pm by Khách viếng thăm

» backlink popularity backlink services
Access Control List in Linux I_icon_minitimeMon Aug 01, 2011 3:34 pm by Khách viếng thăm

Top posters
conmale
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
quanta
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
seamoun
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
mrro
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
quanlytruong
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
mulan
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
TranVanMinh
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
Z0rr0
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
zeno
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
WinDak
Access Control List in Linux EmptyAccess Control List in Linux I_voting_barAccess Control List in Linux Empty 
Thống Kê
Hiện có 4 người đang truy cập Diễn Đàn, gồm: 0 Thành viên, 0 Thành viên ẩn danh và 4 Khách viếng thăm

Không

Số người truy cập cùng lúc nhiều nhất là 64 người, vào ngày Sun Oct 13, 2024 2:44 am

 

 Access Control List in Linux

Go down 
Tác giảThông điệp
quanta




Tổng số bài gửi : 21
Join date : 28/09/2010

Access Control List in Linux Empty
Bài gửiTiêu đề: Access Control List in Linux   Access Control List in Linux I_icon_minitimeTue Sep 28, 2010 1:39 pm

(Tham khảo từ Google với từ khóa chính là tiêu đề của bài viết)

Bài viết cung cấp nền tảng và chức năng chính của ACLs trong hệ thống file của Linux. Bạn cũng sẽ học được cách mở rộng các khái niệm permissions truyền thống với ACLs và những thuận lợi trong việc cung cấp khái niệm này.

Thuận lợi của ACLs

Thông thường 1 file trong Linux có 3 quyền: r, w, x với 3 nhóm người dùng: owner, group, other. 9 bits này được sử dụng để xác định đặc tính cho tất cả các hệ thống file trong Linux. Thêm vào đó, SUID, SGID, sticky bit có thể được dùng trong các trường hợp đặc biệt.

ACLs được sử dụng trong trường hợp mà các khái niệm permission của file thông thường không có hiệu lực. Chúng cho phép gán quyền cho một người, hoặc một nhóm cá nhân thậm chí không tương ứng với owner hoặc owning group. ACLs hỗ trợ các hệ thống file ReiserFS, Ext2, Ext3, JFS, XFS.

Bạn có thể thấy rõ thuận lợi của ACLs khi thay thế 1 server chạy Windows bằng 1 server chạy Linux. Một số trạm kết nối vẫn có thể chạy trên Windows ngay cả sau khi chuyển đổi. Hệ thống Linux sẽ chuyển các file và dịch vụ về clients chạy windows với Samba. Samba cũng hỗ trợ ACLs và lúc đó quyền của người dùng có thể được cấu hình trên cả Linux và Windows bằng GUI. winbindd còn có khả năng gán quyền cho user chỉ tồn tại trên Windows domain mà ko có account nào trên Linux server. Mặt khác bạn có thể chỉnh sửa ACLs với getfacl và setfacl

Định nghĩa

POSIX sử dụng 3 lớp người dùng để gán quyền cho hệ thống file.

Access ACL: áp dụng cho cả file và thư mục
Default ACL: chỉ áp dụng cho thư mục. Chúng xác định quyền kế thừa từ thư mục cha khi được tạo.
ACL entry: Mỗi ACL sẽ bao gồm 1 tập hợp ACL entries. Một ACL entry sẽ chứa 1 loại, 1 hạn định mà user hoặc group nó tham chiếu đến, và một tập hợp các quyền.

Handing ACLs

Cấu trúc của ACLs entries

Về cơ bản, ACL chia thành 2 lớp: minimum ACL chỉ đơn giản gồm các quyền như hệ thống file truyền thống. Extended ACL mở rộng hơn, nó chứa đựng 1 mask entry, và có thể bao gồm các entries cho loại named user, named group. Các permission được định nghĩa trong owner và other luôn luôn có hiệu lực. Ngoại trừ mask entry thì các entries khác luôn có hiệu lực hoặc là được masked. Nếu các quyền tồn tại trong 1 hoặc 1 số entry trên được mask thì chúng cũng có hiệu lực. Permission chỉ chứa mask hoặc duy nhất 1 entry thực sự thì sẽ không có hiệu lực.

ACL entries và File mode permission bits

ACL được cấu tạo theo 3 khối:
Không có mask: owning group map với group class
có mask: mask map với group class

Quá trình map này đảm bảo việc tương tác giữa các ứng dụng được và không được hỗ trợ bởi ACLs. Quyền truy cập được gán bởi bit quyền đại diện cho giới hạn cao nhất. Tất cả các quyền không phản ánh ở đây hoặc là ko được gán trong ACL hoặc là không có hiệu lực.

Một thư mục với truy cập ACL

Việc xử lý ACL được giải thích theo 3 bước:
+ Tạo file
+ Chỉnh ACL
+ Dùng masks

Trước khi bạn tạo thư mục hãy dùng umask để xác định quyền truy cập ban đầu.
Code:

$ umask 027
Sau đó tạo mydir:
Code:

$ mkdir mydir
Sau khi tạo mydir hãy dùng ls -dl để kiểm tra lại là quyền đã được gán chính xác:
Code:

$ ls -dl mydir/
drwxrwx---+ 2 quanta quanta 4096 2007-12-29 22:53 mydir/

Kiểm tra trạng thái khởi đầu của ACL và chèn một new user và new group entry
Code:

$ getfacl mydir/
# file: mydir
# owner: quanta
# group: quanta
user::rwx
group::r-x
other::---

Đầu tiên hãy thử chỉnh sửa bằng cách: gán quyền đọc, ghi, thi hành cho user kitty và group friends:
Code:

$ setfacl -m user:kitty:rwx,group:friends:rwx mydir/
Tuỳ chọn -m sẽ nhắc setfacl chỉnh sửa một ACL đã tồn tại.

Thử xem kết quả với lệnh getfacl xem sao:
Code:

$ getfacl mydir/
# file: mydir
# owner: quanta
# group: quanta
user::rwx
user:kitty:rwx
group::r-x
group:friends:rwx
mask::rwx
other::---


Ngoài các entries khởi tạo cho user kitty và group friends, mask entry cũng được tạo ra. mask entry này được gán tự động để giảm thiểu số lượng các entries trong group class để gọi tên thông thường. mask định nghĩa quyền truy cập có hiệu lực lớn nhất cho tất cả các entries trong group class: named user, named group, owning group. Do đó, mask entry tương ứng với bit quyền của group class - được hiển thị bằng lệnh ls -dl
Code:

$ ls -dl mydir/
drwxrwx---+ 2 quanta quanta 4096 2007-12-29 22:53 mydir/

Bạn chú ý, cột đầu tiên của output chứa đựng một dấu +, đây là ký tự đại diện cho một extended ACL

Theo output trên, permission của mask entry cũng bao gồm quyền write, theo đó owning group cũng có quyền write thư mục mydir.

Bây giờ thử dùng chmod hoặc setfacl để disabled quyền write của group class xem sao, output của lệnh ls cho thấy mask bits đã được điều chỉnh với chmod:
Code:

$ sudo chmod g-w mydir/
Code:

$ getfacl mydir/
# file: mydir
# owner: quanta
# group: quanta
user::rwx
user:kitty:rwx #effective:r-x
group::r-x
group:friends:rwx #effective:r-x
mask::r-x
other::---

Một thư mục với default ACL

default ACL định nghĩa tất cả các quyền truy cập kế thừa từ thư mục này khi nó được tạo. default ACL ảnh hưởng đến các thư mục con cũng như là các files.

Ảnh hưởng của Default ACLs
Về cơ bản quyền của ACL được handled theo 2 cách:
+ 1 thư mục kế thừa default ACL từ thư mục cha
+ 1 file kế thừa từ default ACL và nó sở hữu Access ACL

Tất cả các hệ thống tạo file đều sử dụng mode parameter để định nghĩa quyền truy cập cho file mới được tạo:
+ Nếu thư mục không có default ACL,một sự giao nhau giữa các quyền trong mode parameter và trong umask hiện tại sẽ được tạo và gán cho đối tượng
+ Nếu default ACL tồn tại trong thư mục cha, bit quyền được xác định theo sự giao nhau giữa giá trị của mode parameter và quyền định nghĩa trong default ACL, và được gán cho đối tượng.

Ứng dụng của default ACLs
+ Tạo một default ACL cho một thư mục đã tồn tại
+ Tạo một thư mục con trong thư mục có default ACLs
+ Tạo một file trong thư mục có default ACLs

Thêm một default ACLs vào một thư mục đã tồn tại mydir:
Code:

$ setfacl -d -m group:friends:r-x mydir/
Tuỳ chọn -d sẽ nhắc setfacl thực hiện một "chỉnh sửa" trên default ACLs
Xem kết quả của lệnh này:
Code:

$ getfacl mydir/
# file: mydir
# owner: quanta
# group: quanta
user::rwx
user:kitty:rwx #effective:r-x
group::r-x
group:friends:rwx #effective:r-x
mask::r-x
other::---
default:user::rwx
default:group::r-x
default:group:friends:r-x
default:mask::r-x
default:other::---

getfacl sẽ trả về cả access ACL và default ACL.

Tiếp theo thử tạo một thư mục con trong mydir, bạn sẽ thấy thư mục con này kế thừa default ACL từ mydir:
Code:

$ mkdir mydir/mysubdir
Code:

$ getfacl mydir/mysubdir/
# file: mydir/mysubdir
# owner: quanta
# group: quanta
user::rwx
group::r-x
group:friends:r-x
mask::r-x
other::---
default:user::rwx
default:group::r-x
default:group:friends:r-x
default:mask::r-x
default:other::---

Bạn thấy rõ là access ACL của mysubdir phản ánh chính xác default ACL của mydir.

Sử dụng touch để tạo một file trong thư mục mydir:
Code:

$ touch mydir/myfile
Code:

$ ls -l mydir/myfile
-rw-r-----+ 1 quanta quanta 0 2008-01-07 00:59 mydir/myfile

Code:

$ getfacl mydir/myfile
# file: mydir/myfile
# owner: quanta
# group: quanta
user::rw-
group::r-x #effective:r--
group:friends:r-x #effective:r--
mask::r--
other::---

Về Đầu Trang Go down
 
Access Control List in Linux
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Các địa chỉ hữu ích để học Linux
» Thêm HardDisk vào Linux
» Cài đặt JForum trên Linux
» Tóm tắt Linux Shell Programming
» Linux Execute-only binary vulnerability ?

Permissions in this forum:Bạn không có quyền trả lời bài viết
HVAonline :: Hệ điều hành và thiết bị ứng dụng :: Thảo luận hệ điều hành *nix-
Chuyển đến