SSH

  • 암호화를 통해 안전하게 원격 접속
  • 사용법:  ssh [사용자 이름]@[주소] [명령어] 
  • 기본적인 인증 방식은 사용자의 패스워드를 통한 인증
  • 키 기반 인증
    • 더 안전하고 편리하게 접속
    • 패스워드보다 접속이 어려움
    • 키 기반 인증만 허용 시 타 시스템 또는 사용자로 접속 불가
    •  ssh-keygen : 키 파일 생성(개인키와 공개키)
      • 개인키 파일은 반드시 600 / 400 권한 설정
      • 기본 경로는 ~/.ssh/id_rsa로 생성
      • 키 파일 지정 시  -i  옵션으로 지정
    •  ssh-copy-id : 상대 시스템에 복사
  • /etc/ssh/sshd_config: 서버용 설정 파일
    • 포트, 인터페이스, 키 파일, 암호화
    • PermitRootLogin: root 사용자의 접속 제한
    • PasswordAuthentication: 인증 방식 결정
    • 설정 변경 시 sshd 서비스 재시작:  systemctl restart sshd 

 


 

SSH 실습

0. 기본적인 접속 확인


1. 가상머신 2대를 준비합니다. (각각 A 와 B 라고 지칭할게요)

 

2. 각 가상머신의 IP주소와 호스트네임을 확인하세요.

 

3. A 가상머신에서 B 가상머신의 IP 주소와 호스트네임을 이용해서 root 사용자로 접속을 시도해봅니다. -> 호스트네임으로는 접속안됨

 

4. 이번에는 B 가상머신에 sshuser 라는 사용자를 하나 만들고 해당 사용자로 접속을 시도합니다. (패스워드도 설정해야됩니다.)

 

5. B 시스템에서 A시스템으로도 동일한 방법으로 접속테스트를 해보세요.

 

6. B 시스템에서 /etc/ssh/sshd_config 파일을 수정하고 접속 테스트를 해봅니다.

  • 처음엔 PermitRootLogin 값을 no 라고 설정하고 root 사용자와 sshuser 사용자로 각각 접속해보세요.

  • 다음엔 위 값을 yes 로 하고 다시 접속해보세요.

  • 두번째로 위 값이 yes인 상태에서 PasswordAuthentication 을 no 로 바꾸고 각 사용자로 접속을 시도해보세요.

  • 다시 값을 yes로 바꾼 뒤 접속해보세요.

 

7. A 시스템에서 keyuser 사용자 생성

 

8. A 시스템의 keyuser 사용자에서 키기반인증 설정 -> B시스템의 sshuser

 

9. B 시스템의 설정파일을 안전하게 수정

  • root 사용자는 절대 접속불가
  • 일반사용자는 키기반인증으로만 접속 가능하게 설정

 


 

  • 설정 파일 이름 제대로 외울 것
  • ssh_config: 클라이언트, 나가는 설정, Outbound
    sshd_config: 서버, 들어오는 설정, Inbound

 

복사했습니다!