SSH 구성 - 옵션 - 일부를 제거하고 다른 일부를 추가하시겠습니까?

SSH 구성 - 옵션 - 일부를 제거하고 다른 일부를 추가하시겠습니까?

SSH 구성 파일은 위에서 아래로 구문 분석되며 첫 번째 유효한 일치에 대해 나열된 옵션을 사용하고 해당 옵션이 이미 표시된 경우 후속 유효한 일치의 옵션을 무시한다는 것을 알고 있습니다. 몇 가지 다른 형식 변형을 시도했지만 노력을 통해 구문/형식이 마음에 들지 않거나 동일한 호스트에서 두 번 나타나는 옵션을 무시하는 것 같습니다.

나는 이 버전을 사용하고 있습니다:

ssh -V
OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2

임의의 예의 경우 KexAlgorithms 옵션은 명시적 나열 또는 기본 세트에서 추가 및 제거를 지원합니다.

사용 가능한 KEX(키 교환) 알고리즘을 지정합니다. 여러 알고리즘은 쉼표로 구분해야 합니다. 지정된 목록이 "+" 문자로 시작하는 경우 지정된 메서드는 대체하는 대신 기본 세트에 추가됩니다. 지정된 목록이 "-" 문자로 시작하는 경우 지정된 메서드(와일드카드 포함)는 기본 세트에서 대체되지 않고 제거됩니다. 지정된 목록이 "^" 문자로 시작하는 경우 지정된 메서드는 기본 세트의 시작 부분에 배치됩니다.

https://man7.org/linux/man-pages/man5/ssh_config.5.html

기본 설정을 다음으로 변경하려면:

  • 제거됨: diffie-hellman-group-exchange-sha256 및 curve25519-sha256
  • 추가됨: diffie-hellman-group-exchange-sha1, diffie-hellman-group1-sha1

구문을 아는 사람이 있습니까? 아니면 모든 옵션에 대한 완전히 명시적인 목록을 직접 작성하지 않고도 추가하고 제거할 수 있는 경우가 있습니까?

KexAlgorithms 다음과 같은 줄에서 + 및 - 목록 수정자를 사용해 보았으나 가비지로 보고되었습니다. 이를 별도의 목록(아래 참조)으로 분할하면 제대로 수행되지만 상위 KexAlgorithms 옵션만 실행되고 둘 다 실행되는 것은 아닌 것 같습니다.

Host myHost
  HostName myHost.myDomain.com
  KexAlgorithms -"diffie-hellman-group-exchange-sha256,curve25519-sha256"
  KexAlgorithms +"diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1"

몇 가지 안전한 옵션을 제거하고 안전하지 않은 옵션을 추가한다는 것을 알고 있으므로 따로 말씀드릴 필요가 없습니다. :-)

감사해요!

고쳐 쓰다:필요에 따라 출력 ssh -Q kex:

diffie-hellman-group1-sha1
diffie-hellman-group14-sha1
diffie-hellman-group14-sha256
diffie-hellman-group16-sha512
diffie-hellman-group18-sha512
diffie-hellman-group-exchange-sha1
diffie-hellman-group-exchange-sha256
ecdh-sha2-nistp256
ecdh-sha2-nistp384
ecdh-sha2-nistp521
curve25519-sha256
[email protected]
[email protected]

답변1

링크한 맨페이지에서:

각 매개변수에서 처음 얻은 값을 사용하므로 파일 시작 부분에 더 많은 호스트별 선언을 제공하고 끝 부분에 일반 기본값을 제공해야 합니다.

KexAlgorithms, 두 개가 있는 경우 첫 번째 항목만 고려됩니다.

사용되는 알고리즘 중 KexAlgorithms알고리즘을 설정, 삭제, 추가할 수 있으나 조합할 수는 없습니다.

따라서 자신만의 개인화된 목록을 가질 수 있지만 이를 명시적으로 설정해야 합니다.

작동하는지 확인하려면 ssh -vv Myhost긴 작업 대신 다음을 수행할 수 있습니다.

 ssh -G myHost | grep -i kex

관련 정보