Intro
리눅스 서버에서 원격으로 접근하기위해서는 ssh를 사용하는데 이때 유저, host, key 정보를 매번 입력하지 않아도 ~/.ssh/config에 설정하여 짧은 명령어로 해당 서버에 접근할 수 있다.
~/.ssh/config 설정하기
리눅스 서버에 ssh를 통해서 해당 서버 OS에 접속하기 위해 다음과 같은 명령어를 사용하게 된다
ssh kimdragon@10.0.0.1
이 경우 매번 user명과 ip정보를 입력해야해서 번거로울 수 있는데 ~/.ssh/config
에 설정을 하면 좀 더 짧은 명령어로 해당 서버에 접근할 수 있다.
Host dev
HostName 10.0.0.1
User kimdragon
만약 config 파일이 없으면 생성하면되고 아래와 같이 간단하게 Host 로 지정해놓은 이름으로 접근 할 수가 있다
ssh dev
위 경우 해당 유저의 비밀번호를 매번 입력해야하는 번거로움이 발생할 수 있는데, 이 경우 비밀번호가 아닌 key로 접근 할수가 있고 해당 key를 설정하여 비밀번호 입력없이 접속 할 수 있다
일반적으로 public key인 pem키를 사용해서 아래와 같이 접근 하게되는데, 매번 -i 옵션으로 키 경로를 지정해야 한다.
ssh kimdragon@10.0.0.1 -i ~/key/dev.pem
이 경우 아래와 같이 ~/.ssh/config
에 key도 같이 설정해보자
Host dev
HostName 10.0.0.1
User kimdragon
PreferredAuthentications publickey
IdentityFile ~/key/dev.pem
그러면 ssh dev
명령어로 쉽게 서버에 접속이 가능하다.
하나의 서버에 여러키로 접근 할 경우 서버에서 ~/.ssh/config 설정
만약 접속하려는 서버에 여러키로 접근이 필요한경우가 있을 수 있는데, 예를들어 jenkins와 같은 배포 서버에 각 부서마다 사용하는 인증키가 다를 경우 jenkins 서버에 아래와 같이 여러 private key 경로를 ~/.ssh/config
에 설정할 수 있다
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_rsa_team1
IdentityFile ~/.ssh/id_rsa_team2
IdentityFile ~/.ssh/id_rsa_team3
'IT > Linux' 카테고리의 다른 글
[Linux] eBPF(Extended Berkeley Packet Filter)란? (0) | 2022.08.26 |
---|---|
[Linux] iptables 동작 방식 (0) | 2022.08.24 |
[Linux] yum repository 설정하기 (0) | 2022.02.28 |
[리눅스] date 명령어 사용하기 (format 활용법 yyyy-mm-dd) (0) | 2022.02.16 |
[리눅스] 다중명령어 (더블엔퍼센트&&, 더블버티컬바||) (0) | 2022.02.16 |