Oracle VM(Micro 1 OCPU / 1GB RAM)에 Oracle Linux 9 Minimal 설치 후,
실제 운영에 바로 사용할 수 있도록 반드시 해줘야 하는 기본 설정들을 우선순위별로 정리해서 알려드릴게요.
먼저 저는 아래 5번 항목의 SWAP 항목을 먼저 설정합니다. 그렇지 않으면 메모리가 너무 작어 아무것도 못하기 때문에, 스왑 메모리 증가 후 아래 작업들을 진행하시면 됩니다. dnf 관련 처음에 너무 느리지만 한번 하고 나면 빨라지니 update 요청 후 기다리면 진행 되니 참고하세요

✅ 1. 기본 패키지 업데이트
Minimal 설치는 유틸리티가 거의 없으므로 먼저 업데이트 + 필수 패키지 설치가 필요합니다.
sudo dnf update -y
sudo dnf install -y vim wget curl net-tools tar unzip chrony git
✅ 2. 시간 동기화(NTP / Chrony)
Oracle Linux 9 기본 NTP는 chrony입니다.
sudo systemctl enable --now chronyd
chronyc sources -v
✅ 3. 방화벽 기본 설정 (firewalld)
불필요한 포트가 열리지 않도록 기본 제한 설정.
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
필요 포트는 이후 개별 추가(예: HTTP/HTTPS 등).
✅ 4. SELinux 모드 확인
운영 환경이라면 enforcing 유지 권장.
테스트 용도라면 permissive 가능.
getenforce
변경하고 싶을 때:
sudo vim /etc/selinux/config
SELINUX=permissive
✅ 5. 스왑(SWAP) 설정 (Micro 인스턴스 1GB RAM 필수)
OCI Micro는 스왑이 기본 제공되지 않습니다.
1GB RAM이면 OOM(Out of Memory) 자주 발생 → 반드시 스왑 추가 추천.
5GB swapfile 생성
sudo fallocate -l 5G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab
확인:
free -h
✅ 6. SSH 보안 설정 강화
비밀번호 로그인 비활성화 또는 포트 변경 권장.
sudo vim /etc/ssh/sshd_config
추천 설정:
PasswordAuthentication no
PermitRootLogin no
반영:
sudo systemctl restart sshd
✅ 7. Fail2ban 설치(SSH 공격 방지)
Minimal은 보안 툴이 없으므로 SSH 보호용 fail2ban 설치 필요.
sudo dnf install -y epel-release
sudo dnf install -y fail2ban fail2ban-firewalld
sudo systemctl enable --now fail2ban
기본 SSH 보호 jail 활성화:
sudo vim /etc/fail2ban/jail.local 또는 jail.conf 로 설정
내용:
[sshd]
enabled = true
반영:
sudo systemctl restart fail2ban
⚠️ 만약 EPEL이 설치되지 않는 경우 (OCI Minimal 이미지에서 발생 가능)
아래처럼 직접 epel-release 패키지를 설치하면 됩니다.
Shell
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
그 후 다시:
Shel
lsudo dnf install -y fail2ban fail2ban-firewalld
✅ 8. OCI 메타데이터 활용 가능 여부 확인
OCI VM에서 네트워크 설정 자동화가 필요한 경우:
curl -s http://169.254.169.254/opc/v1/instance/
✅ 9. 필수 도구 설치(운영 목적에 따라)
Web 운영용
sudo dnf install -y nginx
Java/Spring Boot 운영용
sudo dnf install -y java-17-openjdk java-17-openjdk-devel
DB 클라이언트
sudo dnf install -y mysql
✅ 10. 시스템 모니터링 도구 설치
Minimal에는 htop 등 없음.
sudo dnf install -y htop iotop sysstat
활성화:
sudo systemctl enable --now sysstat
🔧 (선택) 11. Cloud-init 비활성화 (필요 시)
OCI VM에서는 cloud-init이 종종 불필요한 설정을 변경.
비활성화:
sudo systemctl stop cloud-init
sudo systemctl disable cloud-init
⚠️ 12. Micro 인스턴스 특성에 따른 권장사항
✔ 1GB 메모리 → 자바 애플리케이션은 Xms/Xmx 줄여야 함
예)
java -Xms256m -Xmx512m -jar app.jar
✔ DB 서버로 사용 금지
메모리가 너무 작음 → 외부 DB(ATP/Heatwave/MariaDB VM) 추천.
✔ Nginx + Spring Boot 단독 구성은 가능
단, JVM 메모리 튜닝 필요.
📌 요약: 반드시 해야 할 순서
- dnf update
- 기본 유틸 설치
- swap 생성(Strongly recommended)
- firewalld 설정
- SSH 보안 설정
- fail2ban
- 필수 패키지 / 개발환경 설치
- 모니터링 유틸 설치
'Cloud 개발' 카테고리의 다른 글
| 구글 Stitch vs Figma AI 비교: 초보자도 10분 만에 감 잡는 선택 기준 (0) | 2026.02.20 |
|---|---|
| 구글 Stitch 사용법: 디자인 몰라도 10분 만에 앱 UI 만드는 법 (2026년 최신) (0) | 2026.02.17 |
| Grok AI 무료 동영상 생성 가이드 2026: Imagine(상상)으로 6~15초 영상 만들기 + 무료 제한/크레딧 총정리 (0) | 2026.02.10 |
| 구글 Antigravity + VSCode + Gemini 3 Pro 무료 활용 가이드 (0) | 2025.12.11 |
| n8n으로 유튜브 쇼츠 자동화 수익화 A to Z 완벽 가이드 (2025) (0) | 2025.11.27 |