Kusambaza VPN kwenye Seva zisizo na Kiolesura cha Picha
FreeGuard CLI inafanya kazi asili kwenye seva za Linux zisizo na kiolesura cha picha bila kuhitaji mazingira ya eneo-kazi. Iwe unalinda mfano wa wingu, kulinda maabara ya nyumbani, au kuelekeza trafiki ya kontena kupitia VPN, mwongozo huu unashughulikia usakinishaji, uthibitishaji, usanidi wa huduma na ufuatiliaji kwa usambazaji wa seva za uzalishaji.
Kwa nini Kuendesha VPN kwenye Seva?
Seva zinashughulikia trafiki nyeti: miunganisho ya hifadhidata, simu za API, uhamishaji wa nakala rudufu, na mawasiliano kati ya huduma. Kuendesha VPN kwenye seva yenyewe kunahakikisha trafiki yote inayotoka imesimbwa bila kusanidi programu binafsi.
Matumizi ya kawaida:
- Mifano ya wingu inayofikia API zilizozuiwa kijiografia
- Waendesha CI/CD wanaohitaji utambulisho thabiti wa mtandao
- Huduma zilizojihifadhi zinazofaidika na uficho wa IP
- Seva za maendeleo zinazotumiwa na timu zilizosambazwa
Usakinishaji
Ubuntu / Debian
curl -fsSL https://cli.freeguard.com/install.sh | bash
Au sakinisha kutoka hazina ya 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
Au tumia hazina ya 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
Watumiaji wa Alpine wanaweza kuhitaji kusakinisha libc6-compat kwanza:
apk add libc6-compat
curl -fsSL https://cli.freeguard.com/install.sh | bash
Thibitisha Usakinishaji
freeguard --version
Uthibitishaji bila Kiolesura cha Picha
Kwenye seva zisizo na kivinjari, huwezi kutumia mtiririko wa kuingia wa OAuth chaguomsingi. FreeGuard CLI hutoa uthibitishaji kupitia barua pepe kwa mazingira yasiyo na kiolesura cha picha.
Kuingia kwa Barua Pepe
freeguard login --method email
CLI inakuomba kuingiza barua pepe ya akaunti yako. Nambari ya uthibitishaji inatumwa kwa anwani hiyo. Ingiza nambari kwenye terminal ili kukamilisha uthibitishaji.
$ freeguard login --method email
Enter your email: [email protected]
Verification code sent. Check your inbox.
Enter code: 483291
Login successful.
Kuingia kwa Tokeni
Kwa usambazaji otomatiki, tumia tokeni ya huduma:
freeguard login --method token --token YOUR_SERVICE_TOKEN
Tengeneza tokeni za huduma kutoka dashibodi ya akaunti yako. Tokeni zinaweza kupunguzwa kwa seva maalum na kuwa na muda wa kumalizika unaoweza kusanidiwa.
Thibitisha Uthibitishaji
freeguard status --json | jq '.authenticated'
Kuendesha kama Huduma ya systemd
Kwa usambazaji wa uzalishaji, endesha FreeGuard CLI kama huduma ya systemd ili ianze wakati wa boot na ianze tena inaposhindwa.
Unda Faili ya Huduma
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
Wezesha na Anza
sudo systemctl daemon-reload
sudo systemctl enable freeguard
sudo systemctl start freeguard
Angalia Hali ya Huduma
sudo systemctl status freeguard
Tazama Kumbukumbu
sudo journalctl -u freeguard -f
Kuandika Hati na --json na --no-color
Hati za uzalishaji zinapaswa kuchambua matokeo yaliyopangwa badala ya maandishi yanayosomeka na binadamu.
Matokeo ya JSON
Kila amri inasaidia --json:
# Connection status
freeguard status --json
Matokeo:
{
"connected": true,
"server": "us-east-1",
"server_name": "New York",
"protocol": "hysteria2",
"uptime": 86400,
"bytes_sent": 1048576,
"bytes_received": 5242880
}
Hali bila Rangi
Ondoa nambari za rangi za ANSI kwa faili safi za kumbukumbu:
freeguard status --no-color >> /var/log/freeguard-status.log
Mfano wa Hati
Hati ya ukaguzi wa afya inayounganisha tena inaposhindwa:
#!/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
Ongeza kwenye cron kwa ukaguzi wa mara kwa mara:
# Check VPN health every 5 minutes
*/5 * * * * /opt/scripts/freeguard-health.sh
Ufuatiliaji na Ukaguzi wa Afya
Ukaguzi wa Afya wa Msingi
freeguard status --json | jq -r '.connected'
Inarudisha true au false. Rahisi kutosha kwa mfumo wowote wa ufuatiliaji.
Ujumuishaji na Zana za Ufuatiliaji
Hamisha hali kwa Prometheus, Datadog au mfumo wowote wa ufuatiliaji unaoweza kutekeleza amri za 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
Tahadhari
Changanya ukaguzi wa afya na mfumo wako wa tahadhari. Mfano na webhook rahisi:
#!/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
Mazingatio ya Usalama
- Endesha kama root: Handaki ya VPN inahitaji mamlaka ya root kubadilisha njia za mtandao. Huduma ya systemd inaendesha kama root kwa chaguomsingi.
- Uhifadhi wa tokeni: Tokeni za huduma zimehifadhiwa katika
~/.config/freeguard/. Hakikisha ruhusa sahihi za faili (chmod 600). - Sheria za kinga ya moto: Ikiwa unatumia UFW au iptables, hakikisha kiolesura cha handaki ya VPN kimeruhusiwa.
- Kill switch: Wezesha kill switch kuzuia trafiki yote ikiwa VPN itakatika:
freeguard config set kill-switch true.
Hatua Zifuatazo
- FreeGuard CLI — rejea kamili ya amri
- Mwongozo wa mtiririko wa kazi wa msanidi — jumuisha VPN katika zana zako za maendeleo
- Bei — usambazaji wa seva unafanya kazi na mpango wowote
Imesasishwa mwisho: Machi 2026