Bạn có thể thêm một dòng như
%admin ALL = !/bin/rm -rf /
vào sudoers
tập tin của bạn để ngăn chặn việc thực thi lệnh với các tùy chọn cụ thể.
Hoặc, nếu bạn muốn loại trừ một số lệnh, bạn có thể làm việc với các bí danh lệnh
Cmnd_Alias DANGEROUS_CMNDS=/bin/rm -rf /, /bin/rm -fr /
%admin ALL=!DANGEROUS_CMNDS
Bạn cũng có thể thử chơi nó an toàn bằng cách sử dụng
Cmnd_Alias DANGEROUS_CMNDS=/bin/rm -rf /, /bin/rm -fr /, /bin/rm / *, /bin/rm * /, /bin/rm -rf / *, /bin/rm -rf * /, /bin/rm -fr / *, /bin/rm -fr* /
%admin ALL=!DANGEROUS_CMNDS
nhưng vẫn có thể có những cách khác bạn có thể tự bắn vào chân mình rm
vì vậy hãy cẩn thận .
Nhưng hãy nhớ rằng tất cả khớp lệnh được thực hiện trên chuỗi đầy đủ của lệnh, vì vậy sudo rm -rf /Volumes
vẫn sẽ hoạt động (như sẽ cd /; sudo rm -rf .
).
PS: Bằng mọi cách, sử dụng sudo visudo
để chỉnh sửa sudoers
tệp và KHÔNG BAO GIỜ chỉnh sửa trực tiếp
PPS: Tôi rõ ràng đã không kiểm tra điều này với rm
(chỉ /bin/echo
thay vào đó)