우리 연구실의 계정은 모두 NFS에 마운트되어 있으며 서브넷의 모든 시스템에서 액세스할 수 있습니다. 따라서 서브넷의 모든 컴퓨터에 효과적으로 SSH를 통해 작업을 계속할 수 있습니다. 문제는 사람이 실수로 기계를 끄는 등의 이유로 기계가 무작위로 시작되거나 종료된다는 것입니다. 실행 중인 머신을 찾기 위해 nmap을 사용하여 서브넷을 스캔하고 머신을 선택합니다.
위의 문제로 인해 SSH 구성 항목에 고정된 호스트 이름 항목을 넣을 수 없습니다. 그렇다면 호스트 이름을 제외한 다른 모든 매개변수를 포함하는 ssh 구성 항목을 어떻게 확보하여 ssh를 실행할 때 ssh 구성 항목과 호스트 이름을 모두 제공할 수 있습니까?
답변1
Host 지시문은 여러 호스트를 사용할 수 있습니다. 예를 들면 다음과 같습니다.
Host *.domain.tld specific-host.tld 10.*.*.*
User foo
Port 2222
이렇게 하면 스타 스키마, 명시적 호스트 specific-host.tld
또는 첫 번째 IPv4 바이트가 10인 모든 호스트(IP 번호를 입력한다고 가정)와 일치하는 모든 호스트에 대한 사용자 및 포트가 설정됩니다. 그런 다음 Host
/ HostName
쌍을 추가하여 특정 호스트에 대한 별명을 제공 할 수 있습니다 .
답변2
비슷한 문제가 있었고 호스트가 nc를 사용하고 있는지 여부를 확인하기 위해 SSH 주위에 래퍼를 작성했습니다.
https://github.com/cws-khuntly/dotfiles/blob/master/functions.d/F09-network
verifyServerAvailability를 참조하세요.