예제로 익히는 SSH

연결, 키 관리, 파일 전송을 위한 명령어와 실용적인 설명입니다. Secure Pipes 사용 설명서와 별도로 제공합니다.

별도 설명이 없으면 로컬 Mac 또는 Linux의 zsh/bash에서 실행합니다. alice와 *.example.com은 예시 값입니다. Windows OpenSSH는 경로, 에이전트, 도구 지원이 다릅니다. ssh -V로 버전을, man <명령어>로 설치된 매뉴얼을 확인하세요.

연결 및 터널

ssh

서버 로그인, 명령 실행 및 암호화 터널 생성.

키 및 인증

ssh-keygen

키 쌍 생성, 지문 확인 및 개인 키 암호 변경.

ssh-copy-id

원격 계정의 authorized_keys에 공개 키 설치.

ssh-agent

SSH 클라이언트의 서명에 사용할 인증 키를 에이전트로 관리.

ssh-add

기존 에이전트에 인증 키를 추가하고 조회하거나 제거.

ssh-keyscan

서버 호스트 키를 수집하여 추후 확인.

파일 전송

scp

SSH 연결을 통한 파일 복사.

sftp

SSH를 통한 대화형 파일 업로드 및 다운로드.

설정

~/.ssh/config

자주 사용하는 연결 옵션을 클라이언트 설정 파일에 저장.

sshd_config

OpenSSH 서버 구성: 수신, 인증, 전달, 액세스 제어 및 로깅.

서버 보안

Fail2ban

Ubuntu 서버에서 반복되는 SSH 인증 실패를 일시적으로 차단하려면 Fail2ban을 설치하고 구성하십시오.

SSH OTP

Linux PAM 및 Google Authenticator의 PAM 모듈을 사용하여 SSH 로그인에 시간 기반 일회성 코드를 추가합니다.

SSH 보안 강화

Ubuntu 서버의 SSH 접근을 점검하고 제한합니다.

SSH 방화벽

UFW 규칙과 SSH 접근 출처를 점검합니다.

SSH 키 보안

SSH 인증 키를 생성, 배포, 확인 및 교체합니다.

SSH 복구

복구 경로를 준비하고 SSH 서버 설정을 점검합니다.

부록

용어집

SSH, 인증 및 네트워크 관련 용어를 설명합니다.