Cách thay đổi thời gian chờ mật khẩu sudo mặc định trên Linux
Khi bạn chạy lệnh sudo trong Linux, nó sẽ nhớ mật khẩu trong 15 phút theo mặc định, được xác định bởi biến timestamp_timeout trong /etc/sudoers tập tin. Vì vậy, trong thời gian này, bạn có thể chạy bất kỳ lệnh sudo nào khác mà không cần cung cấp mật khẩu. Nó nhắc nhập lại mật khẩu sau 15 phút sudo không hoạt động.
Tuy nhiên, bạn có thể điều chỉnh khoảng thời gian chờ mặc định và kéo dài hơn hoặc ngắn hơn tùy theo sở thích của mình. Bạn cũng có thể định cấu hình nó theo cách nó luôn yêu cầu mật khẩu hoặc yêu cầu mật khẩu một lần cho mỗi phiên cuối hoặc khởi động hệ thống. Đây là cách bạn có thể làm điều này.
Mục Lục
Điều chỉnh thời gian chờ mật khẩu sudo trên Linux
Đối với bất kỳ thay đổi nào liên quan đến sudo, chẳng hạn như cấp đặc quyền sudo, thêm hoặc thiết lập quy tắc tùy chỉnh, v.v., bạn cần chỉnh sửa /etc/sudoers tập tin. Tuy nhiên, không nên chỉnh sửa trực tiếp tệp này theo cách thủ công bằng bất kỳ trình soạn thảo văn bản nào. Thay vào đó, hãy sử dụng lệnh sau để chỉnh sửa tệp:
sudo visudo
Lệnh này sẽ mở /etc/sudoers tập tin trong một trình soạn thảo văn bản để chỉnh sửa.
Để thay đổi thời gian chờ mật khẩu sudo mặc định (và làm cho nó dài hơn hoặc ngắn hơn), hãy thêm dòng sau vào cuối tệp và thay đổi giá trị của nó thành bất kỳ thời gian nào (tính bằng phút) mà bạn muốn đợi trước khi hết thời gian chờ.
Defaults timestamp_timeout=x
Giả sử bạn muốn rút ngắn thời gian chờ mật khẩu sudo xuống còn ba phút, vì vậy bạn sẽ thêm:
Defaults timestamp_timeout=3
Lưu ý rằng thuật ngữ Mặc định trong lệnh trên đề cập đến cài đặt toàn hệ thống. Để chỉ áp dụng cấu hình cho một người dùng cụ thể, hãy sử dụng lệnh sau:
Defaults:username timestamp_timeout=x
Luôn nhắc mật khẩu sudo
Để luôn nhắc nhập mật khẩu bất cứ khi nào lệnh sudo chạy, hãy thay đổi giá trị của dấu thời gian_thời gian chờ biến thành 0:
Defaults timestamp_timeout=0
Hãy nhớ rằng, bạn chỉ có thể thực hiện thay đổi này với tư cách là siêu người dùng. Là người dùng chuẩn, bạn có thể thực hiện việc này bằng cách sử dụng lệnh sau:
sudo -k
Lệnh này không yêu cầu mật khẩu sudo. Ngoài ra, nó sẽ khiến sudo nhắc nhập mật khẩu vào lần tiếp theo bạn chạy nó. Tuy nhiên, hãy nhớ rằng nó sẽ không phải là một sự thay đổi vĩnh viễn. Bạn có thể gọi lệnh này bất cứ khi nào bạn muốn sudo nhắc nhập mật khẩu.
Nhắc mật khẩu quản trị viên một lần cho mỗi phiên cuối
Bạn cũng có thể tạo lời nhắc sudo cho mật khẩu một lần cho mỗi phiên cuối. Chẳng hạn, nếu bạn chỉ muốn nhập mật khẩu sudo một lần mỗi phiên, hãy thêm dòng sau vào /etc/sudoers tập tin:
Defaults timestamp_timeout = -1
Bây giờ dấu thời gian sẽ không hết hạn cho đến khi bạn đóng thiết bị đầu cuối. Điều này có nghĩa là sau khi mở terminal, bạn sẽ chỉ phải nhập mật khẩu một lần khi chạy lệnh sudo đầu tiên.
Một cách khác để làm điều này là mở shell với quyền root bằng lệnh sau:
sudo bash
Lệnh sau sẽ yêu cầu mật khẩu sudo một lần và sau đó bạn có thể chạy tất cả các lệnh tiếp theo mà không cần bất kỳ mật khẩu nào.
Nhắc mật khẩu quản trị viên một lần cho mỗi lần khởi động hệ thống
Để tạo Sudo Nhắc mật khẩu một lần cho mỗi lần khởi động hệ thống, hãy thêm các mục sau vào tệp /etc/sudoers tập tin:
Defaults !tty_tickets
Defaults timestamp_timeout = -1
Trong lệnh trên, !tty_tickets sẽ kích hoạt dấu thời gian duy nhất cho tất cả các phiên cuối, do đó bạn chỉ cần nhập mật khẩu sudo một lần bất kể bạn mở bao nhiêu thiết bị đầu cuối. Các dấu thời gian_thời gian chờ = -1 sẽ đặt mật khẩu sudo không bao giờ hết hạn cho đến khi hệ thống khởi động lại.
Bạn có thể khởi động lại máy Linux của mình để kiểm tra xem các thay đổi đã được lưu chưa.
Tinh chỉnh Hành vi hết thời gian sudo trên Linux
Giờ đây, bạn có thể dễ dàng thay đổi hành vi hết thời gian chờ sudo và điều chỉnh khi nó nhắc bạn nhập mật khẩu. Lưu ý rằng bạn cũng có thể sử dụng sudo mà không cần phải nhập mật khẩu. Tuy nhiên, bạn chỉ nên sử dụng tùy chọn này nếu bạn là người dùng duy nhất có quyền truy cập vào hệ thống; nếu không, nó có thể là một rủi ro bảo mật lớn.