Configurați notificările de acces Telegram
PortGuard Server poate trimite un mesaj Telegram după ce un pachet valid SPA adaugă un regula firewall. Notificările includ numele de gazdă a serverului, IP-ul sursă permis, IP sursă pachet, nume de utilizator SPA, acces solicitat, ora de deschidere, expirare timp și timeout.
1. Creați un bot Telegram
- Deschideți @BotFather în Telegram.
- Trimiteți
/newbotși urmați instrucțiunile. - Copiați Bot Token returnat de BotFather. Se pare că
123456789:AAExampleToken.
Tratați Bot Token ca o parolă. Nu îl angajați în controlul sursei, lipiți-l în mesaje de asistență sau expuneți-l în capturi de ecran.
2. Găsiți destinația Chat ID
Pentru un chat privat, deschide noul bot, selectează Start și trimite-i un mesaj. Pentru un grup, adăugați botul la grup și trimiteți un mesaj sau o comandă către bot poate primi.
Pe server, introduceți Bot Token fără a-l salva în istoricul shell:
read -rsp 'Telegram Bot Token: ' TG_TOKEN; echo
Citiți cele mai recente actualizări ale botului:
curl --config - <<EOF
silent
show-error
fail
url = "https://api.telegram.org/bot${TG_TOKEN}/getUpdates"
EOF
unset TG_TOKEN
Găsiți message.chat.id în răspunsul JSON. Chat ID-urile private sunt în mod normal
numere pozitive. Grupurile Chat ID sunt în mod normal negative și ID-urile supergrupului sunt adesea
începe cu -100.
Dacă result este gol, trimiteți bot-ului un alt mesaj și rulați din nou cererea.
Pentru un canal, puteți folosi @channel_username după adăugarea botului ca canal
administrator cu permisiunea de a posta mesaje.
3. Configurați PortGuard Server
Porniți consola firewall ca root:
sudo portguard-fwknopd --fw-console
Selectați 5. Configure Telegram notifications, apoi introduceți:
- Token bot: jetonul furnizat de BotFather.
- Chat ID: ID-ul numeric privat/grup sau
@channel_username. - Interval minim de notificare:
0trimite o notificare pentru fiecare ciocănire reușită. O valoare mai mare suprimă notificările suplimentare în timpul atâtea secunde.
Confirmați configurația și alegeți y când vi se cere să trimiteți un test
notificare. Consola stochează setările în /etc/fwknop/fwknopd.conf
cu modul 600 și reîncarcă demonul care rulează.
4. Configurați-l manual
Aceleași setări pot fi adăugate direct la /etc/fwknop/fwknopd.conf:
PORTGUARD_TG_BOT_TOKEN 123456789:replace_with_bot_token;
PORTGUARD_TG_CHAT_ID -1001234567890;
PORTGUARD_TG_NOTIFY_INTERVAL 0;
Sunt necesare atât Bot Token, cât și Chat ID. Protejați configurația și reporniți serviciul după o schimbare manuală:
sudo chmod 600 /etc/fwknop/fwknopd.conf
sudo portguard-fwknopd --exit-parse-config \
-c /etc/fwknop/fwknopd.conf \
-a /etc/fwknop/access.conf
sudo systemctl restart fwknopd
5. Verificați notificările
Urmați jurnalul demonului în timp ce trimiteți un pachet SPA valid de la PortGuard Client:
sudo journalctl -u fwknopd -f
O notificare este pusă în coadă numai după ce pachetul SPA este acceptat și un firewall regula a fost adăugată cu succes. O lovitură repetată în timp ce aceeași regulă este încă activ nu poate crea o altă regulă. Așteptați ca regula anterioară să expire înainte testarea din nou.
Dacă testul consolei eșuează sau o bătaie acceptată nu trimite un mesaj, verificați:
- Serverul poate rezolva
api.telegram.orgși poate face conexiuni de ieșire HTTPS. - Chatul privat a fost pornit sau botul are permisiunea de a posta în grup de destinație sau canal.
- Chat ID aparține aceleiași conversații bot utilizate cu
getUpdates. PORTGUARD_TG_NOTIFY_INTERVALnu suprimă notificarea.fwknopda fost reîncărcat sau repornit după o modificare manuală a configurației.
6. Dezactivează notificările
Rulați din nou consola, selectați opțiunea 5, introduceți disable ca Bot Token și
confirma. PortGuard elimină toate cele trei setări Telegram și reîncarcă demonul.