Bạn có thể sử dụng đầy đủ các biểu thức chính quy trong của bạn ssh_config
.
Các tài liệu liên quan là IMO rất khó đọc và hiểu. Tôi chỉ hiểu điều đó vì tôi có hơn 13 năm kinh nghiệm Linux và hơn 8 năm sử dụng ssh
. Vì vậy, đây là tóm tắt của tôi về các tài liệu:
man ssh_config
mô tả một tính năng được gọi là Match
- sau đó, có một tính năng được gọi là
exec
cho phép bạn sử dụng lệnh shell tùy ý để xác định kết quả khớp
- chuyển các tham số đầu vào cho lệnh shell tùy ý là có thể và được mô tả trong phần có nhãn
TOKENS
Trong trường hợp của tôi, tôi đã sử dụng trong~/.ssh/config
:
Match exec "echo %h | grep -q 'NAME[0-9]\+$'"
User USER
IdentityFile /path/to/identity/file
Hostname %h.fully.qualified.domain.name
Kiểm tra phải được thực hiện với một cái gì đó khó khăn như thế này. Và để làm bài kiểm tra đó bạn gọi ssh -vvv HOSTNAME
. Điều này sẽ hiển thị chính xác những gì đang xảy ra, và liệu mới của bạn Match
được thực hiện chính xác.
man ssh_config
.