본문 바로가기
운영체제/리눅스(CentOS)

리눅스 SSH 설정과 사용법 제대로 써보기 (ssh, scp, ssh-keygen)

by 마루의 일상 2025. 4. 5.
728x90
반응형

안녕하세요 🙂
오늘은 리눅스 서버 관리할 때 진짜 자주 쓰는 SSH 관련 기능들 — ssh, scp, ssh-keygen — 에 대해 정리해보려고 해요.

개인적으로는 서버에 접속하거나 파일 전송할 때 거의 매일 쓰는 도구들이라서, 헷갈릴 수 있는 부분까지 예제랑 같이 꼼꼼하게 설명해볼게요!


✨ 먼저, SSH가 뭔가요?

간단하게 말하면,

SSH(Secure Shell) = 원격으로 안전하게 리눅스 서버에 접속할 수 있게 해주는 프로토콜

이라고 생각하면 돼요.
일반적으로는 포트 번호 22번을 사용하고, 암호화된 통신이라 보안도 괜찮습니다.


🔧 1. SSH 서버 설치하기 (Ubuntu 기준)

리눅스 서버에 SSH 서버가 안 깔려 있으면 접속 자체가 안 되겠죠?

1️⃣ 설치 확인

bash
복사편집
sudo systemctl status ssh

만약 "Unit ssh.service could not be found" 이런 메시지가 뜬다면? 아직 안 깔린 거예요.

2️⃣ 설치

bash
복사편집
sudo apt update sudo apt install openssh-server

3️⃣ 실행 & 자동 시작 설정

bash
복사편집
sudo systemctl start ssh sudo systemctl enable ssh

4️⃣ 방화벽 설정 (UFW 사용하는 경우)

bash
복사편집
sudo ufw allow ssh sudo ufw enable

이제 SSH 서버는 준비 완료입니다!


💻 2. ssh 명령어로 서버에 접속하기

기본 형식

bash
복사편집
ssh [사용자명]@[서버 IP or 도메인]

예시

bash
복사편집
ssh ubuntu@192.168.0.101

처음 접속할 때는 yes 한 번 눌러주고 비밀번호 입력하면 끝이에요!


🔐 3. ssh-keygen으로 비밀번호 없이 접속하기

매번 비밀번호 입력하기 귀찮다면?
SSH 키 인증을 설정해두면 접속이 훨씬 편해져요.

1️⃣ 로컬에서 키 생성

bash
복사편집
ssh-keygen

엔터 몇 번 눌러주면 기본 경로 ~/.ssh/id_rsa에 키가 생성돼요.

2️⃣ 서버로 공개키 전송

bash
복사편집
ssh-copy-id 사용자명@서버IP

예를 들면:

bash
복사편집
ssh-copy-id ubuntu@192.168.0.101

3️⃣ 이제 비밀번호 없이 바로 접속 가능!

bash
복사편집
ssh ubuntu@192.168.0.101

한 번 설정해두면 엄청 편해요.


📂 4. scp로 파일 주고받기

scp는 SSH 기반 파일 복사 도구예요.
로컬 ↔ 원격 간에 파일을 쉽게 주고받을 수 있어요.

✅ 로컬 → 서버로 복사

bash
복사편집
scp localfile.txt ubuntu@192.168.0.101:/home/ubuntu/

✅ 서버 → 로컬로 다운로드

bash
복사편집
scp ubuntu@192.168.0.101:/home/ubuntu/log.txt ./

✅ 폴더 통째로 복사 (재귀 옵션)

bash
복사편집
scp -r myfolder/ ubuntu@192.168.0.101:/home/ubuntu/

🛠️ 5. 자주 쓰는 서버는 .ssh/config에 등록해두기

자주 접속하는 서버가 있다면 매번 IP랑 사용자명 치는 거 귀찮잖아요?
이럴 땐 .ssh/config 파일을 써보세요.

bash
복사편집
nano ~/.ssh/config
bash
복사편집
Host myserver HostName 192.168.0.101 User ubuntu Port 22 IdentityFile ~/.ssh/id_rsa

이제는 이렇게만 접속해도 돼요:

bash
복사편집
ssh myserver

📌 보너스: 포트 바꾸는 법

보안을 위해 SSH 포트를 22에서 다른 걸로 바꾸고 싶다면, 서버에서 설정 파일을 수정하면 돼요.

bash
복사편집
sudo nano /etc/ssh/sshd_config
ini
복사편집
Port 2222

수정 후 재시작:

bash
복사편집
sudo systemctl restart ssh

접속 시엔 이렇게 포트 지정해줘야 해요:

bash
복사편집
ssh -p 2222 ubuntu@192.168.0.101

✅ 마무리 요약

명령어설명
ssh 원격 서버 접속
scp 안전한 파일 전송
ssh-keygen 공개/개인 키 생성
ssh-copy-id 공개 키를 서버로 전송
.ssh/config 접속 정보 저장해서 편하게 사용

지금까지 리눅스에서 SSH를 사용하는 기본적인 방법부터 실전 꿀팁까지 정리해봤어요 😊
처음엔 살짝 헷갈릴 수 있지만, 몇 번 해보면 몸에 익고 나중엔 없어선 안 될 도구가 될 거예요.

궁금한 거나 더 알고 싶은 내용 있으면 댓글이나 DM 주세요!
그럼 다음에 또 유용한 리눅스 꿀팁으로 찾아올게요 🙌


원하면 이 포스팅을 마크다운이나 HTML로 내보낼 수도 있어요. 블로그 플랫폼에 맞춰 포맷 바꿔드릴까?

728x90
반응형