나는 그것이 무엇을하는지 알지만 왜 그런지 모르겠다 . 어떤 공격을 방지합니까?
모든 종류의 인증 방법과 관련이 있습니까? (호스트 기반, 비밀번호, 공개 키, 키보드 대화 형 ...)
나는 그것이 무엇을하는지 알지만 왜 그런지 모르겠다 . 어떤 공격을 방지합니까?
모든 종류의 인증 방법과 관련이 있습니까? (호스트 기반, 비밀번호, 공개 키, 키보드 대화 형 ...)
답변:
이 UseDNS
옵션은 대부분 쓸모가 없습니다. 클라이언트 컴퓨터가 인터넷에있는 경우 역방향 DNS가 없거나 역방향 DNS가 앞으로 확인되지 않거나 DNS에서 "이 외에는 다른 정보를 제공하지 않을 가능성이 높습니다. 이미 IP 주소를 알려주는 ISP”를 참조하십시오.
일반적인 구성에서 DNS는 로깅에만 사용됩니다. 인증에 사용할 수 있지만 IgnoreRhosts no
에 지정된 경우에만 사용할 수 있습니다 sshd_config
. 이것은 당신이 "라는 사용자 말할 수 RSH, 사용 된 설치와의 호환성을 위해이다 bob
라는 컴퓨터에이 darkstar
로 로그인 할 수 있습니다 alice
(작성하여 자격 증명을 표시하지 않고"을 darkstar bob
에서 ~alice/.rhosts
). ssh 서버에 연결되어있을 수있는 모든 시스템을 신뢰하는 경우에만 안전합니다. 다시 말해, 이것은 안전한 방법으로 사용하기가 매우 드 very니다.
DNS 조회는 매우 특별한 상황을 제외하고 유용한 정보를 제공하지 않기 때문에 해제해야합니다. 내가 알 수있는 한, 기본적으로 켜져있는 유일한 이유는 소규모 환경에만 적용되지만 기술적으로 더 안전하다는 것입니다 (사용 가능성이 아닌 인증에 관심이있는 경우).
이 기능을 해제하는 또 다른 주장은 불필요한 기능은 모두 불필요한 보안 위험이라는 것 입니다.
UseDNS
을 사용하는 경우에도 호스트 이름 기반 호스트 인증 (예 : 매우 약한 인증) 을 사용하는 경우에는 유용하지 않습니다 .
UseDNS
는 매우 유용하고 중요합니다. MAC 주소에 할당 된 키 및 호스트 이름을 기준으로 서버를 기반으로 사용자를 인증합니다.
나는 이것에 관해 우분투에서 버그 보고서 (오래되었지만 여전히 최신)를 추가했습니다.
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/424371
기본값을 아니요로 변경하고 최신 문서를 추가하도록 제안했습니다.
# UseDNS - Determines whether IP Address to Hostname lookup and comparison is performed
# Default value is No which avoids login delays when the remote client's DNS cannot be resolved
# Value of No implies that the usage of "from=" in authorized_keys will not support DNS host names but only IP addresses.
# Value of Yes supports host names in "from=" for authorized_keys. Additionally if the remote client's IP address does not match the resolved DNS host name (or could not be reverse lookup resolved) then a warning is logged.
맨 페이지에서 sshd_config(5)
:
UseDNS Specifies whether sshd(8) should look up the remote host name and
check that the resolved host name for the remote IP address maps
back to the very same IP address. The default is “yes”.
이를 사용하면 적절한 (정방향 및 역방향) DNS없이 위치에서 액세스하여 로그에 경고를 생성합니다.
따라서 경고를 기록하지 않으려면 클라이언트의 정규화 된 원격 주소가 필요하다는 점을 제외하고는 어떠한 공격도 막을 수 없습니다. 이러한 경고는 해당 PTR 레코드가 의미가있는 경우에만 공격자를 추적하는 데 도움이 될 수 있습니다.
편집 : Andrey Voitenkov의 의견에 따라 업데이트되었습니다 .
from=
해당 승인 된 키 (사용 된 경우) 이전에 필드 의 값을 스푸핑 할 수없는 경우 인증 된 키가 손상된 경우 액세스를 방지 할 수 있습니다 .
CentOS 7 (7.1.1503)에 Red Hat Enterprise Linux 7에 추가하고 싶습니다 . 기본 설정 인 for 로 로그인 할 수 없었yes
습니다 UseDNS
. 주석 처리를 해제하고로 설정 한 후 no
로그인 할 수있었습니다. 따라서 DNS가 제대로 작동하지 않으면 서비스가 거부 될 수 있습니다. CentOS 6에서는 기본 설정 인 것처럼 보이 no
므로 ssh
작동하는 DNS가 없어도됩니다!
나는 실험이 차이가 나는 경우를 대비하여 실제 기계가 아닌 LXC 컨테이너에서 실험하고 있다고 덧붙이고 싶습니다!