취미겸생업

[Linux] SSH 공개키 등록하기 본문

IT/Linux

[Linux] SSH 공개키 등록하기

nohumb 2026. 4. 12. 18:39
SMALL

문제 상황

On-Premise 우분투 설치 시 기본적으로 PasswordAuthentication이 활성화 되어있다.

안전과 CI/CD 편의성을 위해 Key 쌍을 통해 관리하자.

해결법

키 생성 및 등록

  • 로컬에서 키 생성 (ed25519는 RSA보다 안정적인 현대적인 키)

    ssh-keygen -t ed25519 -f mykey
    # mykey는 개인키, mykey.pub는 공개키
    # 공개키만 서버에 등록하고 개인키는 안전하게 나만 보관해야 한다
  • 서버에 공개키 등록 (등록 과정에서 최초 인증을 거침)

    ssh-copy-id -i mykey.pub [host_user]@[host_address]
  • Password를 통한 인증 차단

    vi /etc/ssh/sshd_config
    # 파일 내용 수정
    PasswordAuthentication no
  • 키를 통한 인증

    ssh -i mykey [host_user]@[host_address]
    scp -i mykey [local_original_file] [host_user]@[host_address]:[remote_copy_directory]

NOPASSWD 설정

Github Action과 같은 CI/CD 환경에선 외부에서 쉘을 직접 사용해야 하는 경우도 있다. (Docker를 돌린다든지)

EC2나 Azure와 같은 경우는 이미 Key pair 방식이나 sudo 사용 시 비밀번호를 요구하지 않는 설정이 되어있지만 on-premise는 직접 설정해줘야 한다.

  • /etc/sudoers 파일로 sudo 권한 편집

    sudo visudo
    
    # 파일에 내용 추가
    ubuntu ALL=(ALL) NOPASSWD:ALL
LIST

'IT > Linux' 카테고리의 다른 글

[Linux] Docker Volume Migration  (0) 2026.04.18