일본 서버호스팅으로 Ubuntu 서버를 받았다면, 서비스를 올리기 전에 반드시 초기 보안 설정을 먼저 해야 합니다. 설정 없이 서버를 오픈하면 수 시간 내에 무차별 SSH 브루트포스 공격을 받게 됩니다. 이 글에서는 Ubuntu 22.04 LTS 기준으로 일본 서버 초기 보안 설정을 단계별로 안내합니다.
1. root 계정 비밀번호 변경 및 일반 사용자 생성
서버를 받으면 즉시 root 비밀번호를 강력한 것으로 변경하고, 일상 작업용 일반 사용자를 만드세요.
# root 비밀번호 변경
passwd root
# 새 사용자 생성 및 sudo 권한 부여
adduser myuser
usermod -aG sudo myuser
2. 시스템 패키지 업데이트
OS를 받은 직후 패키지를 최신 상태로 업데이트합니다.
apt update && apt upgrade -y
apt autoremove -y
3. SSH 포트 변경
기본 SSH 포트(22번)는 전 세계 봇이 스캔하는 대상입니다. 포트를 변경하는 것만으로 자동화 공격의 99%를 차단할 수 있습니다.
nano /etc/ssh/sshd_config
아래 항목을 수정합니다:
Port 22222 # 원하는 포트 번호로 변경 (1024~65535)
PermitRootLogin no # root 직접 로그인 차단
PasswordAuthentication no # 패스워드 인증 비활성화 (키 인증만 허용)
systemctl restart sshd
주의: SSH 포트를 변경하기 전에 새 포트로 방화벽을 먼저 열고, 새 세션으로 접속이 되는지 확인한 후 기존 세션을 닫으세요.
4. SSH 키 인증 설정
패스워드 인증 대신 SSH 키 쌍을 사용하면 브루트포스 공격에 안전합니다.
로컬 PC에서 키 생성:
ssh-keygen -t ed25519 -C "japan-server"
공개 키를 서버에 등록:
ssh-copy-id -p 22222 myuser@서버IP
5. UFW 방화벽 설정
Ubuntu의 기본 방화벽인 UFW를 설정해 필요한 포트만 허용합니다.
# UFW 기본 정책: 모두 차단
ufw default deny incoming
ufw default allow outgoing
# SSH 포트 허용 (변경한 포트 번호로)
ufw allow 22222/tcp
# 웹 서비스 포트 허용
ufw allow 80/tcp
ufw allow 443/tcp
# UFW 활성화
ufw enable
ufw status verbose
6. Fail2Ban 설치 — 반복 접속 시도 자동 차단
Fail2Ban은 SSH, Nginx 등에 반복 실패한 IP를 자동으로 차단합니다.
apt install fail2ban -y
기본 설정 파일 복사:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
SSH 보호 설정 추가:
[sshd]
enabled = true
port = 22222
maxretry = 3
bantime = 3600
systemctl enable fail2ban
systemctl start fail2ban
7. 자동 보안 업데이트 설정
운영 중에 보안 패치를 놓치지 않도록 자동 업데이트를 설정합니다.
apt install unattended-upgrades -y
dpkg-reconfigure --priority=low unattended-upgrades
8. 타임존 및 NTP 설정
로그 분석을 위해 타임존을 맞추는 것도 중요합니다.
timedatectl set-timezone Asia/Tokyo # 일본 서버이므로 도쿄 시간대
# 또는 한국 시간대로 맞추려면:
timedatectl set-timezone Asia/Seoul
apt install chrony -y
systemctl enable chrony
보안 설정 체크리스트
| 항목 | 완료 여부 |
|---|---|
| root 비밀번호 변경 | ☐ |
| 일반 사용자 생성 | ☐ |
| 시스템 업데이트 | ☐ |
| SSH 포트 변경 | ☐ |
| root SSH 로그인 차단 | ☐ |
| SSH 키 인증 설정 | ☐ |
| UFW 방화벽 활성화 | ☐ |
| Fail2Ban 설치 | ☐ |
| 자동 보안 업데이트 | ☐ |
마치며
위 설정을 완료하면 일본 서버의 기본 보안 수준이 크게 높아집니다. TCP-80.NET은 서버 개설 후 초기 보안 설정에 대한 한국어 기술 지원을 제공합니다. 설정 과정에서 막히는 부분이 있다면 텔레그램 @tcp80net으로 언제든지 문의하세요.