서버 연결 자동로그인 방법

Leejaegun·2024년 8월 25일

서버연결을 자주 하다 보면은 비밀번호를 자주 입력해야 하는데 이게 아~~~주 귀찮아서 그냥 빨리 볼 수 있도록 여기에 적어본다.

1. ssh-key 등록

ssh-keygen -t rsa

①ssh-keygen은 ssh-key-generation으로 ssh 키 쌍을 생성하는 명령어. ssh는 네트워크를 통한 안전한 통신을 제공하는 프로토콜

②-t rsa : -t는 type 이며 키의 종류를 지정. rsa는 Rivest Shamir-Adleman의 약자로 그냥 RSA 알고리즘을 만들어넨 사람들 이름을 쭉 나열한것.
(참고로 RSA 알고리즘은 공개키 암호화 방식이며 두개의 큰 소수의 곱을 기반으로 한다)

2. ssh-key 옮기기

scp (id_rsa.pub경로) (아이디@호스트):id_rsa.pub

①scp(secure copy protocol) 네트워크를 통해 파일을 안전하게 복사하는 명령어
즉 scp명령어를 통해 지금 id_rsa.pub 에 있는것을 서버 네트워크에 옮기겠다는 뭐 그런 의미


🤨 계속 연결이 안 될 때?
👉 필자는 scp "C:\Users\LEE__AA\.ssh\id_rsa.pub" jaegun@(hostip):id_rsa.pub 계속 해도 안되길래 왜 그러지 했는데 포트번호가 달랐다. 따라서 포트 번호를 추가해주면 된다.

scp -P (포트번호) "C:\Users\LEE__AA\.ssh\id_rsa.pub" jaegun@(hostip):id_rsa.pub


3.공개키 추가

이제 서버 원격서버에 들어가서 밑에 내용을 차례대로 쳐준다.

rm -rf .ssh #원래 있던거 지워줌
mkdir .ssh #ssh 폴더 만듦
chmod 700 .ssh # ~/.ssh 폴더의 권한 지정. chmod는 changemode 파일소유자에게 모든 권한 부여
cat id_rsa.pub >> .ssh/authorized_keys # authorized_keys 라는 파일을 만들어 id_rsa.pub에 있는 내용을 옮기겠다는 의미

4. 설정파일에 들어가서 등록

Host에 있는거에 IdentityFile 에 이렇게 적어두면 됨.
~/.ssh/id_rsa

참고로 위 Host 가 어떠한 의미가 있는 것인지.

Host [alias](이름 아무거나 알아볼 수 있게)
	HostName [ip_address]
    User [본인이름](서버에 미리 등록된 User 이름 적어야함.)
    Port [port number](서버 포트 열어둔거 있을거임. 거기 해야함)
    IdentityFile [](이거 취향차이.)
profile
Lee_AA

0개의 댓글