1장. OpenSSH로 두 시스템 간의 보안 통신 사용
SSH(Secure Shell)는 클라이언트-서버 아키텍처를 사용하여 두 시스템 간에 보안 통신을 제공하고 사용자가 서버 호스트 시스템에 원격으로 로그인할 수 있는 프로토콜입니다. FTP 또는 Telnet과 같은 다른 원격 통신 프로토콜과 달리 SSH는 로그인 세션을 암호화하여 침입자가 연결에서 암호화되지 않은 암호를 수집하지 못하도록 합니다.
1.1. SSH 및 OpenSSH
SSH(Secure Shell)는 원격 시스템에 로그인하고 해당 시스템에서 명령을 실행하는 프로그램입니다. SSH 프로토콜은 비보안 네트워크를 통해 신뢰할 수 없는 두 호스트 간에 안전한 암호화된 통신을 제공합니다. 보안 채널을 통해 X11 연결 및 임의의 TCP/IP 포트를 전달할 수도 있습니다.
SSH 프로토콜은 원격 쉘 로그인 또는 파일 복사에 사용할 때 두 시스템 간 통신 가로채기 및 특정 호스트의 가장과 같은 보안 위협을 완화합니다. 이는 SSH 클라이언트와 서버가 디지털 서명을 사용하여 신원을 확인하기 때문입니다. 또한 클라이언트와 서버 시스템 간의 모든 통신이 암호화됩니다.
호스트 키는 SSH 프로토콜에서 호스트를 인증합니다. 호스트 키는 OpenSSH가 처음 시작될 때 또는 호스트가 처음 부팅될 때 자동으로 생성되는 암호화 키입니다.
OpenSSH는 Linux, UNIX 및 유사한 운영 체제에서 지원하는 SSH 프로토콜의 구현입니다. OpenSSH 클라이언트와 서버 모두에 필요한 코어 파일을 포함합니다. OpenSSH 제품군은 다음 사용자 공간 툴로 구성됩니다.
-
SSH
는 원격 로그인 프로그램(SSH 클라이언트)입니다. -
sshd
는 OpenSSH SSH 데몬입니다. -
SCP
는 안전한 원격 파일 복사 프로그램입니다. -
SFTP
는 보안 파일 전송 프로그램입니다. -
SSH-agent
는 개인 키 캐싱을 위한 인증 에이전트입니다. -
ssh-add
는 개인 키 ID를ssh-agent
에 추가합니다. -
SSH-keygen은
에 대한 인증 키를 생성, 관리 및 변환합니다.ssh
-
SSH-copy-id
는 원격 SSH 서버의authorized_keys
파일에 로컬 공개 키를 추가하는 스크립트입니다. -
SSH-keyscan
은 SSH 공개 호스트 키를 수집합니다.
RHEL의 OpenSSH 제품군은 SSH 버전 2만 지원합니다. 이전 버전 1에서 알려진 악용에 취약하지 않은 향상된 키 교환 알고리즘이 있습니다.
Red Hat Enterprise Linux에는 일반 openssh
패키지, openssh-server
패키지, openssh-clients
패키지 등 OpenSSH
패키지가 포함되어 있습니다. OpenSSH
패키지에는 OpenSSH
가 암호화된 통신을 제공할 수 있는 여러 중요한 암호화 라이브러리를 설치하는 OpenSSL
패키지 openssl-libs
가 필요합니다.
RHEL의 핵심 암호화 하위 시스템 중 하나인 OpenSSH는 시스템 전체 암호화 정책을 사용합니다. 이렇게 하면 기본 구성에서 약한 암호 제품군 및 암호화 알고리즘이 비활성화됩니다. 정책을 수정하려면 관리자는 update-crypto-policies
명령을 사용하여 설정을 조정하거나 시스템 전체 암호화 정책을 수동으로 비활성화해야 합니다. 자세한 내용은 다음 시스템 전체 암호화 정책에서 애플리케이션 제외 섹션을 참조하십시오.
OpenSSH 제품군은 두 가지 구성 파일 세트(즉, ssh
,scp
, sftp
)를 사용하며 다른 하나는 서버( sshd
데몬)에 사용됩니다.
시스템 전체 SSH 구성 정보는 /etc/ssh/
디렉토리에 저장됩니다. /etc/ssh/ssh_config
파일에는 클라이언트 구성이 포함되어 있으며 /etc/ssh/sshd_config
파일은 기본 OpenSSH 서버 구성 파일입니다.
사용자별 SSH 구성 정보는 사용자 홈 디렉터리의 ~/.ssh/
에 저장됩니다. OpenSSH 구성 파일의 자세한 목록은 시스템의 sshd(8)
도움말 페이지의 FILES
섹션을 참조하십시오.
추가 리소스
-
시스템에서
man -k ssh
명령을 사용하여 나열되는 도움말 페이지 - 시스템 전체 암호화 정책 사용