![SSH 구성: 중복 설정을 중지하거나 와일드카드 호스트에 넣는 방법은 무엇입니까?](https://linux55.com/image/227481/SSH%20%EA%B5%AC%EC%84%B1%3A%20%EC%A4%91%EB%B3%B5%20%EC%84%A4%EC%A0%95%EC%9D%84%20%EC%A4%91%EC%A7%80%ED%95%98%EA%B1%B0%EB%82%98%20%EC%99%80%EC%9D%BC%EB%93%9C%EC%B9%B4%EB%93%9C%20%ED%98%B8%EC%8A%A4%ED%8A%B8%EC%97%90%20%EB%84%A3%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
remoteCommand
가능하다면 와일드카드 호스트에 추가하고 싶은 중복 설정이 있습니다 .
다음은 잘린 부분입니다.
host container-server
host container-1
remoteCommand docker exec -it containerHostname-01 bash
host container-2
remoteCommand docker exec -it containerHostname-02 bash
host container-2
remoteCommand docker exec -it containerHostname-02 bash
host *
user <user>
requestTTY yes
identityFile ~/.ssh/key
strictHostkeyChecking no
userKnownHostsFile /dev/null
preferredAuthentications publicKey
hostname <hostname of container server>
모든 값이 정수로 다르기 때문에 containerHostname-0<int>
이건 불가능하다고 가정하고 며칠동안 연구해봐도 아무것도 돌려받지 못하는데 가능할까요?
답변1
짐작할 수 있듯이 이 ssh
구성은 변수나 루프를 허용하지 않습니다.
따라서 내가 아는 한 와일드카드를 사용하여 다른 번호의 호스트에 대해 다른 명령을 생성할 수 없습니다.
대신 셸을 사용하여 bash
여기에서 선택한 구성 파일을 생성할 수 있습니다.
for i in {1..10}; do
printf '%s\n' "host container-${i}\n\tremoteCommand docker exec -it containerHostname-${i} bash" >> file
done