Có thể có sshd chỉ chấp nhận mật khẩu trên một số cổng nhất định?


24

Tôi biết có thể sshdnghe trên nhiều cổng bằng cách sử dụng nhiều lệnh Port. Tuy nhiên, có thể điều chỉnh độc lập các cài đặt trên mỗi cổng không? Cụ thể, có thể có một cổng cho phép xác thực mật khẩu, nhưng một cổng khác không cho phép?


1
Nhân tiện: lý do tôi làm điều này là vì tôi muốn cho phép mật khẩu trên mạng LAN của mình, nhưng không phải từ mạng LAN. Tường lửa WAN của tôi chỉ cho phép kết nối với cổng hạn chế hơn.
Laurence Gonsalves

1
Xem thêm hạn chế theo địa chỉ IP nếu bạn muốn sử dụng số cổng tiêu chuẩn.
ændrük

Câu trả lời:


32

Điều này có thể được thực hiện với Matchchỉ thị.

Trong /etc/sshd_config, khai báo nhiều cổng:

Port 22
Port 2222

Sau đó, ở phần cuối của tệp, thêm vào như sau:

Match LocalPort 2222
PasswordAuthentication no

Tất cả các cài đặt sẽ được chia sẻ giữa các cổng, ngoại trừ xác thực mật khẩu sẽ bị tắt trên cổng 2222.


+1 Rất thú vị
Carlos Campderrós

Quá tệ Matchkhông làm việc với AllowUsers. Đối với bất kỳ ai cần hạn chế người dùng cho một cổng cụ thể, bạn có thể bị mắc kẹt với việc chạy nhiều sshdphiên bản.
Bob

0

Một sshdquá trình duy nhất , tôi không tin như vậy, nhưng nó khá dễ dàng để thiết lập tệp cấu hình thứ hai và chạy hai trình sshdnghe, một trên các cổng mật khẩu và một trên các cổng không phải mật khẩu.


3
Tôi thấy rằng thực sự có một cách để làm điều này với một ví dụ duy nhất của sshd. Xem câu trả lời tôi đã đăng. Dù sao cũng cảm ơn bạn.
Laurence Gonsalves
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.