오늘의 인기 글
최근 글
최근 댓글
Today
Total
11-15 19:15
관리 메뉴

우노

[Linux] 공개키 인증을 통해, SSH 암호 없이 서버 접근 본문

Operating System/Linux & Ubuntu

[Linux] 공개키 인증을 통해, SSH 암호 없이 서버 접근

운호(Noah) 2022. 2. 3. 16:11

들어가기 앞서,

  • 보통 SSH 명령어를 통해 서버에 접근할 경우, 암호를 입력해야 접근이 가능합니다.
  • 하지만, 매 접근마다 암호를 입력하는 것은 매우 귀찮습니다.
  • 따라서, 공개키 인증을 통해, SSH 암호 없이 서버에 접근하는 방법을 다뤄보겠습니다.

진행 순서

1. Client 의 SSH 공개키 생성

2. Server 에 SSH Server 설치

3. Server 에서 SSH 접속 허용 설정

4. Client 에서 Server 로 SSH 접속 테스트

5. Server 에 암호 없이 접근하기 위해, Client 의 SSH 공개키를 Server 에 저장

6. SSH 를 사용해 암호 없이 Server 에 접속

1. Client 의 SSH 공개키 생성

  • Client 에 SSH 공개키가 존재하는지 확인

      cat ~/.ssh/id_rsa.pub
  • SSH 공개키가 없다면, 생성

      sudo ssh-keygen
      # 공개키를 저장할 파일 이름은 Enter 를 통해 기본값 사용 (is_rsa)
      Enter file in which to save the key (/Users/.../.ssh/id_rsa):

2. Server 에 SSH Server 설치

  • openssh 설치 및 실행

      sudo apt-get install openssh-server
      sudo systemctl enable ssh
      sudo systemctl start ssh
      sudo systemctl status ssh

3. Server 에서 SSH 접속 허용 설정

  • sshd_config 수정

    • 파일 접근

        sudo vim /etc/ssh/sshd_config
    • "#Port 22"의 주석을 제거한 뒤, 접속할 포트 작성

        Port 5000
    • "#PermitRootLogin prohibit-password" 의 주석을 제거한 뒤, prohibit-password 를 yes 로 수정

        PermitRootLogin yes
  • ssh 재시작

      sudo systemctl restart ssh

4. Client 에서 Server 로 SSH 접속 테스트

ssh -p 포트번호 서버명@서버IP주소

5. Server 에 암호 없이 접근하기 위해, Client 의 SSH 공개키를 Server 에 저장

ssh-copy-id -i ~/.ssh/id_rsa.pub 서버명@서버IP주소 -p 포트번호

6. SSH 를 사용해 암호 없이 Server 에 접속

ssh -p 포트번호 서버명@서버IP주소

참고

Comments