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