Files
homepage-nuova/STATO_SESSIONE_2026-09-01.md
T
zomas f5c763be7b Gitea theme: capital theta (circle+H) logo + homepage senza badge
- Logo/favicon ridisegnati come theta maiuscola: cerchio (anello)
  con 'H' centrata, clearance verificata (non tocca l'anello); ring
  ispessito per la favicon; centratura ottica verificata.
- Rimosso il badge 'Self-hosted Git' dal hero della homepage (era
  esteticamente di troppo) - CSS e markup.
- Aggiornati generate_theta.py, README, home.tmpl; caricati sul VPS in
  staging (md5 locali == remoti); tarball ricostruito.
- Salvataggio iniziale dell'intero admin pack in git.
2026-09-01 16:54:15 +02:00

4.0 KiB

STATO SESSIONE — Gitea + Cloudflare (1 set 2026)

File di memorizzazione del lavoro fatto, per riprendere dopo un cambio di ambito. Aggiornato: 2026-09-01.


1. Obiettivo della sessione

Deploy di Gitea sul VPS OVH (145.239.94.49, Debian 12) come https://git.zomas.net per tracciare il progetto Tacticus e aprirlo (in futuro) a contributi esterni. Backup automatico incluso. Tutto completato e verificato.


2. Stato finale (TUTTO FUNZIONANTE)

Componente Stato
Gitea 1.27.3 attivo (systemd, /etc/gitea/app.ini), DB sqlite /var/lib/gitea/data/gitea.db
Web https://git.zomas.net → Apache → 127.0.0.1:3000 (200 esterno)
SSH git server built-in Gitea su 0.0.0.0:2222 (host key ed25519/rsa/ecdsa)
SSH cliente questo PC → [email protected]:2222 (IP origine 145.239.94.49, chiave ~/.ssh/id_ed25519)
Repo zomas/tacticus privato, main, con README + bot/.env.example
Mailer smtp+starttls → smtp.gmail.com:587, App Password, test email ok
2FA attiva (richiesta globale) + TWO_FACTOR_AUTH=enforced
Backup /var/backups/gitea/gitea-dump-*.zip (gitea dump, cron giornaliero 02:30, retention 14gg)
Cloudflare proxy arancio su git/zomas.net/zomas.org, SSL Full (strict), Universal SSL, CAA a posto

Warning Gitea: TUTTI RISOLTI

  • https://(null)/ → colpa di RequestHeader set Host %{HTTP_HOST}e in Apache (Host vuoto). Rimosso, basta ProxyPreserveHost On.
  • Deprecazioni [mailer].MAILER_TYPE/HOST/IS_TLS_ENABLED/SKIP_VERIFY → opzioni moderne (PROTOCOL=smtp+starttls, SMTP_ADDR, SMTP_PORT). Log: "NESSUNA deprecazione residua".

3. Errori incontrati e soluzioni (utile se si ripete)

  1. (null) nel warningRequestHeader set Host %{HTTP_HOST}e sovrascrive Host con vuoto (variabile senza valore). Fix: riga rimossa.
  2. Server SSH non partiva → Gitea default START_SSH_SERVER=false (usa OpenSSH esterno). Config: START_SSH_SERVER=true + SSH_LISTEN_HOST=0.0.0.0. Con built-in, l'utente SSH è il RUN_USER di Gitea = gitea (NON git, NON zomas): remote = [email protected]:zomas/tacticus.git.
  3. git@ "Permission denied" → normale: il client SSH deve usare gitea@. Config in ~/.ssh/config: Host git.zomas.net → HostName 145.239.94.49, Port 2222, User gitea.
  4. Cloudflare non passa TCP 2222 → il record proxied serve solo 80/443; per SSH si punta all'IP origine via HostName 145.239.94.49.
  5. SSH rifiuto public key "invalid \r" → il .pub finiva con CRLF; STRIPPARE \r prima di POST all'API POST /api/v1/user/keys.
  6. Backup "permission denied"gitea dump gira come utente gitea, che non può scrivere in /var/backups/gitea (root). Fix: dump in /tmp, poi mv da root.
  7. Sole IPv6 da questo PCgit.zomas.net risolve solo IPv6 (anycast CF); per curl ok, per ssh serve IP IPv4 esplicito.

4. Credenziali / segreti (NON committare)

  • /home/zomas/vps-admin/vps_ssh.envVPS_*, TOKEN_CLOUDFLARE, GITEA_TOKEN
  • bot/.env — chiavi API Tacticus + token bot Telegram (niente nel repo)
  • Il repo tacticus.git NON contiene segreti (verificato: .env, vps_ssh.env, risultati.txt, script setup esclusi da .gitignore).

5. Comandi utili

# SSH git (da questo PC)
git -C /home/zomas/tacticus remote -v         # [email protected]:zomas/tacticus.git
git -C /home/zomas/tacticus push              # aggiorna il remote

# Backup manuale (da root sul VPS)
/usr/local/sbin/backup_gitea.sh
ls -lh /var/backups/gitea/                    # retention 14 giorni

# Stato servizi
systemctl status gitea apache2 cron           # VPS
ss -tlnp | grep -E ':(2222|3000)\b'

6. PROSSIMI PASSI (cambio di ambito dell'utente)

  • (Opzionale) Download automatico dei backup VPS sul PC locale (ora solo sul VPS).
  • (Opzionale) Girare il repo tacticus da privato a pubblico + aprire contributi.
  • (Opzionale) daily.py --fresh (proposta rimasta aperta dal 31 ago, mai richiesta).