ssh(secure shell)에 접속할 때 매번 비밀번호를 입력하는 것이 귀찮게 느껴진다. rsa key를 ssh 서버에 등록해 두면 접속할 때 비밀번호를 입력할 필요가 없이 바로 접속이 된다.

How-to

원격 ssh 서버의 $HOME/.ssh/authorized_keys 파일에 ssh rsa key를 등록한다.

  • 로컬 PC의 key 확인 방법
    # 로컬 PC에서
    $ cat ~/.ssh/id_rsa.pub
    # 출력되는 key 복사 해두기
    
  • key 등록
    # 원격 ssh 서버에서
    $ cat > ~/.ssh/authorized_keys
    # 여기에 복사해둔 key를 붙여 넣기
    

이제 key가 등록된 로컬 PC에서는 ssh login할 때 비밀번호 입력없이 바로 접속이 된다.

ssh key 만들기

로컬 PC에 key가 없으면 만들어야 한다.

$ ssh-keygen -t rsa -b 4096 -C "여기엔 간단히 이메일 주소를 적으면 충분하다."

option 설명

-b bits
        Specifies the number of bits in the key to create.  For RSA keys, the minimum size is
        1024 bits and the default is 2048 bits.  Generally, 2048 bits is considered sufficient.
        DSA keys must be exactly 1024 bits as specified by FIPS 186-2.  For ECDSA keys, the -b
        flag determines the key length by selecting from one of three elliptic curve sizes: 256,
        384 or 521 bits.  Attempting to use bit lengths other than these three values for ECDSA
        keys will fail.  Ed25519 keys have a fixed length and the -b flag will be ignored.
-C comment
        Provides a new comment.
-t dsa | ecdsa | ed25519 | rsa | rsa1
        Specifies the type of key to create.  The possible values are “rsa1” for protocol version
        1 and “dsa”, “ecdsa”, “ed25519”, or “rsa” for protocol version 2.