본문 바로가기

develop/linux

.ssh id_rsa를 통한 비밀번호 없이 원격 접속하기

A : 클라이언트

B : 원격접속서버


1. A의 홈폴더의 .ssh로 이동. ex) ~/.ssh

2. ls 명령어로 id_rsa, id_rsa.pub 파일 존재 여부 확인. 있다면 4로 건너뜀

3. ssh-keygen 입력. id_rsa 파일 경로 지정 및 비밀번호 지정. (폴더경로 바꿀필요 없거나 비밀번호 없어도 되면 그냥 엔터 칠 것.)

4. id_rsa.pub 파일 내용 복사 할 것.

5. B의 홈폴더의 .ssh로 이동

6. ls 명령어로 authorized_keys 파일 존재 여부 확인. 없다면 생성할 것. ex) touch authorized_keys

7. 파일에 600 권한 줄 것 . ex) chmod 600 authorized_keys

8. vi 로 파일을 열어 복사한 A의 id_rsa.pub 내용을 저장 할 것.

9. 잘 되는지 확인.



Trouble shooting. :


1. SELinux 설정 해제 확인. 보안 이슈로 안되더라.

2. 우선 .ssh 디렉토리와 authorized_keys 파일의 권한을 확인

.ssh는 0700, authorized_keys는 0600으로 설정

또한 사용자 폴더의 권한(755)도 확인 필요



3. 서버에서 공개키 기반 인증이 허용되어 있어야 한다. 

CentOS :  /etc/ssh/sshd_config


RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile     .ssh/authorized_keys

주석을 풀고 sshd를 재기동


service sshd restart