반응형
Linux A 서버에서 Linux B 서버로 두 번째 로그인 시 암호를 입력하지 않고 SSH로 접속하려면, SSH 키 기반 인증을 설정해야 합니다. 아래에 이를 설정하는 방법을 단계별로 설명합니다:
1. Linux A 서버에서 SSH 키 생성
Linux A 서버의 auser 계정으로 로그인한 상태에서 다음 명령어를 실행합니다:
bash code
ssh-keygen -t rsa
- 옵션 설명:
-t rsa는 RSA 형식의 SSH 키를 생성합니다. - 결과:
- Enter file in which to save the key: 그냥 Enter를 눌러 기본 경로(~/.ssh/id_rsa)를 사용합니다.
- Enter passphrase: 빈 칸으로 두고 Enter를 눌러 비밀번호 없이 생성합니다.
- Enter same passphrase again: 다시 Enter를 누릅니다.
2. 생성된 공개 키를 Linux B 서버로 복사
생성된 공개 키를 buser 계정의 ~/.ssh/authorized_keys 파일에 추가해야 합니다. 다음 명령어를 사용합니다:
bash code
ssh-copy-id buser@<b서버 IP 또는 호스트 이름>
- 이 과정에서 한 번은 암호를 입력해야 합니다.
대안:
만약 ssh-copy-id 명령어가 없다면, 수동으로 공개 키를 복사할 수도 있습니다:
1. 공개키 확인
bash code
cat ~/.ssh/id_rsa.pub
2. 출력된 키를 복사한 후, Linux B 서버에 접속하여 buser 계정의 ~/.ssh/authorized_keys 파일에 붙여넣습니다:
bash code
mkdir -p ~/.ssh chmod 700 ~/.ssh echo "<복사한 키>" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
3. 접속 테스트
Linux A 서버에서 다시 한 번 Linux B 서버로 SSH 접속을 시도합니다:
bash code
ssh buser@<b서버 IP 또는 호스트 이름>
이제 암호 없이 SSH 접속이 되어야 합니다.
4. 추가 설정 (선택 사항)
1) SSH 설정 파일에서 Alias 사용
~/.ssh/config 파일에 아래 내용을 추가하면, 짧은 명령어로 접속할 수 있습니다:
bash code
Host bserver HostName <b서버 IP 또는 호스트 이름> User buser IdentityFile ~/.ssh/id_rsa
이제 아래 명령어로 접속할 수 있습니다:
bash code
ssh bserver
2) 파일 권한 확인
SSH 키 인증이 작동하지 않으면, 파일 및 디렉터리 권한을 확인하세요:
bash code
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys chmod 600 ~/.ssh/id_rsa chmod 644 ~/.ssh/id_rsa.pub
이제 Linux A와 B 서버 간 암호 없는 SSH 접속이 설정되었습니다! 😊
반응형
'블라베 IT world > Linux Document' 카테고리의 다른 글
[펌] create a user id and home directory in linux (0) | 2024.04.02 |
---|---|
[펌] ec2 linux ssh login, without pem key file (0) | 2024.04.02 |
리눅스의 hostname 변경하는 다양한 방법 (CentOS 5, 6 7, and Ubuntu 14, 16, 18, 20) (0) | 2022.10.23 |
리눅스 OS (CentOS, Ubuntu) 버전별 커널버전 비교 (0) | 2022.10.23 |
리눅스 shutdown 과 init 명령 활용하기 (0) | 2022.10.23 |