Secuday
Windows PC 보안 점검 솔루션 신규 개발 및 C/S 확장
섹션 제목: “Windows PC 보안 점검 솔루션 신규 개발 및 C/S 확장”- 수행 기간: 2026.04.06–2026.06.26
- 수행 역할: 프로젝트 관리(PM), Windows 에이전트 개발
- 직접 개발: Go/Wails v2 백엔드, C# 시스템 트레이, Named Pipe IPC, 보안 점검 및 서버 연동
- 협업: React/TypeScript 사용자 화면은 웹 개발자가 구현, Wails 바인딩 및 이벤트 연동 수행
프로젝트 개요
섹션 제목: “프로젝트 개요”Secuday는 기업 내 Windows PC의 보안 설정을 점검하고 중앙 관리 서버의 정책에 따라 검사 결과를 수집하는 엔드포인트 보안 관리 솔루션입니다.
Secuday는 신규 제품으로 개발했으며, 1차에서는 클라이언트 단독 실행형 보안 점검 기능을 구축하고 2차에서는 중앙 관리 서버와 연계하는 C/S 구조로 확장했습니다. 2차 개발에서 인증 상태 관리, 정책 동기화, 수동·정기 점검, 검사 결과 전송, 보고서 생성과 자동 업데이트 기능을 Go 기반 에이전트에 구현했습니다.
시스템 구성
섹션 제목: “시스템 구성”주요 개발 기능
섹션 제목: “주요 개발 기능”| 모듈 | 구현 내용 | 사용 기술 |
|---|---|---|
| Application Core | 로그인 상태, 실행 흐름, 사용자 화면 호출·이벤트 전달 | Go, Wails v2 |
| 서버 통신 | 사용자 인증, 정책 수신, 결과 전송, 연결 복구 | REST, WebSocket, JSON |
| 보안 점검 엔진 | Windows 보안 항목 상태 조회·평가 및 수동/예약 점검 | Registry, WMI, secedit |
| 예약 스케줄러 | 서버 정책에 따른 일간·주간·월간 점검 예약 | Go Scheduler |
| 로컬 데이터 | 정책·스케줄 보호, 미전송 결과 저장·재전송 | DPAPI, 로컬 큐 |
| 인증 정보 | 로그인 유지에 필요한 인증 정보 관리 | Windows Credential Manager |
| 보고서·업데이트 | 검사 결과 Excel 생성, 버전 확인·다운로드·설치 실행 | Excelize, Auto Updater |
| 시스템 트레이 | 로그인, 상태 표시, 메뉴, 알림, 프로그램 화면 실행 | C#, .NET Framework 4.8 |
핵심 설계 1. Wails와 Windows 시스템 트레이의 프로세스 분리
섹션 제목: “핵심 설계 1. Wails와 Windows 시스템 트레이의 프로세스 분리”Wails에서 요구되는 Windows 시스템 트레이 동작을 구현하는 데 제약이 있어, 트레이를 별도의 C#/.NET Framework 4.8 프로세스로 개발했습니다.
Go 에이전트와 C# 트레이 간에는 Named Pipe를 사용해 명령과 로그인 상태를 전달했습니다. React UI는 점검 화면과 결과 조회를 담당하고, Go 백엔드가 애플리케이션 상태와 시스템 기능을 관리하도록 역할을 나눴습니다.
핵심 설계 2. 중앙 정책 기반 보안 점검 자동화
섹션 제목: “핵심 설계 2. 중앙 정책 기반 보안 점검 자동화”서버에서 전달된 점검 정책을 로컬에 반영하고 예약 시각에 검사할 수 있도록 스케줄러를 구현했습니다. Windows 보안 설정은 레지스트리, WMI, secedit 등을 통해 조회했습니다.
- 검사 항목: 로그인 암호, 화면보호기, 무선 네트워크, 공유 폴더, UAC, 방화벽, Defender, 시간 동기화 등
- 수동 점검과 정기 점검에서 공통 검사 엔진 사용
- 일간·주간·월간 검사 예약 및 정책 변경 반영
- 검사 결과와 조치 안내 정보를 사용자 화면에 전달
핵심 설계 3. 통신 장애 상황의 결과 보관과 재전송
섹션 제목: “핵심 설계 3. 통신 장애 상황의 결과 보관과 재전송”네트워크 연결이 불안정해도 PC 보안 점검을 수행하고 결과를 관리할 수 있도록 로컬 미전송 결과 큐를 구현했습니다. 서버 전송에 실패한 결과는 보관하고, 연결이 복구되면 재전송하도록 처리했습니다.
프로젝트 관리 및 협업
섹션 제목: “프로젝트 관리 및 협업”- Windows 에이전트의 주요 기능 범위 및 개발 일정 관리
- Go 백엔드와 React UI 사이의 Wails 바인딩·이벤트 인터페이스 협의
- 서버 인증·정책·결과 API와 로컬 에이전트 기능 통합
- Go, C#, React로 구성된 애플리케이션의 동작 흐름 및 기능 연계 검토