VPN-i juurutamine peata serverites
FreeGuard CLI töötab natiivselt peata Linux serverites ilma töölauakeskkonda vajamata. Olenemata sellest, kas turvate pilveeksemplari, kaitsete kodulaborit või suunate konteinerliiklust läbi VPN-i, käsitleb see juhend paigaldamist, autentimist, teenuse seadistamist ja jälgimist tootmisserverite juurutuste jaoks.

VPN-i juurutamine peata serverites

FreeGuard CLI töötab natiivselt peata Linux serverites ilma töölauakeskkonda vajamata. Olenemata sellest, kas turvate pilveeksemplari, kaitsete kodulaborit või suunate konteinerliiklust läbi VPN-i, käsitleb see juhend paigaldamist, autentimist, teenuse seadistamist ja jälgimist tootmisserverite juurutuste jaoks.

Miks käivitada VPN serveris?

Serverid käsitlevad tundlikku liiklust: andmebaasiühendused, API-päringud, varukoopiate ülekanded ja teenustevaheline suhtlus. VPN-i käivitamine serveris endas tagab, et kogu väljuv liiklus on krüpteeritud ilma üksikuid rakendusi seadistamata.

Levinumad kasutusjuhud:

  • Pilveeksemplarid, mis pääsevad ligi geograafiliselt piiratud API-dele
  • CI/CD jooksutajad, mis vajavad järjepidevat võrguidentiteeti
  • Ise majutatud teenused, mis saavad kasu IP-aadressi maskeerimisest
  • Arendusserverid, mida kasutavad hajutatud meeskonnad

Paigaldamine

Ubuntu / Debian

curl -fsSL https://cli.freeguard.com/install.sh | bash

Või paigaldage APT hoidlast:

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

Või kasutage RPM hoidlat:

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

Alpine’i kasutajad peavad võib-olla esmalt paigaldama libc6-compat:

apk add libc6-compat
curl -fsSL https://cli.freeguard.com/install.sh | bash

Paigalduse kontrollimine

freeguard --version

Peata autentimine

Brauserita serverites ei saa kasutada vaikimisi OAuth sisselogimist. FreeGuard CLI pakub e-postipõhist autentimist peata keskkondade jaoks.

E-posti sisselogimine

freeguard login --method email

CLI palub teil sisestada oma konto e-posti aadressi. Sellele aadressile saadetakse kinnituskood. Autentimise lõpuleviimiseks sisestage kood terminalis.

$ freeguard login --method email
Enter your email: [email protected]
Verification code sent. Check your inbox.
Enter code: 483291
Login successful.

Tokenipõhine sisselogimine

Automatiseeritud juurutuste jaoks kasutage teenusetokenit:

freeguard login --method token --token YOUR_SERVICE_TOKEN

Genereerige teenusetokenid oma konto juhtpaneelilt. Tokenid saab piirata konkreetsete serveritega ja neile saab seadistada aegumistähtaja.

Autentimise kontrollimine

freeguard status --json | jq '.authenticated'

Käivitamine systemd teenusena

Tootmisjuurutuste jaoks käivitage FreeGuard CLI systemd teenusena, et see käivituks alglaadimise ajal ja taaskäivituks tõrke korral.

Teenusefaili loomine

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

Lubamine ja käivitamine

sudo systemctl daemon-reload
sudo systemctl enable freeguard
sudo systemctl start freeguard

Teenuse oleku kontrollimine

sudo systemctl status freeguard

Logide vaatamine

sudo journalctl -u freeguard -f

Skriptimine parameetritega --json ja --no-color

Tootmisskriptid peaksid parsima struktureeritud väljundit, mitte inimloetavat teksti.

JSON väljund

Iga käsk toetab --json:

# Connection status
freeguard status --json

Väljund:

{
  "connected": true,
  "server": "us-east-1",
  "server_name": "New York",
  "protocol": "hysteria2",
  "uptime": 86400,
  "bytes_sent": 1048576,
  "bytes_received": 5242880
}

Värvivaba režiim

Eemaldage ANSI värvikoodid puhtate logifailide jaoks:

freeguard status --no-color >> /var/log/freeguard-status.log

Skriptimise näide

Tervisekontrolli skript, mis tõrke korral taasühendub:

#!/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

Lisage see cron-i regulaarsete kontrollide jaoks:

# Check VPN health every 5 minutes
*/5 * * * * /opt/scripts/freeguard-health.sh

Jälgimine ja tervisekontrollid

Põhiline tervisekontroll

freeguard status --json | jq -r '.connected'

Tagastab true või false. Piisavalt lihtne mis tahes jälgimissüsteemi jaoks.

Integratsioon jälgimistööriistadega

Eksportige olek Prometheusesse, Datadogi või mis tahes jälgimissüsteemi, mis suudab käivitada shell-käske:

#!/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

Teavitused

Kombineerige tervisekontroll oma teavitussüsteemiga. Näide lihtsa webhookiga:

#!/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

Turbekaalutlused

  • Käivitamine root-õigustes: VPN-tunnel vajab võrguteede muutmiseks root-õigusi. Systemd teenus töötab vaikimisi root-õigustes.
  • Tokenite salvestamine: Teenusetokenid salvestatakse kausta ~/.config/freeguard/. Veenduge, et failiõigused on asjakohased (chmod 600).
  • Tulemüürireeglid: Kui kasutate UFW-d või iptables-i, veenduge, et VPN-tunneli liides on lubatud.
  • Kill switch: Lubage kill switch kogu liikluse blokeerimiseks, kui VPN katkeb: freeguard config set kill-switch true.

Järgmised sammud

Viimati uuendatud: märts 2026