Installa VPN fuq Servers Headless
FreeGuard CLI jaħdem nativistikaement fuq servers Linux headless mingħajr ambjent desktop. Kemm jekk qed tissigura istanza cloud, tipproteġi laboratorju domestiku, jew tiddirieġi t-traffiku tal-kontenituri permezz ta’ VPN, din il-gwida tkopri l-installazzjoni, l-awtentikazzjoni, il-konfigurazzjoni tas-servizz u l-monitoraġġ għal installazzjonijiet ta’ servers ta’ produzzjoni.
Għaliex Tħaddem VPN fuq Server?
Is-servers jimmaniġġjaw traffiku sensittiv: konnessjonijiet tad-database, sejħiet API, trasferimenti ta’ backup, u komunikazzjoni bejn is-servizzi. Li tħaddem VPN fuq is-server innifsu jiżgura li t-traffiku kollu li joħroġ ikun kriptat mingħajr ma tikkonfigura applikazzjonijiet individwali.
Każijiet ta’ użu komuni:
- Istanzi cloud li jaċċessaw APIs b’restrizzjoni ġeografika
- CI/CD runners li jeħtieġu identità tan-network konsistenti
- Servizzi self-hosted li jibbenefikaw minn maskjar tal-IP
- Servers tal-iżvilupp użati minn timijiet distribwiti
Installazzjoni
Ubuntu / Debian
curl -fsSL https://cli.freeguard.com/install.sh | bash
Jew installa mir-repożitorju APT:
curl -fsSL https://cli.freeguard.com/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/freeguard.gpg
echo "deb [signed-by=/usr/share/keyrings/freeguard.gpg] https://apt.freeguard.com stable main" | sudo tee /etc/apt/sources.list.d/freeguard.list
sudo apt update
sudo apt install freeguard-cli
CentOS / RHEL / Fedora
curl -fsSL https://cli.freeguard.com/install.sh | bash
Jew uża r-repożitorju RPM:
sudo rpm --import https://cli.freeguard.com/gpg.key
sudo tee /etc/yum.repos.d/freeguard.repo <<EOF
[freeguard]
name=FreeGuard CLI
baseurl=https://rpm.freeguard.com/stable
gpgcheck=1
gpgkey=https://cli.freeguard.com/gpg.key
EOF
sudo yum install freeguard-cli
Alpine Linux
curl -fsSL https://cli.freeguard.com/install.sh | bash
L-utenti ta’ Alpine jistgħu jkollhom bżonn jinstallaw libc6-compat l-ewwel:
apk add libc6-compat
curl -fsSL https://cli.freeguard.com/install.sh | bash
Ivverifika l-Installazzjoni
freeguard --version
Awtentikazzjoni Headless
Fuq servers mingħajr browser, ma tistax tuża l-fluss ta’ login OAuth default. FreeGuard CLI jipprovdi awtentikazzjoni bbażata fuq l-email għal ambjenti headless.
Login bl-Email
freeguard login --method email
Il-CLI jitolbok iddaħħal l-email tal-kont tiegħek. Kodiċi ta’ verifika jintbagħat f’dak l-indirizz. Daħħal il-kodiċi fit-terminal biex tlesti l-awtentikazzjoni.
$ freeguard login --method email
Enter your email: [email protected]
Verification code sent. Check your inbox.
Enter code: 483291
Login successful.
Login b’Token
Għal installazzjonijiet awtomatizzati, uża token tas-servizz:
freeguard login --method token --token YOUR_SERVICE_TOKEN
Iġġenera tokens tas-servizz mid-dashboard tal-kont tiegħek. It-tokens jistgħu jkunu limitati għal servers speċifiċi u jkollhom skadenza konfigurabbli.
Ivverifika l-Awtentikazzjoni
freeguard status --json | jq '.authenticated'
Tħaddem bħala Servizz systemd
Għal installazzjonijiet ta’ produzzjoni, ħaddem FreeGuard CLI bħala servizz systemd biex jibda mal-boot u jerġa jibda meta jfalli.
Oħloq il-Fajl tas-Servizz
sudo tee /etc/systemd/system/freeguard.service <<EOF
[Unit]
Description=FreeGuard VPN
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
ExecStart=/usr/local/bin/freeguard connect --server us-east --no-color
ExecStop=/usr/local/bin/freeguard disconnect
Restart=on-failure
RestartSec=10
User=root
[Install]
WantedBy=multi-user.target
EOF
Attiva u Ibda
sudo systemctl daemon-reload
sudo systemctl enable freeguard
sudo systemctl start freeguard
Iċċekkja l-Istatus tas-Servizz
sudo systemctl status freeguard
Ara l-Logs
sudo journalctl -u freeguard -f
Scripting b’ --json u --no-color
L-iskripts ta’ produzzjoni għandhom jipparsjaw output strutturata minflok test li jinqara mill-bnedmin.
Output JSON
Kull kmand issapportja --json:
# Connection status
freeguard status --json
Output:
{
"connected": true,
"server": "us-east-1",
"server_name": "New York",
"protocol": "hysteria2",
"uptime": 86400,
"bytes_sent": 1048576,
"bytes_received": 5242880
}
Modalità Mingħajr Kuluri
Neħħi l-kodiċijiet tal-kuluri ANSI għal fajls ta’ log nodfa:
freeguard status --no-color >> /var/log/freeguard-status.log
Eżempju ta’ Scripting
Skript ta’ health-check li jerġa jaqbad meta jfalli:
#!/bin/bash
STATUS=$(freeguard status --json 2>/dev/null)
CONNECTED=$(echo "$STATUS" | jq -r '.connected')
if [ "$CONNECTED" != "true" ]; then
echo "$(date): VPN disconnected, reconnecting..." >> /var/log/freeguard-health.log
freeguard connect --server us-east --json >> /var/log/freeguard-health.log 2>&1
fi
Żidu mal-cron għal kontrolli regolari:
# Check VPN health every 5 minutes
*/5 * * * * /opt/scripts/freeguard-health.sh
Monitoraġġ u Health Checks
Health Check Bażiku
freeguard status --json | jq -r '.connected'
Jirritorna true jew false. Sempliċi biżżejjed għal kwalunkwe sistema ta’ monitoraġġ.
Integrazzjoni ma’ Għodod ta’ Monitoraġġ
Esporta l-istatus lejn Prometheus, Datadog jew kwalunkwe sistema ta’ monitoraġġ li tista’ tesegwixxi kmandi shell:
#!/bin/bash
# prometheus-exporter.sh
STATUS=$(freeguard status --json)
CONNECTED=$(echo "$STATUS" | jq -r '.connected')
UPTIME=$(echo "$STATUS" | jq -r '.uptime')
if [ "$CONNECTED" = "true" ]; then
echo "freeguard_connected 1"
echo "freeguard_uptime_seconds $UPTIME"
else
echo "freeguard_connected 0"
echo "freeguard_uptime_seconds 0"
fi
Twissijiet
Ikkombina l-health check mas-sistema ta’ twissijiet tiegħek. Eżempju b’webhook sempliċi:
#!/bin/bash
CONNECTED=$(freeguard status --json | jq -r '.connected')
if [ "$CONNECTED" != "true" ]; then
curl -X POST https://hooks.example.com/alert \
-H "Content-Type: application/json" \
-d '{"text": "FreeGuard VPN disconnected on '"$(hostname)"'"}'
fi
Konsiderazzjonijiet ta’ Sigurtà
- Ħaddem bħala root: It-tunnel VPN jeħtieġ privileġġi root biex jimmodifika r-rotot tan-network. Is-servizz systemd jaħdem bħala root b’default.
- Ħażna tat-tokens: It-tokens tas-servizz huma maħżuna f’
~/.config/freeguard/. Żgura permessi tal-fajls xierqa (chmod 600). - Regoli tal-firewall: Jekk tuża UFW jew iptables, żgura li l-interface tat-tunnel VPN hija permessa.
- Kill switch: Attiva l-kill switch biex timblokka t-traffiku kollu jekk il-VPN taqta’:
freeguard config set kill-switch true.
Passi Li Jmiss
- FreeGuard CLI — referenza sħiħa tal-kmandi
- Gwida għall-workflow tal-iżviluppaturi — integra l-VPN fl-għodod tal-iżvilupp tiegħek
- Prezzijiet — l-installazzjonijiet fuq servers jaħdmu ma’ kwalunkwe pjan
L-aħħar aġġornament: Marzu 2026