zio-server 설치 SW 목록 및 구성 명세
서버: zio-server | IP: zioinfo.co.kr | 작성일: 2026-05-30
OS: Ubuntu 24.04.1 LTS (Noble Numbat) | Provider: NCloud (네이버 클라우드)
1. 서버 사양
| 항목 |
사양 |
| CPU |
AMD EPYC 9454P (2 vCPU) |
| RAM |
7.8 GB |
| Disk |
99 GB (사용 15 GB / 여유 80 GB) |
| OS |
Ubuntu 24.04.1 LTS x86_64 |
| 네트워크 |
공인 IP zioinfo.co.kr |
2. 설치 소프트웨어 목록
2-1. 런타임 / 언어
| SW |
버전 |
설치 경로 |
용도 |
| OpenJDK |
21.0.10 |
/usr/lib/jvm/java-21-openjdk-amd64 |
Spring Boot 실행 |
| Node.js |
20.20.2 (LTS) |
/usr/bin/node |
React 빌드 |
| npm |
10.8.2 |
/usr/bin/npm |
패키지 관리 |
| Python |
3.12.3 |
/usr/bin/python3 |
GUARDiA ITSM, 배포 스크립트 |
| Apache Maven |
3.8.7 |
/usr/share/maven |
Spring Boot 빌드 |
2-2. 웹 서버 / 프록시
| SW |
버전 |
설치 경로 |
용도 |
| Nginx |
1.24.0 |
/etc/nginx |
리버스 프록시, 정적 파일 서빙 |
2-3. 데이터베이스
| SW |
버전 |
설치 경로 |
용도 |
| PostgreSQL |
16.11 |
/var/lib/postgresql/16 |
GUARDiA ITSM DB, Gitea DB |
| SQLite (내장) |
3.45.3 |
JAR 내장 |
지오정보기술 홈페이지 DB |
PostgreSQL 데이터베이스 목록:
| DB 이름 |
소유자 |
용도 |
guardia_db |
guardia |
GUARDiA ITSM 운영 DB |
zioinfo_db |
guardia |
지오정보기술 예비 DB |
gitea_db |
gitea |
Gitea Git 서버 DB |
2-4. AI / LLM
| SW |
버전 |
설치 경로 |
용도 |
| Ollama |
0.24.0 |
/usr/local/bin/ollama |
온프레미스 LLM 엔진 |
| Llama3:8b |
— |
~/.ollama/models |
GUARDiA AI 에이전트 LLM (4.7 GB) |
2-5. DevOps / CI-CD
| SW |
버전 |
설치 경로 |
용도 |
| Gitea |
1.22.3 |
/opt/gitea/bin/gitea |
온프레미스 Git 서버 |
| Jenkins |
2.504.1 LTS |
/opt/jenkins/jenkins.war |
CI/CD 파이프라인 (초기설정 필요) |
| ZioInfo Deploy Server |
— |
/opt/zioinfo/deploy_server.py |
Gitea 웹훅 → 자동 빌드·배포 (Python) |
2-6. 애플리케이션 서비스
| 서비스 |
기술 스택 |
버전 |
용도 |
| 지오정보기술 홈페이지 |
Spring Boot 3.2.5 + React |
1.0.0 |
(주)지오정보기술 기업 홈페이지 |
| GUARDiA ITSM |
Python FastAPI + PostgreSQL |
— |
AI 기반 인프라 자율 운영 ITSM |
3. 포트 구성
| 포트 |
프로토콜 |
서비스 |
외부 접근 |
| 22 |
TCP |
SSH |
✅ 허용 (키 인증) |
| 80 |
TCP |
Nginx (홈페이지) |
✅ 허용 |
| 443 |
TCP |
HTTPS (미설정) |
— |
| 3000 |
TCP |
Gitea Git 서버 |
✅ 허용 |
| 8001 |
TCP |
GUARDiA ITSM (FastAPI) |
✅ 허용 |
| 8080 |
TCP |
Jenkins CI/CD |
✅ 허용 |
| 8082 |
TCP |
Spring Boot (홈페이지 API) |
✅ 허용 |
| 8088 |
TCP |
Nginx → Jenkins 프록시 |
✅ 허용 |
| 9001 |
TCP |
Nginx → GUARDiA 프록시 |
✅ 허용 |
| 9999 |
TCP |
Deploy Webhook 서버 |
✅ 허용 (내부 권장) |
| 5432 |
TCP |
PostgreSQL |
❌ 내부 전용 (127.0.0.1) |
| 11434 |
TCP |
Ollama LLM API |
❌ 내부 전용 (127.0.0.1) |
4. 디렉터리 구조
/
├── etc/
│ ├── nginx/
│ │ ├── sites-available/
│ │ │ ├── zioinfo # 홈페이지 Nginx 설정
│ │ │ ├── guardia # GUARDiA ITSM Nginx 설정
│ │ │ ├── gitea # Gitea Nginx 설정
│ │ │ └── jenkins # Jenkins Nginx 설정
│ │ └── sites-enabled/ # 활성 설정 심볼릭 링크
│ ├── gitea/
│ │ └── app.ini # Gitea 설정 파일
│ └── systemd/system/
│ ├── zioinfo.service # 홈페이지 Spring Boot 서비스
│ ├── zioinfo-deploy.service # CI/CD 웹훅 서버
│ ├── guardia.service # GUARDiA ITSM 서비스
│ ├── gitea.service # Gitea 서비스
│ ├── jenkins.service # Jenkins 서비스
│ └── ollama.service # Ollama LLM 서비스
│
├── opt/
│ ├── zioinfo/
│ │ ├── app/
│ │ │ ├── app.jar # Spring Boot 실행 JAR
│ │ │ └── data/ # SQLite DB 디렉터리
│ │ ├── src/ # 소스 코드 (Gitea 클론)
│ │ └── deploy_server.py # CI/CD 웹훅 서버
│ ├── guardia/
│ │ ├── app/ # GUARDiA ITSM 소스
│ │ ├── venv/ # Python 가상환경
│ │ ├── logs/ # 애플리케이션 로그
│ │ └── uploads/ # 업로드 파일
│ ├── gitea/
│ │ └── bin/gitea # Gitea 바이너리
│ └── jenkins/
│ └── jenkins.war # Jenkins WAR 파일
│
├── var/
│ ├── www/
│ │ └── zioinfo/ # React 빌드 정적 파일
│ ├── lib/
│ │ ├── jenkins/ # Jenkins 홈 디렉터리
│ │ └── gitea/ # Gitea 데이터 디렉터리
│ │ └── data/repositories/ # Git 저장소
│ └── log/
│ └── zioinfo/
│ ├── spring.log # Spring Boot 로그
│ └── deploy.log # CI/CD 배포 로그
│
└── home/
└── git/ # Gitea 시스템 사용자 홈
5. 계정 및 자격증명
보안 주의: 이 문서는 내부망 전용입니다. 외부 공개 금지.
5-1. 시스템 계정
| 계정 |
역할 |
비밀번호 |
root |
서버 관리자 |
1q2w3e!Q |
ubuntu |
앱 실행 계정 (예비) |
ubuntu123 |
jenkins |
Jenkins / Spring Boot 실행 |
시스템 계정 (로그인 불가) |
git |
Gitea 실행 |
시스템 계정 (로그인 불가) |
postgres |
PostgreSQL 관리 |
시스템 계정 |
5-2. 서비스 계정
| 서비스 |
아이디 |
비밀번호 |
권한 |
| 홈페이지 관리자 |
admin |
Admin@2026! |
전체 관리 |
| Gitea |
zio |
Zio@Admin2026! |
관리자 |
| Jenkins |
admin |
Admin@2026! |
전체 |
| PostgreSQL (guardia) |
guardia |
G@urd1a_2026! |
guardia_db, zioinfo_db |
| PostgreSQL (gitea) |
gitea |
G1tea_2026! |
gitea_db |
| GUARDiA ITSM |
admin |
Admin@2026! |
전체 |
5-3. SSH 접속
# PEM 키 방식 (권장)
ssh -i "zio-server-key.pem" root@zioinfo.co.kr
# 비밀번호 방식
ssh root@zioinfo.co.kr
# 비밀번호: 1q2w3e!Q
6. Python 가상환경 패키지 (GUARDiA)
경로: /opt/guardia/venv
| 패키지 |
버전 |
용도 |
| fastapi |
0.115.0 |
API 프레임워크 |
| uvicorn |
0.30.0 |
ASGI 서버 |
| sqlalchemy |
2.0.35 |
ORM |
| asyncpg |
0.29.0 |
PostgreSQL 비동기 드라이버 |
| psycopg2-binary |
2.9.9 |
PostgreSQL 드라이버 |
| paramiko |
3.4.0 |
SSH/SFTP 에이전트리스 연결 |
| python-jose |
3.3.0 |
JWT 인증 |
| passlib |
1.7.4 |
비밀번호 해싱 |
| openpyxl |
3.1.5 |
Excel 출력 |
| cryptography |
43.0.1 |
AES-256 암호화 |
7. Spring Boot 의존성 (홈페이지)
| 의존성 |
버전 |
용도 |
| spring-boot-starter-web |
3.2.5 |
REST API |
| spring-boot-starter-data-jpa |
3.2.5 |
ORM |
| spring-boot-starter-security |
3.2.5 |
JWT 인증 |
| spring-boot-starter-mail |
3.2.5 |
이메일 발송 |
| sqlite-jdbc |
3.45.3.0 |
SQLite 드라이버 |
| jjwt-api |
0.12.3 |
JWT 처리 |
| lombok |
— |
코드 생성 |
8. Gitea 저장소 목록
| 저장소 |
URL |
용도 |
zio/zioinfo-web |
http://zioinfo.co.kr:3000/zio/zioinfo-web |
홈페이지 소스 |
zio/guardia-itsm |
http://zioinfo.co.kr:3000/zio/guardia-itsm |
GUARDiA ITSM 소스 |
9. 방화벽 (UFW) 규칙
# 현재 활성 규칙 조회
ufw status
# 주요 허용 포트
22/tcp (SSH)
80/tcp (HTTP - 홈페이지)
443/tcp (HTTPS - 미사용)
3000/tcp (Gitea)
8001/tcp (GUARDiA ITSM)
8080/tcp (Jenkins)
8082/tcp (Spring Boot API)
9999/tcp (Deploy Webhook)