예제로 익히는 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, 인증 및 네트워크 관련 용어를 설명합니다.