우분투 서버 초기 설정, 이것 5가지 빠뜨리면...

우분투 서버 초기 설정, 처음엔 진짜 막막하죠

우분투 서버 초기 설정을 처음 해보는 분들은 "설치는 했는데... 이제 뭐 하지?" 하는 순간이 꼭 옵니다. 저도 처음에 딱 그랬어요. 클라우드 인스턴스 하나 띄워놓고 터미널 앞에서 10분 넘게 멍하니 있었던 기억이 나네요 .

사실 우분투 서버를 설치한 직후 상태는 보안 구멍이 여기저기 뚫려 있는 상태입니다. root 계정이 그대로 열려 있고, 방화벽도 꺼져 있고, 패키지도 구버전인 경우가 많아요. 그냥 방치하면 봇이 SSH 포트를 두드리다가 결국 뚫리는 사고가 생깁니다. 실제로 제 지인이 설정 안 하고 3일 방치했다가 서버가 암호화폐 채굴기로 쓰이는 황당한 경험을 했어요 (진짜 실화입니다...).

이 글에서는 우분투 서버를 처음 설치한 뒤 반드시 해야 할 초기 설정 5가지를 순서대로, 직접 해본 경험을 바탕으로 정리해 드립니다. 명령어 복붙만 해도 따라올 수 있게 썼으니 끝까지 읽어보세요!

우분투 서버 초기 설정, 처음엔 진짜 막막하죠

우분투 서버 초기 설정, 왜 이게 그렇게 중요한가요?

기본 설치 상태가 위험한 이유

우분투 서버를 ISO나 클라우드 이미지로 처음 설치하면, 운영체제 자체는 최소한의 구성만 갖춘 상태입니다. 쉽게 말하면 문은 달려 있는데 자물쇠를 아직 안 잠근 집이에요. 특히 아래 세 가지가 기본값 그대로 방치되면 위험합니다.

▶ root 계정으로 SSH 직접 로그인 허용 (외부에서 비밀번호 대입 공격 가능)

▶ UFW(방화벽) 비활성화 상태 (모든 포트가 열려 있음)

▶ 패키지 보안 업데이트 미적용 (알려진 취약점 그대로 노출)

초기 설정이 게임 서버·웹 서버 모두에 해당하는 이유

2017년에 공개된 범용 게임 서버 엔진 '아이펀(iFun Engine)' 개발 과정을 보면, 프로젝트 시작 2일 차에 바로 우분투 기반 데비안 패키징 작업을 시작했다는 기록이 있습니다. 게임 서버든 웹 서버든 우분투 위에 무언가를 올리는 순간, 초기 보안 설정은 선택이 아니라 필수라는 게 현장에서도 공통된 이야기예요.

초기 설정은 "나중에 해도 되는 것"이 아니라, 서버를 인터넷에 연결하기 전에 반드시 끝내야 할 체크리스트입니다.

꼭 해야 할 초기 설정 5가지 한눈에 보기

순서항목목적
1패키지 업데이트알려진 보안 취약점 패치
2일반 사용자 계정 생성root 직접 사용 방지
3SSH 보안 강화비밀번호 공격 차단
4UFW 방화벽 활성화불필요한 포트 차단
5타임존·로케일 설정로그 시간 정확성 확보
우분투 서버 초기 설정, 왜 이게 그렇게 중요한가요?

직접 해본 우분투 서버 초기 설정 5단계 실전 가이드

제가 실제로 AWS EC2 우분투 24.04 LTS 인스턴스를 새로 띄우면서 했던 순서 그대로 정리해 드릴게요. 로컬 VM이든 클라우드든 거의 동일하게 적용됩니다.

1단계 — 패키지 업데이트 (5분)

서버에 접속하자마자 가장 먼저 할 일입니다. 설치 이미지가 몇 달 전 빌드일 수 있어서 보안 패치가 수십 개 쌓여 있는 경우가 많아요.

 sudo apt update && sudo apt upgrade -y sudo apt autoremove -y 

제가 24.04 LTS를 처음 띄웠을 때 업그레이드 대상 패키지가 87개였습니다. 이걸 안 하고 넘어가면 이미 알려진 CVE(공개 취약점)에 그대로 노출되는 거예요.

2단계 — 일반 사용자 계정 생성 + sudo 권한 부여 (3분)

root 계정으로 계속 작업하는 건 정말 위험합니다. 실수로 명령어 하나 잘못 치면 복구가 어려운 상황이 생기거든요 (저도 한 번 rm -rf 잘못 쳐서 식은땀 흘린 적 있어요 ㅠ;;).

 adduser 내아이디 usermod -aG sudo 내아이디 

그 다음 새 계정으로 SSH 접속이 되는지 꼭 확인하고 나서 root 계정 SSH 로그인을 막으세요. 확인도 안 하고 막았다가 잠기면 낭패입니다 (굳이 경험해볼 필요 없습니다).

3단계 — SSH 보안 강화 (10분, 가장 중요!)

SSH는 서버의 현관문이에요. 기본 포트(22번)를 그대로 두면 전 세계 봇들이 24시간 두드립니다. 제가 설정 전 로그를 확인해보니 하루에 수백 번의 로그인 시도가 기록돼 있었어요.

/etc/ssh/sshd_config 파일을 수정합니다:

▶ PermitRootLogin no (root SSH 로그인 차단)

▶ PasswordAuthentication no (비밀번호 로그인 차단, 키 인증만 허용)

▶ Port 2222 (기본 22번 포트 변경 — 선택사항이지만 효과 있음)

수정 후 반드시 SSH 서비스 재시작:  sudo systemctl restart sshd 

비밀번호 인증을 끄기 전에 SSH 공개키를 ~/.ssh/authorized_keys에 먼저 등록해 두세요. 안 하면 서버에서 완전히 잠깁니다.

4단계 — UFW 방화벽 활성화 (5분)

UFW = Uncomplicated Firewall. 이름처럼 설정이 간단합니다.

 sudo ufw allow 2222/tcp # SSH 포트 (변경했다면 해당 포트로) sudo ufw allow 80/tcp # HTTP sudo ufw allow 443/tcp # HTTPS sudo ufw enable sudo ufw status 

UFW enable 전에 SSH 포트를 반드시 허용해 두세요. 안 하면 접속이 끊기고 클라우드 콘솔로만 들어갈 수 있습니다 (경험담입니다 ㅠ).

5단계 — 타임존·로케일 설정 (2분)

로그 분석할 때 시간이 UTC로 찍혀 있으면 나중에 꽤 헷갈립니다. 한국 서버라면 Asia/Seoul로 맞춰두는 게 편해요.

 sudo timedatectl set-timezone Asia/Seoul timedatectl # 확인 

로케일도 한국어 환경이 필요하다면:  sudo locale-gen ko_KR.UTF-8 sudo update-locale LANG=ko_KR.UTF-8 

이 5단계까지 마치면 기본적인 우분투 서버 초기 설정은 완료입니다. 총 소요 시간은 처음 해도 30분 이내예요.

직접 해본 우분투 서버 초기 설정 5단계 실전 가이드

자주 묻는 질문

Q. UFW를 켰더니 SSH 접속이 끊겼어요. 어떻게 하나요?

A. 클라우드 환경이라면 AWS EC2의 경우 EC2 Instance Connect, GCP는 Cloud Shell 등 웹 콘솔 접속 수단을 이용해 접속한 뒤, sudo ufw allow 22/tcp (또는 변경한 포트) 명령어로 포트를 열어주세요. 로컬 VM이라면 하이퍼바이저 콘솔에서 직접 접근하면 됩니다. 이 상황을 피하려면 UFW enable 전에 SSH 포트 허용을 꼭 먼저 하세요.

Q. 우분투 22.04와 24.04 중 어떤 버전을 써야 하나요?

A. 2026년 8월 기준으로 24.04 LTS(Noble Numbat)가 현재 최신 LTS 버전입니다. 지원 기간이 2029년까지라 신규 서버라면 24.04를 권장합니다. 다만 특정 소프트웨어가 22.04만 공식 지원하는 경우라면 22.04를 쓰는 게 맞아요 (지원 기간은 2027년까지).

Q. SSH 키 인증은 어떻게 설정하나요?

A. 로컬 PC에서 ssh-keygen 명령어로 키 쌍을 생성한 뒤, 공개키(id_rsa.pub 또는 id_ed25519.pub 내용)를 서버의 ~/.ssh/authorized_keys 파일에 붙여넣으면 됩니다. ssh-copy-id 명령어를 쓰면 한 줄로 자동 복사돼서 훨씬 편해요: ssh-copy-id -i ~/.ssh/id_ed25519.pub 사용자@서버IP

Q. fail2ban도 설치해야 하나요?

A. SSH 포트 변경 + 키 인증만 해도 대부분의 무차별 대입 공격은 막을 수 있습니다. 하지만 보안을 한 단계 더 강화하고 싶다면 fail2ban 설치를 추천해요. 일정 횟수 이상 로그인 실패 시 해당 IP를 자동으로 차단해 줘서 로그가 훨씬 조용해집니다.

오늘 바로 시작하는 우분투 서버 초기 설정 체크리스트

지금까지 우분투 서버 초기 설정의 핵심 5단계를 살펴봤는데요, 핵심만 다시 한번 정리할게요!

  • 패키지 업데이트(apt update && upgrade)는 접속하자마자 가장 먼저 — 보안 패치 수십 개가 쌓여 있을 수 있습니다
  • SSH 보안 강화(root 로그인 차단 + 키 인증)는 가장 중요한 단계 — 비밀번호 인증을 끄기 전에 공개키 등록을 꼭 먼저 하세요
  • UFW 방화벽 활성화 전에 SSH 포트 허용을 먼저 — 순서 바꾸면 서버가 잠깁니다

서버를 처음 띄운 날, 이 5단계만 30분 안에 끝내면 나중에 "왜 내 서버가 이상하게 느리지?"라고 당황할 일이 훨씬 줄어듭니다. 저도 처음엔 귀찮아서 미뤘다가 한 번 크게 데이고 나서 이제는 서버 생성하면 반사적으로 하게 됐어요.

다음 단계로는 Nginx나 Apache 웹 서버 설치, 또는 Docker 환경 구성을 해보시는 걸 추천드립니다. 초기 설정이 탄탄하게 잡혀 있으면 그 위에 무엇을 올려도 훨씬 안심이 되거든요!

혹시 설정하다가 막히는 부분이 있으면 댓글로 남겨주세요. 제가 겪었던 오류라면 같이 해결해 드릴게요 😊 도움이 됐다면 구독 버튼도 눌러주시면 감사하겠습니다!

오늘 바로 시작하는 우분투 서버 초기 설정 체크리스트

이 블로그의 인기 게시물

이메일 답장 10개를 5분 만에 끝내는 ChatGPT 활용법 (프롬프트 공개)

엑셀 수식, 저도 몰랐어요 - AI한테 맡겼더니 다 되더라고요

AI한테 맡겼더니 오히려 일이 늘었던 이유, 이 단계를 건너뛰어서였어요

ChatGPT에 질문만 던지고 있다면, 지금 절반도 못 쓰고 있는 거예요

출근길 10분으로 하루 할 일을 AI가 자동 정리하는 아침 루틴