생성된 명령어

호스트를 입력하면 명령어가 생성됩니다

SSH란?

SSH(Secure Shell)는 네트워크를 통해 원격 서버에 안전하게 접속하는 프로토콜입니다. 암호화된 통신을 사용하여 비밀번호, 명령어, 파일 등을 안전하게 전송할 수 있습니다. Linux, macOS에 기본 설치되어 있으며 Windows에서도 OpenSSH를 통해 사용할 수 있습니다.

주요 옵션

옵션 설명 예시
-p 접속 포트 지정 (기본: 22) -p 2222
-i 인증에 사용할 개인 키 파일 지정 -i ~/.ssh/id_rsa
-v 디버그 모드 (상세 로그 출력) -v
-C 데이터 압축 전송 -C
-L 로컬 포트 포워딩 -L 8080:localhost:80
-R 원격 포트 포워딩 -R 9090:localhost:3000
-D 동적 포트 포워딩 (SOCKS 프록시) -D 1080
-f 백그라운드로 실행 -f
-N 원격 명령 실행 없이 연결만 유지 -N
-o SSH 설정 옵션 지정 -o StrictHostKeyChecking=no

터널링 종류

로컬 포트 포워딩 (-L)

로컬 컴퓨터의 포트를 원격 서버를 거쳐 다른 호스트의 포트로 연결합니다. 방화벽 뒤의 데이터베이스에 접근하거나 내부 웹 서비스를 로컬에서 사용할 때 유용합니다.

ssh -L 3306:db-server:3306 user@bastion-host

원격 포트 포워딩 (-R)

원격 서버의 포트를 로컬 컴퓨터의 포트로 연결합니다. 로컬에서 개발 중인 서비스를 외부에서 접근할 수 있게 할 때 사용합니다.

ssh -R 9090:localhost:3000 user@remote-host

동적 포트 포워딩 (-D)

로컬에 SOCKS 프록시를 생성하여 모든 트래픽을 원격 서버를 통해 전달합니다. 브라우저 프록시 설정과 함께 사용하면 원격 네트워크에서 웹을 탐색할 수 있습니다.

ssh -D 1080 user@proxy-server

SCP 사용법

SCP(Secure Copy)는 SSH를 기반으로 파일을 안전하게 복사하는 명령어입니다. 로컬에서 원격으로, 원격에서 로컬로 파일을 전송할 수 있습니다.

로컬 → 원격 파일 전송

scp ./file.txt user@remote:/home/user/

원격 → 로컬 파일 전송

scp user@remote:/var/log/app.log ./

디렉터리 재귀 복사

scp -r ./project user@remote:/home/user/

다른 포트로 SCP 전송

scp -P 2222 ./file.txt user@remote:/tmp/