당신의 첫 가상 Linux 랩: 간단한 설정 가이드

발행: (2026년 2월 8일 오후 01:54 GMT+9)
4 분 소요
원문: Dev.to

Source: Dev.to

Ubuntu에 SSH 서버 설정

# Update package list
sudo apt update

# Install OpenSSH server
sudo apt install -y openssh-server

# Enable and start the service
sudo systemctl enable ssh
sudo systemctl start ssh

SSH 서버를 설치하고 부팅 시 자동으로 시작하도록 설정합니다.

서비스 확인

sudo systemctl status ssh

active (running) 이 표시되어야 합니다.

VM의 IP 주소 확인:

ip a

다음과 비슷한 줄이 보일 것입니다:

inet 192.168.45.100/24

이 IP를 사용해 Windows에서 연결합니다.

Windows PowerShell에서 연결

ssh alok@192.168.45.100

첫 연결 시 다음과 같은 메시지가 표시됩니다:

Are you sure you want to continue connecting (yes/no)?

yes 를 입력해 VM의 SSH 지문을 신뢰합니다( known_hosts 에 저장됩니다).

Windows 공개 키를 Ubuntu에 복사

Windows PowerShell에는 ssh-copy-id 가 없으므로 한 줄 명령을 사용합니다:

type $env:USERPROFILE\.ssh\id_ed25519.pub |
  ssh alok@192.168.45.100 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

이 명령은 Windows 공개 키를 VM의 ~/.ssh/authorized_keys 에 추가합니다.

비밀번호 없이 로그인 테스트

ssh alok@192.168.45.100

비밀번호 입력 없이 로그인되어야 합니다.

Ubuntu 측에서 인증된 키를 확인하려면:

cat ~/.ssh/authorized_keys

다음과 같은 항목이 보일 것입니다:

ssh-rsa ... (older key)
ssh-ed25519 ... alok@DESKTOP-381CHVR (your Windows key)

권한 보안 설정

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

SSH가 키를 받아들이려면 올바른 권한이 필요합니다.

SSH 설정 강화

먼저 원본 설정 파일을 백업합니다:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

파일을 편집합니다:

sudo vim /etc/ssh/sshd_config

다음 설정을 추가하거나 수정합니다:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication no
KbdInteractiveAuthentication no
UsePAM yes

PermitRootLogin no

AllowUsers alok

이 설정은 다음을 강제합니다:

  • 키 기반 인증만 허용
  • 비밀번호 로그인 차단
  • 루트 로그인 비활성화
  • alok 사용자만 SSH 사용 허용

변경 사항 적용

sudo systemctl restart ssh

강화된 설정 확인

Windows에서:

ssh alok@192.168.45.100

정상적으로 연결되어야 합니다.

Ubuntu에서 비밀번호 인증 설정을 확인하려면:

sudo sshd -T | grep -i passwordauthentication

예상 출력:

passwordauthentication no

SSH 상태 요약

기능상태
SSH 접근✅ 활성화
비밀번호 로그인❌ 비활성화
키 기반 로그인✅ 활성화
루트 로그인❌ 비활성화
사용자 제한 (alok)✅ 적용
알려진 호스트 검증✅ 신뢰
부팅 시 SSH 자동 시작✅ 활성화

이제 Ubuntu VM에 Windows에서 안전하게 접근할 수 있는 프로덕션 수준의 DevOps 스타일 SSH 설정이 완료되었습니다. 💪

0 조회
Back to Blog

관련 글

더 보기 »

sunpeak은 MCP 앱에 전념한다

개요: MCP Apps는 이제 ChatGPT, Claude, Goose 및 VS Code에서 실행됩니다. Claude는 1월 26일에 MCP App 지원을 발표했으며, ChatGPT는 2월 4일에 이를 따랐습니다. 2월 현재…