Tôi đã thiết lập .ssh / ủy quyền Tôi cố gắng thực hiện một lệnh sudo, một cái gì đó đơn giản như:
$ sudo cd /root
nó sẽ nhắc tôi nhập mật khẩu mà tôi nhập, nhưng nó không hoạt động (tôi đang sử dụng mật khẩu khóa riêng tôi đã đặt)
Ngoài ra, tôi đã vô hiệu hóa mật khẩu người dùng bằng cách sử dụng
$ passwd -l user
Tôi đang thiếu gì?
Đâu đó những nhận xét ban đầu của tôi đang bị hiểu lầm ...
Tôi đang cố gắng làm cứng hệ thống của mình ... mục tiêu cuối cùng là sử dụng khóa pub / private để đăng nhập so với xác thực mật khẩu đơn giản. Tôi đã tìm ra cách thiết lập tất cả thông qua tệp ủy quyền.
Ngoài ra, cuối cùng tôi sẽ ngăn đăng nhập máy chủ thông qua tài khoản root. Nhưng trước khi tôi làm điều đó, tôi cần sudo để làm việc cho người dùng thứ hai (người dùng mà tôi sẽ đăng nhập vào hệ thống mọi lúc).
Đối với người dùng thứ hai này, tôi muốn ngăn đăng nhập mật khẩu thông thường và chỉ bắt buộc đăng nhập khóa pub / private, nếu tôi không khóa người dùng thông qua "người dùng passwd -l ... thì nếu tôi không sử dụng khóa, tôi vẫn có thể vào máy chủ bằng mật khẩu thông thường
Nhưng quan trọng hơn là tôi cần để sudo hoạt động với thiết lập khóa pub / private với người dùng bị vô hiệu hóa mật khẩu.
Chỉnh sửa: OK, tôi nghĩ rằng tôi đã có nó (giải pháp):
1) Tôi đã điều chỉnh / etc / ssh / sshd_config và đặt PasswordAuthentication no
Điều này sẽ ngăn đăng nhập mật khẩu ssh (đảm bảo có thiết lập khóa công khai / riêng tư trước khi thực hiện việc này
2) Tôi đã điều chỉnh danh sách sudoers visudo
và thêm
root ALL=(ALL) ALL
dimas ALL=(ALL) NOPASSWD: ALL
3) root là tài khoản người dùng duy nhất sẽ có mật khẩu, tôi đang thử nghiệm với hai tài khoản người dùng "dimas" và "sherry" không có mật khẩu được đặt (mật khẩu trống, passwd -d user
)
Những điều trên về cơ bản ngăn chặn mọi người đăng nhập vào hệ thống bằng mật khẩu (khóa công khai / riêng tư phải được thiết lập).
Ngoài ra, người dùng trong danh sách sudoers có khả năng quản trị viên. Họ cũng có thể su
đến các tài khoản khác nhau. Vì vậy, về cơ bản "dimas" có thể sudo su sherry
, tuy nhiên "dimas KHÔNG thể làm được su sherry
. Tương tự như vậy, bất kỳ người dùng nào KHÔNG có trong danh sách sudoers KHÔNG thể làm su user
hoặc sudo su user
.
CHÚ THÍCH Các công trình trên nhưng được coi là bảo mật kém. Bất kỳ tập lệnh nào có thể truy cập mã dưới dạng người dùng "dimas" hoặc "sherry" sẽ có thể thực thi sudo để có quyền truy cập root. Một lỗi trong ssh cho phép người dùng từ xa đăng nhập bất chấp cài đặt, thực thi mã từ xa trong một cái gì đó như Firefox hoặc bất kỳ lỗ hổng nào khác cho phép mã không mong muốn chạy vì giờ đây người dùng sẽ có thể chạy bằng root. Sudo phải luôn yêu cầu mật khẩu hoặc bạn cũng có thể đăng nhập bằng root thay vì một số người dùng khác.