Tôi có một cách tiếp cận thậm chí còn hạn chế hơn để cấp quyền root trên máy chủ của mình, điều này có thể thú vị cho những người hoang tưởng như tôi. Hãy cẩn thận những gì bạn làm và theo thứ tự, nếu không bạn có thể kết thúc với một hệ thống mà bạn không thể truy cập root.
- Tạo một nhóm cụ thể
sugroup
, các thành viên sẽ được phép trở thành root và chỉ cho phép xác thực khóa cho nhóm này bằng cách đặt các dòng sau vào cuối sshd_confid:
Match Group sugroup
PasswordAuthentication no
- Đặt lệnh
auth required pam_wheel.so group=sugroup
vào /etc/pam.d/su
. Nó có thể đã ở đó và bạn chỉ cần bỏ qua nó. Điều này từ chối quyền truy cập root cho tất cả người dùng không phải là thành viên của sugroup
- Chọn một mật khẩu root mạnh :)
- Kiểm tra xem phương thức xác thực mới của bạn có hoạt động không và chỉ khi:
- Từ chối đăng nhập root trực tiếp qua ssh bằng cách sử dụng
PermitRootLogin no
trong /etc/ssh/sshd_config
.
Sử dụng cấu hình này, cần phải sử dụng xác thực khóa và mật khẩu để trở thành root. Tôi đã cấu hình máy chủ của mình như thế này, vì tôi thích không có quyền truy cập root trực tiếp qua ssh, bất kể phương thức xác thực.
service ssh restart
máy chủ và sau đó trên máy khách tôi đã thử kết nối mà không có khóa của mìnhssh -o PreferredAuthentications=password -o PubkeyAuthentication=no root@host
và thực sự không thể đăng nhập bằng mật khẩu nhưng có thể bằng khóa cho người dùng root.