🔑 SSH & SFTP 기초 가이드 - 서버 접속과 파일 전송
서버를 운영하기 위해서는 두 가지 작업이 필수적이다.
첫 번째로 서버에 접속하는 것 → SSH(Secure Shell)
두 번째로 서버와 파일을 주고받는 것 → SFTP(SSH File Transfer Protocol)
SSH란?
SSH(Secure Shell)는 네트워크를 통해 서버에 안전하게 접속할 수 있는 프로토콜이다. 암호화된 통신을 사용하기 때문에 ID/비밀번호나 데이터가 중간에서 탈취될 위험이 적다.
SSH 접속 방법
터미널을 통해 다음과 같은 기본 명령어를 입력한다.
ssh [사용자명]@[서버 IP 또는 도메인]
예를 들어 접속할 계정 이름이 bluecool이고 서버 IP 주소가 192.168.xxx.xxx인 경우
ssh bluecool@192.168.xxx.xxx 가 된다.
접속 시에 -p 플래그를 사용하여 SSH 기본 포트 22번이 아닌 다른 포트로 접속이 가능하다.
(보안상 가급적 22번 포트가 아닌 다른 포트로 변경하는 것이 좋다.)
또한 키 파일을 사용하여 접속도 가능한데 비밀번호 대신 SSH 키를 이용하여 접속하면 보안성이 한층 높아진다.
ssh -i bluecool.pem bluecool@pyomin.com
SFTP란?
SFTP(Secure File Transfer Protocol)는 SSH 프로토콜을 기반으로 서버와 안전하게 파일을 주고받는 방식이다.
SFTP 접속 방법
SFTP 역시 터미널에서 직접 명렁어를 입력해 접속할 수도 있지만 FileZilla, WinSCP, Cyberduck 같은 GUI 프로그램을 이용하면 손쉽게 파일을 주고받을 수 있다.
그중에서도 가장 널리 사용되는 FileZilla를 예시로 접속 방법을 알아보자.
1. FileZilla 설치

FileZilla 공식 사이트에서 FileZilla Client를 설치한다. Windows, macOS, Linux를 모두 지원하며 설치 시 특별한 옵션 변경 없이 기본 설정으로 설치하면 된다.
2. 접속 정보 설정
상단 메뉴에서 파일 → 사이트 관리자에서 새 사이트 생성을 클릭 후 프로토콜, 호스트, 포트, 사용자명, 인증 방식을 선택한 후 연결한다.
인증 방식이 키 파일(.pem)일 경우 설정 → SFTP → 키 파일 추가를 통해 등록한다.

3. 파일 전송
연결에 성공 시 왼쪽 창에는 로컬 파일 오른쪽에 창에는 서버 파일이 표시된다. 드래그 앤 드롭으로 파일을 전송할 수 있으며 폴더 단위로도 전송이 가능하다.
전송 상태는 하단 대기열에서 확인이 가능하며 폴더에 쓰기 권한이 없는 경우 전송이 실패할 수 있으니 권한이 있는 계정으로 접속하거나 명령어를 통해 권한을 부여한 후 재시도한다.