티스토리 뷰
원격 리눅스 서버에 암호 입력 없이 로그인 할 수 있습니다.
간단한 3단계 절차를 진행하면 되는데
ssky-keygen 사용과 이 글에서 설명하고 있는 ssh-copy-id 입니다.
ssh-keygen 은 공용과 개인 키들을 생성합니다.
ssh-copy-id 는 로컬호스트의 공용 키를 원격 호스트의 authorized_keys 파일에 복사합니다. ssh-copy-id 또한 알맞은 권한을 원격 호스트의 홈, ~/.ssh, ~/.ssh/authorized_keys에 부여합니다.
이 글은 또한 ssh-copy-id 사용과 ssh-copy-id와 ssh-agent를 함께 사용하는 방법의 3가지 소소한 귀찮음을 설명합니다.
단계 1: localhost 에서 ssh-key-gen 사용하여 public 과 private key들 생성
jsmith@local-host$ [주: 로컬호스트]
jsmith@local-host$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/jsmith/.ssh/id_rsa):[엔터키]
Enter passphrase (empty for no passphrase): [엔터키]
Enter same passphrase again: [엔터키]
Your identification has been saved in /home/jsmith/.ssh/id_rsa.
Your public key has been saved in /home/jsmith/.ssh/id_rsa.pub.
The key fingerprint is:
33:b3:fe:af:95:95:18:11:31:d5:de:96:2f:f2:35:f9 jsmith@local-host
단계 2: public key 를 원격 호스트에 ssh-copy-id 사용하여 복사
jsmith@local-host$ ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host
jsmith@remote-host's password:
"ssh 'remote-host’”로 서버에 로그인 시도하고 입장:
.ssh/authorized_keys
기대하지 않았던 키를 추가했는지 확인하십시오.
주: ssh-copy-id 는 키를 원격호스트의 .ssh/authorized_key 파일 내용에 추가합니다.
단계 3: 암호 입력 없이 원격 호스트에 로그인
jsmith@local-host$ ssh remote-host
Last login: Sun Nov 16 17:22:33 2008 from 192.168.1.2
[주: SSH는 암호를 묻지 않았습니다.]
jsmith@remote-host$ [주: 원격 호스트임]
위 3단계의 간단한 과정은 대개의 사례에서 작업을 마쳐야 합니다.
또한 미리 상세에서 openSSH 에서 openSSH로 암호 입력 없이 SSH와 SCP 수행에 대해 논의했었습니다.
SSH2 사용중이라면, 이전에 SSH와 SCP 수행에 대해 암호 없이 SSH2 에서 SSH2로, OpenSSH 에서 SSH2로, SSH2 에서 OpenSSH로 들을 논의했었습니다.
ssh-add/ssh-agent 에 따른 ssh-copy-id 사용
-i 옵션에 대해 값이 전달되지 않았을 때와 ~/.ssh/identity.pub 가 불가할 때면, ssh-copy-id 는 다음의 오류 메세지를 보여줄 것입니다.
jsmith@local-host$ ssh-copy-id -i remote-host
/usr/bin/ssh-copy-id: ERROR: No identities found
ssh-add를 사용하여 ssh-agent에 키를로드 한 경우 ssh-copy-id는 ssh-agent에서 키를 가져 와서 원격 호스트에 복사합니다. 즉, 옵션 -i를 ssh-copy-id에 전달하지 않으면 ssh-add -L 명령에 의해 제공되는 키를 원격 호스트에 복사합니다.
jsmith@local-host$ ssh-agent $SHELL
jsmith@local-host$ ssh-add -L
에이전트는 신원이 없습니다.
jsmith@local-host$ ssh-add
Identity added: /home/jsmith/.ssh/id_rsa (/home/jsmith/.ssh/id_rsa)
jsmith@local-host$ ssh-add -L
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAsJIEILxftj8aSxMa3d8t6JvM79DyBV
aHrtPhTYpq7kIEMUNzApnyxsHpH1tQ/Ow== /home/jsmith/.ssh/id_rsa
jsmith@local-host$ ssh-copy-id -i remote-host
jsmith@remote-host's password:
"ssh 'remote-host'"를 사용하여 시스템에 로그인 한 다음 체크인하십시오:
.ssh/authorized_keys
예상치 못한 추가 키를 추가하지 않았는지 확인하십시오.
[주: ssh-add -L로 나타나는 키를 추가합니다]
3가지 작은 ssh-copy-id 의 귀찮은 사항들
다음은 ssh-copy-id의 사소한 불편함입니다.
1. 기본 공개 키: ssh-copy-id는 ~ / .ssh / identity.pub를 기본 공개 키 파일로 사용합니다 (즉, 값이 옵션 -i에 전달되지 않은 경우). 대신 id_dsa.pub, id_rsa.pub 또는 identity.pub를 기본 키로 사용하시기 바랍니다. 즉, 이들 중 하나가 존재하면 원격 호스트에 복사해야합니다. 두 개 또는 세 개가 있으면 기본값으로 identity.pub를 복사해야합니다.
2. 에이전트에 신원 없음: ssh-agent 가 실행중일때 ssh-add -L 는 “The agent has no identities”를 반환하며 (즉, ssh-agent에 추가된 키가 없을경우), ssh-copy-id는 계속 “The agent has no identities” 메세지를 원격호스트의 authorized_keys entry에 복사할 것입니다.
3. authorized_keys에 중복 등록: 개인적으로 ssh-copy-id 가 원격호스트의 authorized_keys 중복 항목을 검증해주기를 바랍니다. 만약 ssh-copy-id를 로컬호스트에서 여러번 실행한다면, 원격호스트의 authorized_keys 파일에 복제 검사도 하지 않고 같은 키를 계속 추가할 것입니다. 중복 항목을 지니고도 모든것은 기대한대로 작동합니다. 그러나, authorized_keys 파일을 어지럽히지 않고싶습니다.
필자: RAMESH NATARAJAN, 작성: 2008년 11월 20일
'OS-서버-서비스 > Linux' 카테고리의 다른 글
CentOS 6.x 에 image cache 및 리사이징 서버 imageproxy 설치 (0) | 2018.03.10 |
---|---|
CentOS 2대 keepalived 로 Failover 구성 (0) | 2017.03.07 |
ubuntu 설치된 패키지 목록 검색 (0) | 2016.11.11 |
CentOS 6 최신 패키지 저장소 EPEL, REMI 셋팅 (0) | 2016.04.07 |
CentOS 6 에 Nginx 1.9.x mainline 버젼 설치 (0) | 2016.04.06 |
- Total
- Today
- Yesterday
- Make Use Of
- How to geek
- 인터넷 통계정보 검색시스템
- 트위터 공유 정보모음
- 웹표준KR
- 치우의 컴맹탈출구
- Dev. Cheat Sheets
- w3schools
- Dev. 조각들
- ASP Ajax Library
- CSS Tricks
- WebResourcesDepot
- jQuery Selectors Tester
- DeveloperSnippets
- Smashing Magazine
- Nettuts+
- devListing
- 웹 리소스 사이트(한)
- Mobile tuts+
- Dream In Code
- Developer Tutorials
- CSS3 Previews
- 자북
- 안드로이드 사이드
- Code Visually
- Code School
- SQLer.com
- 무료 파워포인트 템플릿
- iconPot
- Free PowerPoint Templates
- Design Bombs
- Web Designer Wall
- 1st Webdesigner
- Vandelay Design
- 무료 벡터 이미지 사이트들
- Tripwire Magazine
- Web TrendSet
- WebMonkey
- 윤춘근 프리젠테이션 디자이너 블로그
- cz.cc 무료 DNS
- [웹하드] MediaFire
- [웹하드] DivShare
- 한컴 인터넷 오피스
- Docker
- javascript
- ASP
- sencha touch
- Android
- git
- 워드프레스
- laravel
- JSON
- Wordpress
- nginx
- centos
- IOS
- Chrome
- Linux
- iphone
- 한글
- Debug
- CSS
- 안드로이드
- iis
- nodejs
- Mac
- mssql
- PHP
- JQuery
- API
- Prototype
- classic asp
- IE
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |