[Unit] Description=@APP_NAME@ — AriMail gateway (@MAIL_HOST@: webmail, IMAP/POP3/SMTP, Resend or Haraka) Documentation=https://source.ibit.kr/OZ-Group/AriMail After=network-online.target Wants=network-online.target [Service] Type=simple # 사이트 설정(deploy/sites/@SITE@.env)의 실행 계정. www 사이트와 연동하면 www DB 를 같은 권한으로 읽기 위해 www 와 같은 계정을 씁니다. User=@APP_USER@ Group=@APP_USER@ WorkingDirectory=@APP_DIR@/current EnvironmentFile=@ETC_DIR@/gateway.env Environment=NODE_ENV=production Environment=HOST=127.0.0.1 Environment=PORT=@PORT@ ExecStart=@NODE_BIN@ server/index.mjs Restart=always RestartSec=3 # 110/143/465/587/993/995 포트를 일반 계정으로 열기 위한 권한 AmbientCapabilities=CAP_NET_BIND_SERVICE CapabilityBoundingSet=CAP_NET_BIND_SERVICE NoNewPrivileges=yes PrivateTmp=yes ProtectSystem=strict ProtectHome=yes # 게이트웨이 DB·설정 파일(config.json, 1.0.0)·초기 설정 토큰과(www 연동 시) WAL 모드 www DB 를 읽기 위한 공유 메모리(-shm) 경로 ReadWritePaths=@APP_DIR@/data @EXTRA_RW@ ProtectKernelTunables=yes ProtectControlGroups=yes RestrictSUIDSGID=yes LockPersonality=yes StandardOutput=journal StandardError=journal SyslogIdentifier=@APP_NAME@ [Install] WantedBy=multi-user.target