Skip to content
VDS · 머신 접속

~/.ssh/config 파일: 긴 명령어 대신 짧은 이름

머신을 한 번만 기술하고 두 단어 명령으로 접속하는 방법, 키와 사용자, 포트를 설정하고 연결을 유지하는 방법을 알아봐요.

업데이트 2026년 8월 23일

ssh -i ~/.ssh/id_ed25519 -p 22 root@203.0.113.10 대신 ssh vds를 입력할 수 있어요. 내 컴퓨터에서 한 번만 설정하면 돼요.

파일 위치

macOS와 Linux에서는 ~/.ssh/config예요. Windows에서는 C:\Users\<you>\.ssh\config(Windows Terminal에서는 동일하게 ~/.ssh/config 경로)예요. 파일이 없을 수도 있으니 만들어 주세요:

mkdir -p ~/.ssh
nano ~/.ssh/config
chmod 600 ~/.ssh/config

권한이 중요해요. 파일을 모든 사용자가 읽을 수 있으면 클라이언트가 읽기를 거부할 수 있어요.

최소 설정

Host vds
    HostName 203.0.113.10
    User root
    IdentityFile ~/.ssh/id_ed25519

이제 이렇게 작동해요:

ssh vds

다른 도구들도 이 짧은 이름을 인식해요:

scp dump.sql vds:/root/
sftp vds
rsync -avz ./site/ vds:/var/www/site/

파일 복사는 scp와 rsync 및 SFTP를 참고하세요.

유용한 매개변수

Host vds
    HostName 203.0.113.10
    User artem
    Port 22
    IdentityFile ~/.ssh/id_ed25519
    IdentitiesOnly yes
    ServerAliveInterval 30
    ServerAliveCountMax 3
매개변수필요한 이유
IdentitiesOnly yes클라이언트가 지정한 키만 제시해요. 키가 많고 서버가 시도 횟수를 끊을 때 유용해요
ServerAliveInterval30초마다 패킷을 보내 비활성 상태로 연결이 끊기지 않게 해요
PortSSH를 비표준 포트로 옮긴 경우
User이 호스트의 기본 사용자 이름

여러 머신

Host vds-web
    HostName 203.0.113.10
    User root
    IdentityFile ~/.ssh/id_ed25519

Host vds-db
    HostName 203.0.113.20
    User artem
    IdentityFile ~/.ssh/id_ed25519

Host *
    ServerAliveInterval 30

Host * 블록은 모든 항목에 공통 설정을 적용해요. 순서가 중요해요. 각 매개변수는 첫 번째로 일치하는 항목이 우선하므로 공통 블록은 맨 아래에 두세요.

흔한 실수

  • 탭 들여쓰기와 끝의 공백 — 일부 클라이언트가 문제를 제기해요. 공백 네 칸을 사용하세요.
  • Windows에서 백슬래시가 들어간 키 경로 — ~/.ssh/id_ed25519라고 쓰세요.
  • HostName 누락 — 클라이언트가 vds라는 호스트에 연결을 시도하고 찾지 못해요.
  • 파일 권한 644 — 600으로 설정하세요.

특정 호스트에 정확히 무엇이 적용되는지 확인하려면:

ssh -G vds
ssh -v vds

첫 번째 명령은 최종 매개변수를 출력하고, 두 번째는 연결 진행 상황을 보여줘요. 어떤 키가 제시되었는지 알 수 있어요.

config 파일은 내 쪽만 설명해요. 머신이 무엇을 허용하는지는 그 머신의 /etc/ssh/sshd_config가 결정해요. SSH 키를 참고하세요.