차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| tech:ssh_자동_로그인 [2015/02/22 10:36] – [확인] V_L | tech:ssh_자동_로그인 [2019/08/20 20:25] (현재) – 219.240.210.166 | ||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| + | {{tag> | ||
| ====== SSH 자동 로그인 ====== | ====== SSH 자동 로그인 ====== | ||
| - | " | + | [[ssh|SSH]]로 |
| + | " | ||
| + | 이 과정을 | ||
| 공개키 암호화는 암호화하는 키와 복호화하는 키가 서로 다를 수 있는 암호화 방식이다. | 공개키 암호화는 암호화하는 키와 복호화하는 키가 서로 다를 수 있는 암호화 방식이다. | ||
| 줄 10: | 줄 13: | ||
| 다음과 같이 하면 된다 . | 다음과 같이 하면 된다 . | ||
| - | ==== 클라이언트==== | + | ===== 클라이언트===== |
| - | 클라이언트의 터미널 창에서 하는 작업이다. (osx의 경우 | + | 클라이언트의 터미널 창에서 하는 작업이다. (osx의 경우 |
| + | ([[SSH]]만 설치되어 있으면 자동 로그인을 구현할 수 있는 Ubuntu와는 달리, Windows 환경에서는 [[Putty]]나 Tera Term 등 콘솔 접속 프로그램의 도움을 받아야 RSA 키를 생성할 수 있다.) | ||
| + | |||
| + | ====macOS==== | ||
| 1. 로컬 계정으로 접속 한다. 예) openwiki | 1. 로컬 계정으로 접속 한다. 예) openwiki | ||
| - | 2. 홈디렉토리에서 ssh-keygen 명령으로 passphrase 에 암호를 입력하여 키를 생성한다. | + | 2. 홈디렉토리에서 ssh-keygen 명령으로 |
| < | < | ||
| - | ssh-keygen -t rsa< | + | $ ssh-keygen -t rsa< |
| Generating public/ | Generating public/ | ||
| - | Enter file in which to save the key (/home/user1/ | + | Enter file in which to save the key (/home/openwiki/ |
| Enter passphrase (empty for no passphrase): | Enter passphrase (empty for no passphrase): | ||
| Enter same passphrase again: < | Enter same passphrase again: < | ||
| - | Your identification has been saved in /home/user1/ | + | Your identification has been saved in /home/openwiki/ |
| - | Your public key has been saved in /home/user1/ | + | Your public key has been saved in /home/openwiki/ |
| The key fingerprint is: | The key fingerprint is: | ||
| - | XX: | + | XX: |
| </ | </ | ||
| 줄 35: | 줄 41: | ||
| 합계 12 | 합계 12 | ||
| < | < | ||
| - | -rw------- | + | -rw------- |
| - | -rw-r--r-- | + | -rw-r--r-- |
| - | -rw-r--r-- | + | -rw-r--r-- |
| </ | </ | ||
| + | 비밀키는 자신의 계정폴더의 .ssh에 그대로 두면 된다. | ||
| + | |||
| + | ====윈도우==== | ||
| + | |||
| + | '' | ||
| + | [[http:// | ||
| + | [[winscp|WINSCP]]를 설치했다면 같이 설치되므로 | ||
| + | |||
| + | {{: | ||
| + | |||
| + | '' | ||
| + | |||
| + | 공개키 id_rsa.pub 와 비밀키 id_rsa 를 저장한다. | ||
| + | |||
| + | 비밀키를 적당한 폴더에 저장하고, | ||
| + | |||
| + | |||
| + | |||
| + | =====서버측 작업===== | ||
| 이제 이 공개키 파일인 '' | 이제 이 공개키 파일인 '' | ||
| - | ====서버측 작업==== | ||
| 1. 서버에 openwiki 아이디로 로그인 한다. (openwiki 뿐 아니라 다른 계정에서도 같은 작업을 하면, 그 계정으로 접근 됨.) | 1. 서버에 openwiki 아이디로 로그인 한다. (openwiki 뿐 아니라 다른 계정에서도 같은 작업을 하면, 그 계정으로 접근 됨.) | ||
| - | 2. ''/ | + | 2. ''/ |
| cat id_rsa.pub >> authorized_keys< | cat id_rsa.pub >> authorized_keys< | ||
| chmod 600 authorized_keys< | chmod 600 authorized_keys< | ||
| - | 혹은 | + | '' |
| ====확인==== | ====확인==== | ||
| - | 1. B 클라이언트에 | + | 클라이언트에서 서버로 openwiki계정을 사용해서 |
| - | ssh user1@xxx.xxx.xxx.xxx | + | ssh openwiki@xxx.xxx.xxx.xxx |
| - | Enter passphrase for key '/ | + | Enter passphrase for key '/ |
| + | (키 생성시 암호 입력을 안했다면 묻지 않고 바로 접속됨.)> | ||
| + | 비밀키가 유출되면 서버가 바로 뚫리므로 주의한다. | ||
| + | =====잘 안될 때===== | ||
| - | (키 생성시 암호 입력을 안했다면 | + | 서버에 공개키를 넣었는데도 SSH 로그인 할 때 마다 비밀번호를 물어본다면, 다음을 확인한다. |
| - | ====참고==== | ||
| + | ====권한==== | ||
| + | 우선 .ssh 디렉토리와 authorized_keys 파일의 권한을 확인한다. .ssh는 0700, authorized_keys는 0600으로 설정되어 있어야 한다. | ||
| + | |||
| + | |||
| + | |||
| + | chmod 0700 ~/.ssh | ||
| + | chmod 0600 ~/ | ||
| + | |||
| + | |||
| + | ====설정==== | ||
| + | |||
| + | 서버에서 공개키 기반 인증이 허용되어 있어야 한다. | ||
| + | |||
| + | RSAAuthentication yes | ||
| + | PubkeyAuthentication yes | ||
| + | AuthorizedKeysFile | ||
| + | 주석을 풀고 sshd를 재기동한다. | ||
| + | |||
| + | sudo service sshd restart | ||
| + | |||
| + | =====참고===== | ||
| + | |||
| + | * [[ssh]] | ||
| + | * [[putty]] | ||
| * https:// | * https:// | ||
| + | * http:// | ||
| + | |||
| - | {{tag> | ||