ssh 인증서 로그인

1836 단어

앞말


ssh는 암호 로그인과 인증서 로그인, 암호 로그인, 특히 외부 네트워크의 기계가 있어 공격을 받기 쉽다.진정한 생산 환경에서, ssh 로그인 또는 인증서 로그인.현재 ansible 설정을 사용하여 다른 기계를 관리할 때 기계 간에 인증서를 사용하여 로그인하여 암호가 없는 전환을 실현하도록 요구하는 것을 추천합니다.

인증서 로그인 단계

  • 인증서 생성: 개인 키와 공공 키, 개인 키는 클라이언트에 저장하고 필요할 때 개인 키를 암호화합니다.
  • 서버에 신용 키를 추가합니다. 생산된 키를 ssh 서버에 업로드하고 지정한 폴더에 추가합니다.
  • 인증서 로그인을 허용하도록 설정하면 클라이언트는 개인 키를 통해 ssh 서버에 로그인할 수 있습니다.

  • 인스턴스 구성

  • 개인 키 및 공개 키 생성
  • #rsa dsa , rsa
    ssh-keygen -t rsa
    # id_rsa id_rsa.pub, , , , ssh 
    
  • 예를 들어 클라이언트에서 생성된 공개 키를 서버에 복사해야 한다
  • # ssh 
    # scp  username@ip:
    #  , 
    scp id_rsa.pub [email protected]:~
    scp lch_key.pub [email protected]:~ && ssh [email protected] "cat ~/lch_key.pub >> ~/.ssh/authorized_keys"
    
  • 서버에서 공개 키를 authorized_에 추가keys
  • #authorized_keys ~/.ssh/ , , sshd_config , 
    # 
    cat  id_rsa.pub >> ~/.ssh/authorized_keys
    
  • 기타 설정 항목, 서버 설정은 sshd_config, 클라이언트 설정은 ssh_config
  • 서버 sshd_config 구성
  • vi /etc/ssh/sshd_config
    #  
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile      %h/.ssh/authorized_keys
    
  • 클라이언트 ssh_config 구성
  • vi /etc/ssh/ssh_config
    # 
    # 
    IdentityFile ~/.ssh/id_rsa
    IdentityFile ~/.ssh/rat_rsa
    
  • 로그인 실행
  • # , ssh -i 
    #ssh user@ip  
    ssh [email protected]
    
  • 기타 주의 사항
  • ssh 로그인 시 -v 파라미터를 추가하여 로그인에 대한 상세한 정보를 출력할 수 있습니다.
  • 서버의 ~/.ssh 아래에는 읽기와 쓰기 권한만 있고 다른 사용자와 사용자 그룹은 쓰기 권한이 없습니다. 적어도 600은 필요합니다. 이 문제에 부딪혔습니다. 공개 키와 개인 키를 설정했지만 클라이언트는 로그인할 수 없습니다. 마지막으로 서버의 사용자 홈 디렉터리가 디렉터리로 바뀌었지만 사용자의 홈 디렉터리에 사용자 그룹의 쓰기 권한이 있어 클라이언트가 인증서 방식으로 로그인할 수 없습니다.마지막chmod g-w ~ 완료
  • 좋은 웹페이지 즐겨찾기