nordabiz/docs/OFFSITE-BACKUP-SETUP.md
Maciej Pienczyn a57187e05f
Some checks are pending
NordaBiz Tests / Unit & Integration Tests (push) Waiting to run
NordaBiz Tests / E2E Tests (Playwright) (push) Blocked by required conditions
NordaBiz Tests / Smoke Tests (Production) (push) Blocked by required conditions
NordaBiz Tests / Send Failure Notification (push) Blocked by required conditions
test: Add comprehensive testing infrastructure
- pytest framework with fixtures for auth (auth_client, admin_client)
- Unit tests for SearchService
- Integration tests for auth flow
- Security tests (OWASP Top 10: SQL injection, XSS, CSRF)
- Smoke tests for production health and backup monitoring
- E2E tests with Playwright (basic structure)
- DR tests for backup/restore procedures
- GitHub Actions CI/CD workflow (.github/workflows/test.yml)
- Coverage configuration (.coveragerc) with 80% minimum
- DR documentation and restore script

Staging environment: VM 248, staging.nordabiznes.pl

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 07:52:34 +01:00

2.3 KiB

Konfiguracja Offsite Backup do PBS

Status: Wymaga ręcznej konfiguracji SSH Data: 2026-02-02

Klucz SSH do dodania na PBS

Klucz publiczny z NORDABIZ-01 (10.22.68.249):

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHHpPjhwjOUBTmo0MFus4QsgAlI5JxbPNlhW0aPV7vIg maciejpi@NORDABIZ-01

Instrukcja konfiguracji

Krok 1: Dodanie klucza na PBS (10.22.68.127)

Zaloguj się na PBS przez konsolę Proxmox lub inną metodę i wykonaj:

# Na PBS (10.22.68.127)
mkdir -p /home/maciejpi/.ssh
echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHHpPjhwjOUBTmo0MFus4QsgAlI5JxbPNlhW0aPV7vIg maciejpi@NORDABIZ-01" >> /home/maciejpi/.ssh/authorized_keys
chmod 700 /home/maciejpi/.ssh
chmod 600 /home/maciejpi/.ssh/authorized_keys
chown -R maciejpi:maciejpi /home/maciejpi/.ssh

Krok 2: Utworzenie katalogów backup na PBS

# Na PBS (10.22.68.127)
sudo mkdir -p /backup/nordabiz/{daily,config}
sudo chown -R maciejpi:maciejpi /backup/nordabiz

Krok 3: Weryfikacja połączenia z NORDABIZ-01

# Na NORDABIZ-01 (10.22.68.249)
ssh maciejpi@10.22.68.127 "echo OK"

Krok 4: Dodanie cron offsite

Po weryfikacji połączenia, utwórz plik cron:

# Na NORDABIZ-01
sudo tee /etc/cron.d/nordabiz-offsite << 'EOF'
# NordaBiz Offsite Backup
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# Sync daily backups do PBS o 4:00
0 4 * * * root rsync -avz --delete /var/backups/nordabiz/daily/ maciejpi@10.22.68.127:/backup/nordabiz/daily/ 2>> /var/log/nordabiznes/backup.log

# Sync config do PBS o 4:30
30 4 * * * root rsync -avz /var/backups/nordabiz/config/ maciejpi@10.22.68.127:/backup/nordabiz/config/ 2>> /var/log/nordabiznes/backup.log
EOF

sudo chmod 644 /etc/cron.d/nordabiz-offsite

Krok 5: Test synchronizacji

# Na NORDABIZ-01
rsync -avz --dry-run /var/backups/nordabiz/daily/ maciejpi@10.22.68.127:/backup/nordabiz/daily/

Alternatywny serwer offsite

Jeśli PBS jest niedostępny, można użyć r11-git-inpi (10.22.68.180) jako alternatywy:

# Zmień IP w cron na 10.22.68.180
# Dodaj klucz SSH do Gitea server

Weryfikacja

# Sprawdź backupy na PBS
ssh maciejpi@10.22.68.127 "ls -la /backup/nordabiz/daily/"

# Sprawdź logi
ssh maciejpi@10.22.68.249 "tail -20 /var/log/nordabiznes/backup.log"