type
status
date
slug
summary
tags
category
icon
password

정의

OpenSSH는 보안 셸(SSH) 프로토콜의 오픈 소스 구현으로, 안전한 네트워크 서비스를 제공하기 위해 사용됩니다. SSH 프로토콜을 통해 원격 로그인, 파일 전송, 포트 포워딩 등의 기능을 암호화된 방식으로 수행할 수 있습니다.
 
💡
OpenSSH 가 어쩌다 등장하게 되었나요?
OpenSSH는 보안이 취약한 텔넷 및 rsh와 같은 초기 원격 로그인 프로그램의 대안으로 등장했습니다. 인터넷을 통한 안전한 통신이 필수적이던 시기에, 데이터 암호화와 인증 기능을 제공하여 보안성을 대폭 강화했습니다.
 

연결

OpenSSH를 사용하여 원격 서버에 연결하려면, 터미널에서 다음 명령어를 입력합니다:
 
접속을 시도한 사용자 정보가 /root/.ssh/known_hosts 에 기록됩니다.
공개키는 /etc/ssh/ssh_host_xxx.pub 에 암호 알고리즘 종류 별로 기록됩니다.
 
서버 ↔ 클라이언트 간 ssh 연결 과정은 다음과 같습니다.
  1. 연결 요청: 클라이언트는 서버에 SSH 연결을 요청합니다.
  1. 서버 공개 키 전송: 서버는 클라이언트에게 자신의 공개 키를 전송합니다.
  1. 서버 공개 키 검증: 클라이언트는 서버의 공개 키를 검증하여 신뢰할 수 있는 서버인지 확인합니다.
  1. 클라이언트 공개 키 전송: 클라이언트는 자신의 공개 키를 서버에 전송합니다.
  1. 클라이언트 공개 키 저장: 서버는 클라이언트의 공개 키를 저장하여 이후 인증에 사용합니다.
  1. 인증 완료 메시지 전송: 서버는 클라이언트에게 인증이 완료되었음을 알리는 메시지를 보냅니다.
  1. 세션 시작: 클라이언트와 서버 간의 SSH 세션이 시작됩니다.
 

설정

/etc/ssh/sshd_config 파일에 openssh 설정이 담겨 있습니다.
대표적인 설정 값은 다음과 같습니다.
 

키 기반 인증 설정

키 기반 인증을 설정하려면, 클라이언트 측에서 SSH 키를 생성하고 서버의 ~/.ssh/authorized_keys 파일에 공개 키를 추가해야 합니다.
 
💡
키 기반 인증으로 설정해두면 무엇이 좋을까요?
키 기반 인증은 비밀번호 기반 인증보다 보안성이 높아집니다.
비밀번호는 쉽게 추측되거나 도난당할 수 있지만, 키는 복잡하고 고유한 값으로 생성됩니다.
 
윈도우에서도 해당 명령어를 사용할 수 있습니다.
notion image
 
키가 생성되면 id_rsa, id_rsa.pub 두 파일이 생성됩니다.
notion image
 
리눅스에서는 ssh-copy-id 로 가능하고, 윈도우에서는 다음 명령어로 수행할 수 있습니다.
 
이제 비밀번호 없이 키를 읽고 접속할 수 있게 되었습니다.
notion image
 
 
REF
 
Oracle DB에 접속하기까지..(on linux)SW 패키지
Loading...