본문 바로가기

Linux

Linux SSH

#비밀번호 입력하지 않고 SSH 로그인하는 방법 (인증키 활용)

  • 명령어) Ssh-keygen -t rsa
    입력해서 파일 생성
  • 원격 로그인하는 컴퓨터 : $HOME/.ssh > id_rsa는 private key이고, id_rsa_.pub은 public key 를 의미
  • 원격 로그인 당하는 컴퓨터 : $HOME/.ssh > authorized_keys 파일 생성
  • id_rsa.pub 내용을 authorized_keys 파일 뒤에 이어서 붙임
    • 안전하게 복사하는 방법 : 원격로그인하는컴퓨터 ssh-copy-id 원격로그인당하는컴퓨터 아이디@원격로그인당하는컴퓨터ip주소

#SSH 해제 (비활성화)

  • Sudo service ssh stop
  • Sudo systemctl disable sshd.service
  • 다시 정상동작하도록 하는 방법
    • Sudo apt remove openssh-server
    • Sudo apt install openssh-server

#SSH 비밀번호 해제 + 인증서로 인증

  • 비밀번호 해제
    • /etc/ssh/sshd_config에서 PasswordAuthentication no
    • 인증서(Certificate Authority)로 인증
      • 유효기간이 존재
        • SSH client에게 client CA로 접근 권한을 발급해주되, 만료시점이 존재하여 접근 권 한이 사라지게 됨
        • SSH key의 rotate가 필요없어져서 효율적인 SSH 접근 권한 관리 가능
      • Server/client CA
        • SSH Server(105)
          • Server CA를 host키로 사용 > SSH client에게 인증
        • SSH Client(Mac)
          • Clinet CA로 발급된 인증서를 통해 SSH Server에 접근

#SSH로 외부 서버 원격 접속

  • SSH(Secure Shell Protocol) : 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명 령을 실행하고 다른 시스템으로파일을 복사할 수 있도록 해주는 프로토콜
  • 명령어) ssh 아이디@ip주소
    >> 설정 변경하면 간단하게 사용 가능
    ~/.ssh/ 디렉토리에 config 파일 생성 후,
    Host (원하는 이름)
    Hostname (ip주소)
    Port (포트번호, 기본은 22)
    User (아이디)
    >> 저장해서 $ ssh (원하는 이름) 하면 접속 가능!

'Linux' 카테고리의 다른 글

Linux BIOS 설정  (0) 2024.05.26
Linux sudoers 잘못건드렸을 때  (0) 2024.05.26
IP 주소 변경  (0) 2024.05.26
Storage 관리 - Log 관리 (feat. Docker)  (0) 2024.05.23
Linux 설치 과정  (0) 2024.05.20