Bài 7 : Phân quyền CHMOD trong Linux
Mục lục:
- Quyền truy cập tệp Linux
- Sử dụng
chmod - Phương pháp tượng trưng (văn bản)
- Phương pháp số
- Sử dụng tệp tham chiếu
- Thay đổi đệ quy Quyền của tệp
- Hoạt động trên các liên kết tượng trưng
- Thay đổi hàng loạt quyền
- Phần kết luận
Trong Linux, quyền truy cập vào các tệp được quản lý thông qua các quyền, thuộc tính và quyền sở hữu tệp. Điều này đảm bảo rằng chỉ những người dùng và quy trình được ủy quyền mới có thể truy cập các tệp và thư mục.
Hướng dẫn này bao gồm cách sử dụng
chmod
để thay đổi quyền truy cập của các tệp và thư mục.
Quyền truy cập tệp Linux
Trước khi đi xa hơn, hãy giải thích mô hình cấp phép Linux cơ bản.
Trong Linux, mỗi tệp được liên kết với một chủ sở hữu và một nhóm và được gán quyền truy cập quyền cho ba lớp người dùng khác nhau:
- Chủ sở hữu tập tin. Thành viên nhóm. Những người khác (mọi người khác).
Quyền sở hữu tập tin có thể được thay đổi bằng cách sử dụng các lệnh
chown
và
chgrp
.
Có ba loại quyền truy cập tệp áp dụng cho mỗi lớp:
- Sự cho phép đọc. Quyền viết. Sự cho phép thực thi.
Khái niệm này cho phép bạn chỉ định người dùng nào được phép đọc tệp, ghi vào tệp hoặc thực thi tệp.
Quyền truy cập tệp có thể được xem bằng
ls
:
ls -l filename.txt
-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt |- | | | | | | | | | | | | | +-----------> 7. Group | | | | | +-------------------> 6. Owner | | | | +--------------------------> 5. Alternate Access Method | | | +----------------------------> 4. Others Permissions | | +-------------------------------> 3. Group Permissions | +----------------------------------> 2. Owner Permissions +------------------------------------> 1. File Type
Ký tự đầu tiên hiển thị loại tệp. Nó có thể là một tệp thông thường (
-
), thư mục (
d
), liên kết tượng trưng (
l
) hoặc bất kỳ loại tệp đặc biệt nào khác.
Chín ký tự tiếp theo đại diện cho các quyền của tệp, ba bộ ba mỗi ký tự. Bộ ba đầu tiên hiển thị các quyền của chủ sở hữu, các quyền của nhóm thứ hai và bộ ba cuối cùng hiển thị các quyền khác. Các quyền có thể có một ý nghĩa khác nhau tùy thuộc vào loại tệp.
Trong ví dụ trên (
rw-r--r--
) có nghĩa là chủ sở hữu tệp có quyền đọc và ghi (
rw-
), nhóm và những người khác chỉ có quyền đọc (
r--
).
Mỗi trong ba bộ ba quyền có thể được xây dựng theo các ký tự sau và có các hiệu ứng khác nhau, tùy thuộc vào việc chúng được đặt thành một tệp hoặc vào một thư mục:
Hiệu lực của Quyền đối với Tệp
| Giấy phép | Tính cách | Ý nghĩa trên tập tin |
|---|---|---|
| Đọc |
-
|
Các tập tin không thể đọc được. Bạn không thể xem nội dung tập tin. |
r
|
Các tập tin có thể đọc được. | |
| Viết |
-
|
Các tập tin không thể được thay đổi hoặc sửa đổi. |
w
|
Các tập tin có thể được thay đổi hoặc sửa đổi. | |
| Hành hình |
-
|
Các tập tin không thể được thực thi. |
x
|
Các tập tin có thể được thực hiện. | |
s
|
Nếu được tìm thấy trong bộ ba
user
nó sẽ thiết lập bit
setuid
. Nếu được tìm thấy trong bộ ba
group
, nó sẽ thiết lập bit
setgid
. Nó cũng có nghĩa là cờ
x
được đặt.
Khi các cờ
|
|
S
|
Tương tự
s
nhưng cờ
x
không được đặt. Cờ này hiếm khi được sử dụng trên các tập tin. |
|
t
|
Nếu tìm thấy trong bộ ba
others
nó đặt bit
sticky
.
Nó cũng có nghĩa là cờ
|
|
T
|
Tương tự như
t
nhưng cờ
x
không được đặt. Cờ này là vô dụng trên các tập tin. |
Hiệu lực của Quyền đối với Thư mục (Thư mục)
Trong Linux, Thư mục là các loại tệp đặc biệt chứa các tệp và thư mục khác.
| Giấy phép | Tính cách | Ý nghĩa trên thư mục |
|---|---|---|
| Đọc |
-
|
Nội dung của thư mục không thể được hiển thị. |
r
|
Nội dung của thư mục có thể được hiển thị.
(ví dụ: Bạn có thể liệt kê các tệp trong thư mục bằng
|
|
| Viết |
-
|
Nội dung của thư mục không thể thay đổi. |
w
|
Nội dung của thư mục có thể được thay đổi.
(ví dụ: Bạn không thể tạo tệp mới, xóa tệp..v.v.) |
|
| Hành hình |
-
|
Thư mục không thể thay đổi thành. |
x
|
Thư mục có thể được điều hướng bằng cách sử dụng
cd
. |
|
s
|
Nếu được tìm thấy trong bộ ba
user
, nó sẽ thiết lập bit
setuid
. Nếu được tìm thấy trong bộ ba
group
nó sẽ thiết lập bit
setgid
. Nó cũng có nghĩa là cờ
x
được đặt. Khi cờ
setgid
được đặt trên một thư mục, các tệp mới được tạo trong nó sẽ kế thừa ID nhóm thư mục (GID), thay vì ID nhóm chính của người dùng đã tạo tệp.
|
|
S
|
Tương tự
s
nhưng cờ
x
không được đặt. Cờ này là vô dụng trên các thư mục. |
|
t
|
Nếu tìm thấy trong bộ ba
others
nó đặt bit
sticky
.
Nó cũng có nghĩa là cờ
|
|
T
|
Tương tự như
t
nhưng cờ
x
không được đặt. Cờ này là vô dụng trên các thư mục. |
Sử dụng
chmod
Lệnh
chmod
có dạng chung sau:
chmod MODE FILE…
Lệnh
chmod
cho phép bạn thay đổi quyền trên một tệp bằng chế độ số hoặc ký hiệu hoặc tệp tham chiếu. Chúng tôi sẽ giải thích các chế độ chi tiết hơn sau. Lệnh có thể chấp nhận một hoặc nhiều tệp và / hoặc thư mục được phân tách bằng dấu cách làm đối số.
Chỉ root, chủ sở hữu tệp hoặc người dùng có quyền sudo mới có thể thay đổi quyền của tệp. Cẩn thận hơn khi sử dụng
chmod
, đặc biệt là khi thay đổi đệ quy các quyền.
Phương pháp tượng trưng (văn bản)
Cú pháp của
chmod
khi sử dụng chế độ ký hiệu có định dạng sau:
chmod perms… FILE…
Bộ cờ đầu tiên (
), cờ người dùng, xác định lớp người dùng nào cấp quyền cho tệp được thay đổi.
-
u- Chủ sở hữu tập tin.g- Người dùng là thành viên của nhóm.o- Tất cả người dùng khác.a- Tất cả người dùng, giống hệt vớiugo.
Nếu cờ người dùng bị bỏ qua, thì mặc định là
a
và các quyền được đặt bằng ô sẽ không bị ảnh hưởng.
Bộ cờ thứ hai (
), các cờ hoạt động, xác định xem các quyền sẽ được xóa, thêm hoặc đặt:
-
-Loại bỏ các quyền được chỉ định.+Thêm quyền được chỉ định.=Thay đổi các quyền hiện tại thành các quyền được chỉ định. Nếu không có quyền nào được chỉ định sau ký hiệu=, tất cả các quyền từ lớp người dùng đã chỉ định sẽ bị xóa.
Các quyền (
perms…
) có thể được đặt rõ ràng bằng cách sử dụng 0 hoặc một hoặc nhiều chữ cái sau:
r
,
w
,
x
,
X
,
s
và
t
. Sử dụng một chữ cái từ tập hợp
u
,
g
và
o
khi sao chép quyền từ lớp này sang lớp người dùng khác.
Khi đặt quyền cho nhiều hơn một lớp người dùng (
), sử dụng dấu phẩy (không có dấu cách) để phân tách các chế độ biểu tượng.
Dưới đây là một số ví dụ về cách sử dụng
chmod
trong chế độ tượng trưng:
-
Cho phép các thành viên của nhóm đọc tệp, nhưng không được viết và thực thi nó:
chmod g=r filenameXóa quyền thực thi cho tất cả người dùng:
chmod ax filenameTuyệt đối xóa quyền ghi cho người dùng khác:
chmod -R ow dirnameXóa quyền đọc, ghi và thực thi quyền đối với tất cả người dùng ngoại trừ chủ sở hữu tệp:
chmod og-rwx filenameĐiều tương tự cũng có thể được thực hiện bằng cách sử dụng mẫu sau:
chmod og= filenameCấp quyền đọc, viết và thực thi cho chủ sở hữu tệp, đọc quyền đối với nhóm của tệp và không có quyền đối với tất cả người dùng khác:
chmod u=rwx, g=r, o= filenameThêm quyền của chủ sở hữu tệp vào các quyền mà các thành viên trong nhóm của tệp có:
chmod g+u filenameThêm một bit dính vào một thư mục nhất định:
chmod o+t dirname
Phương pháp số
Cú pháp của
chmod
khi sử dụng phương thức số có định dạng sau:
chmod NUMBER FILE…
Khi sử dụng chế độ số, bạn có thể đặt quyền cho cả ba lớp người dùng (chủ sở hữu, nhóm và tất cả những người khác) cùng một lúc.
NUMBER
có thể là số có 3 hoặc 4 chữ số.
Khi số 3 chữ số được sử dụng, chữ số đầu tiên thể hiện quyền của chủ sở hữu tệp, số thứ hai trong nhóm của tệp và số cuối cùng cho tất cả người dùng khác.
Mỗi quyền ghi, đọc và thực thi có giá trị số sau:
-
r(đọc) = 4w(ghi) = 2x(thực thi) = 1no quyền = 0
Số quyền của một lớp người dùng cụ thể được biểu thị bằng tổng giá trị của các quyền cho nhóm đó.
Để tìm ra các quyền của tệp trong chế độ số, chỉ cần tính tổng cho tất cả các lớp người dùng. Ví dụ: để cấp quyền đọc, viết và thực thi cho chủ sở hữu tệp, đọc và thực thi quyền đối với nhóm của tệp và chỉ đọc quyền cho tất cả người dùng khác mà bạn sẽ làm như sau:
- Chủ sở hữu: rwx = 4 + 2 + 1 = 7group: rx = 4 + 0 + 1 = 5 Người khác: rx = 4 + 0 + 0 = 4
Sử dụng phương pháp trên, chúng tôi đưa ra số
754
, đại diện cho các quyền mong muốn.
Để thiết lập các cờ
setuid
,
setgid
và
sticky bit
sử dụng số có bốn chữ số.
Khi số 4 chữ số được sử dụng, chữ số đầu tiên có nghĩa như sau:
- setuid = 4setgid = 2sticky = 1no thay đổi = 0
Ba chữ số tiếp theo có cùng ý nghĩa như khi sử dụng số có 3 chữ số.
Nếu chữ số đầu tiên là 0 thì có thể bỏ qua và chế độ có thể được biểu thị bằng 3 chữ số. Chế độ số
0755
giống như
755
.
Để tính toán chế độ số, bạn cũng có thể sử dụng một phương thức khác (phương thức nhị phân), nhưng nó phức tạp hơn một chút. Biết cách tính toán chế độ số bằng 4, 2 và 1 là đủ cho hầu hết người dùng.
Bạn có thể kiểm tra quyền của tệp trong ký hiệu số bằng lệnh
stat
:
stat -c "%a" filename
644
Dưới đây là một số ví dụ về cách sử dụng
chmod
trong chế độ số:
-
Cung cấp cho chủ sở hữu tệp quyền đọc và ghi và chỉ đọc quyền cho các thành viên nhóm và tất cả người dùng khác:
chmod 644 dirnameCung cấp cho chủ sở hữu tệp đọc, viết và thực thi quyền, đọc và thực thi quyền cho các thành viên nhóm và không có quyền cho tất cả người dùng khác:
chmod 750 dirnameCung cấp cho đọc, viết và thực thi quyền, và một bit dính vào một thư mục nhất định:
chmod 1777 dirnameĐặt đệ quy các quyền đọc, ghi và thực thi quyền cho chủ sở hữu tệp và không có quyền cho tất cả người dùng khác trên một thư mục nhất định:
chmod -R 700 dirname
Sử dụng tệp tham chiếu
Tùy chọn
--reference=ref_file
cho phép bạn đặt các quyền của tệp giống như các quyền của tệp tham chiếu đã chỉ định (
ref_file
).
chmod --reference=REF_FILE FILE
Ví dụ: lệnh sau sẽ gán các quyền của
file1
cho
file2
Thay đổi đệ quy Quyền của tệp
Để hoạt động đệ quy trên tất cả các tệp và thư mục trong thư mục đã cho, hãy sử dụng tùy chọn
-R
(
--recursive
):
chmod -R MODE DIRECTORY
Ví dụ: để thay đổi quyền của tất cả các tệp và thư mục con trong thư mục
/var/www
thành
755
bạn sẽ sử dụng:
Hoạt động trên các liên kết tượng trưng
Liên kết tượng trưng luôn có
777
quyền.
Theo mặc định, khi thay đổi quyền của symlink,
chmod
sẽ thay đổi quyền trên tệp mà liên kết đang trỏ tới.
chmod 755 symlink
Rất có thể là thay vì thay đổi quyền sở hữu mục tiêu, bạn sẽ nhận được một lượt truy cập không thể truy cập 'symlink': Quyền bị từ chối lỗi.
Lỗi xảy ra do theo mặc định trên hầu hết các liên kết phân phối Linux được bảo vệ và bạn không thể hoạt động trên các tệp đích. Tùy chọn này được chỉ định trong
/proc/sys/fs/protected_symlinks
.
1
có nghĩa là kích hoạt và
0
bị vô hiệu hóa. Không nên vô hiệu hóa bảo vệ symlink.
Thay đổi hàng loạt quyền
Đôi khi có những tình huống mà bạn sẽ cần phải thay đổi hàng loạt quyền và thư mục quyền.
Kịch bản phổ biến nhất là thay đổi đệ quy các quyền của tệp trang web thành
644
và quyền của thư mục thành
755
.
Sử dụng phương thức số:
find /var/www/my_website -type d -exec chmod 755 {} ;
find /var/www/my_website -type f -exec chmod 644 {} ;
Sử dụng phương pháp tượng trưng:
find /var/www/my_website -type d -exec chmod u=rwx, go=rx {} ;
find /var/www/my_website -type f -exec chmod u=rw, go=r {} ;
Lệnh
find
sẽ tìm kiếm các tệp và thư mục trong
/var/www/my_website
và chuyển từng tệp và thư mục tìm thấy vào
chmod
để đặt quyền.
Phần kết luận
Lệnh
chmod
thay đổi quyền của tập tin. Các quyền có thể được đặt bằng chế độ tượng trưng hoặc số.
Để tìm hiểu thêm về
chmod
hãy truy cập trang người đàn ông chmod.
ĐượC thiết kế để hoạt động trên một loạt các điện thoại, bao gồm cả điện thoại di động cấp thấp. Trong khi hầu hết các nhà cung cấp dịch vụ Web e-mail đều có các tùy chọn dựa trên trình duyệt hoặc phần mềm để truy cập các dịch vụ của họ từ điện thoại di động, một số dịch vụ này cồng kềnh để sử dụng và không có trên mọi loại điện thoại. Ngoài ra, người dùng Oz client có thể truy cập vào nhiều tài khoản e-mail từ phần mềm
Việc mua lại phần mềm Oz có thể giúp Nokia theo đuổi chiến lược tập trung vào các dịch vụ Internet tiêu dùng. Hôm thứ Hai, nhà sản xuất thiết bị cầm tay đã thông báo rằng sẽ ngừng phát triển nền tảng e-mail di động Intellisync tập trung vào kinh doanh thay vì dựa vào các sản phẩm e-mail doanh nghiệp từ các nhà cung cấp khác như Microsoft, IBM và Cisco.
TeliaSonera được cung cấp dịch vụ âm nhạc di động cho thuê bao di động. 99 người Thụy Điển đang cung cấp cho người dùng di động và máy tính một dịch vụ tải nhạc không giới hạn cho 99 kronor Thụy Điển (12 đô la Mỹ) mỗi tháng, sau hàng tháng truy cập miễn phí, hôm thứ Hai. sẽ nhận được quyền truy cập vào thư viện các bài hát từ EMI, Universal, Warner và các nhãn thu âm độc lập.
Kích cỡ của thư viện là hơn 3 triệu bài hát và đang phát triển, và tất cả các bài hát đều được bảo vệ bản quyền bằng DRM (quản lý quyền kỹ thuật số).
Lỗ hổng trong SSL hoặc Lớp cổng bảo mật được sử dụng để bảo vệ lưu lượng truy cập web cho ngân hàng trực tuyến, mua sắm và bất kỳ kết nối https nào khác, cho phép kẻ tấn công đột nhập vào bất kỳ kết nối an toàn về mặt lý thuyết nào và thêm các lệnh độc hại. truy cập lưu lượng mạng cụ thể giữa một máy khách, chẳng hạn như trình duyệt Web, và Web hoặc máy chủ khác. Điều đó có nghĩa là hầu hết người dùng gia đình có thể sẽ không được nhắm mục tiêu cụ thể bởi một trong những cuộc tấn công trung gian
Tuy nhiên, các doanh nghiệp và tổ chức có thể nhắm mục tiêu. Per Ray, bất kỳ lưu lượng truy cập SSL được bảo vệ nào cũng có thể dễ bị tổn thương, cho dù đó là trang https, bảo mật cơ sở dữ liệu hoặc kết nối e-mail bảo mật. Vấn đề không cho phép giải mã và ăn cắp dữ liệu mã hóa SSL hoàn toàn, mà thay vào đó cho phép chèn bất kỳ lệnh nào vào luồng truyền thông.







