별명 서버 이름을 설정하는 방법


15

랩탑 (Linux)에서 별칭 서버 이름을 설정하고 싶습니다. 나는 할 수 없습니다 사용하고자하는 /etc/hosts/파일을 원격 서버의 IP 주소가 변경 이후 . 내가 원하는 이유는 서버 이름이 27 자이기 때문입니다. 나는 이것을하고 싶다 :

ssh server

대신에:

ssh server.subdomain.domain.com

사용하는 여러 하위 도메인이 있습니다. 이것을 어떻게 설정합니까?

추신 : 나는 다른 유사한 답변이 IP 주소가 변경된다는 사실을 다루지 않기 때문에 이것을 속이는 것으로 생각하지 않습니다.


~/.ssh/config그리고 /etc/resolve.cnf아래 모두 훌륭한 답변입니다.
Jess

답변:


20

파일 사용 ~/.ssh/config

컨텐츠 예 :

Host jane
HostName long.server.name
User root

다음 ssh jane대신에 사용할 수 있습니다ssh root@long.server.name

IP 주소가 변경되고이 서버의 revDNS를 모르는 host 1.0.0.1경우 1.0.0.1이 IP 주소 인 명령을 사용할 수 있습니다. 그러면 구성 할 수있는 현재 revDNS 이름이 제공됩니다.

ip 변경으로 호스트 이름 (역 DNS)이 변경되거나 서버가 NAT 뒤에있는 경우 Dynamic Dns (dyndns.org) 및 / 또는 포트 전달을 사용할 수 있습니다.


7

"ssh server.subdomain.domain.com"대신 더 짧은 "ssh 서버"를 사용하려면 /etc/resolv.conf의 검색 필드에 "subdomain.domain.com"을 추가하면됩니다. 검색 필드가 없으면 새로 만들 수 있습니다.

예를 들어-/etc/resolv.conf가 다음과 같다고 가정합니다.

domain1.com 검색 domain2.com domain3.com
네임 서버 1.2.3.4
네임 서버 5.6.7.8

검색 라인을 다음과 같이 수정하십시오.

domain1.com domain2.com domain3.com subdomain.domain.com 검색

subdomain.domain.com을 먼저 검색하려면이 목록의 맨 앞에 놓을 수 있습니다.


1
나는 당신의 대답을 좋아합니다. 여러 응용 프로그램에서 서버의 정렬 이름을 사용할 수 있기 때문입니다. 여전히, 각 연결 시도마다 더 많은 DNS 트래픽을 생성 할 수 있다고 생각하지만 이것에 내기하지는 않을 것입니다.
mnmnc

1
많은 최신 운영 체제는 dns 쿼리에 대한 응답을 로컬로 캐시 할 수 있습니다. 레코드를 처음 쿼리 할 때 응답은 dns에서 나오지만 레코드의 ttl이 만료 될 때까지 후속 쿼리는 캐시에서 응답합니다. "ipconfig / displaydns"및 "sudo killall -INFO mDNSResponder"를 사용하여 창에서 캐시 내용을보고 mac osx에서 /var/log/system.log의 내용을 볼 수 있습니다.
123456

따라서 항목이 캐시되고 만료되지 않은지 추측합니다.이 시점에서 대상의 IP가 변경되면 연결 시간이 초과됩니다. 내가 빠진 것이 아니라면?
mnmnc


1

.bashrc또는에 별칭을 추가 할 수 있습니다 .zshrc.

alias server1='ssh server1'

~/.ssh/config예를 들어 server1이 추가 된 경우 :

Host server1
Hostname address
User username-on-this-server
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.