SSH Alias 설정하기

Windows에도 OpenSSH 클라이언트는 있지만 GUI 지원하는 PuTTY가 있으니 보통 그걸 더 많이 쓰긴 한다. 하지만 나는 아치 리눅스를 쓰기 때문에 GUI 같은 건 필요가 없다.

SSH 설정 파일 수정

설정 파일 경로는 ~/.ssh/config 에 있다. 없으면 하나 만들면 된다.

Host alias
  HostName IP_OR_DOMAIN
  Port PORT
  User USERNAME

이렇게 써넣고 저장하면 ssh alias 를 입력했을 때 자동적으로 지정한 호스트명:포트에 사용자명으로 접속이 된다. 혹시나 키 페어를 서버마다 각각 두고 관리한다면 다음과 같이 위치를 지정할 수도 있다.

Host alias
  HostName IP_OR_DOMAIN
  Port PORT
  User USERNAME
  IdentityFile ~/.ssh/id_rsa

Host alias2
  HostName IP_OR_DOMAIN_2
  Port PORT_2
  User USERNAME
  IdentityFile ~/.ssh/id_rsa_sub

만약 SSH를 통해 서버에 연결한 후, 해당 서버의 특정 포트에서 돌아가는 서비스를 로컬로 끌어와야 할 경우 (포트 포워딩) ssh -L 을 사용하는데, 이 또한 config에서 LocalForward 옵션으로 지정이 가능하다.

Host alias
  HostName IP_OR_DOMAIN
  Port PORT
  User USERNAME
  LocalForward 127.0.0.1:3306 127.0.0.1:5555

이렇게 하면 원격지 서버의 127.0.0.1:3306에서 호스팅되는 서비스를 로컬의 127.0.0.1:5555로 끌고 온다. 여러 포트를 끌어와야 하면 여러 번 적으면 된다.

같은 맥락으로 만약 특정 IP에서만 접속이 가능한 서비스에 연결하기 위해 또 다른 서버를 통해야 하는 경우 (로컬 → 경유지 서버 → 최종 목적지) RemoteForward 옵션을 지정해주면 된다.

Host alias
  HostName IP_OR_DOMAIN
  Port PORT
  User USERNAME
  RemoteForward 127.0.0.1:3306 private-relay.service.tld:3306 

이렇게 하면 로컬의 127.0.0.1:3306을 통해 경유지 서버를 거쳐, private-relay.service.tld:3306에서 호스팅되는 서비스에 접근할 수 있다.

guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x