Configureer Telegram-toegangsmeldingen
PortGuard Server kan een Telegram-bericht verzenden nadat een geldig SPA-pakket een firewall-regel. Meldingen omvatten de hostnaam van de server, het toegestane bron-IP, pakketbron-IP, SPA gebruikersnaam, gevraagde toegang, openingstijd, vervaldatum tijd en time-out.
1. Maak een Telegram-bot
- Open @BotFather in Telegram.
- Verzend
/newboten volg de aanwijzingen. - Kopieer de Bot Token die is geretourneerd door BotFather. Het lijkt erop
123456789:AAExampleToken.
Behandel de Bot Token als een wachtwoord. Leg het niet vast aan broncontrole, maar plak het in ondersteuningsberichten, of laat het zien in schermafbeeldingen.
2. Zoek de bestemming Chat ID
Voor een privéchat opent u de nieuwe bot, selecteert u Start en stuurt u een bericht. Voeg voor een groep de bot toe aan de groep en stuur een bericht of opdracht naar de bot kan ontvangen.
Voer op de server de Bot Token in zonder deze op te slaan in de shell-geschiedenis:
read -rsp 'Telegram Bot Token: ' TG_TOKEN; echo
Lees de laatste updates van de bot:
curl --config - <<EOF
silent
show-error
fail
url = "https://api.telegram.org/bot${TG_TOKEN}/getUpdates"
EOF
unset TG_TOKEN
Zoek message.chat.id in het JSON-antwoord. Privé Chat ID's zijn normaal gesproken
positieve cijfers. Groep Chat ID's zijn normaal gesproken negatief en supergroep-ID's vaak
begin met -100.
Als result leeg is, stuur de bot dan nog een bericht en voer het verzoek opnieuw uit.
Voor een kanaal kunt u @channel_username gebruiken nadat u de bot als kanaal hebt toegevoegd
beheerder met toestemming om berichten te plaatsen.
3. Configureer PortGuard Server
Start de firewallconsole als root:
sudo portguard-fwknopd --fw-console
Selecteer 5. Configure Telegram notifications en voer vervolgens in:
- Bot-token: het token geleverd door BotFather.
- Chat ID: de numerieke privé-/groeps-ID of
@channel_username. - Minimaal meldingsinterval:
0stuurt voor elke melding een melding succesvolle klop. Een grotere waarde onderdrukt aanvullende meldingen tijdens zoveel seconden.
Bevestig de configuratie en kies y wanneer u wordt gevraagd een test te verzenden
kennisgeving. De console slaat de instellingen op in /etc/fwknop/fwknopd.conf
met modus 600 en laadt de actieve daemon opnieuw.
4. Configureer het handmatig
Dezelfde instellingen kunnen rechtstreeks aan /etc/fwknop/fwknopd.conf worden toegevoegd:
PORTGUARD_TG_BOT_TOKEN 123456789:replace_with_bot_token;
PORTGUARD_TG_CHAT_ID -1001234567890;
PORTGUARD_TG_NOTIFY_INTERVAL 0;
Zowel de Bot Token als de Chat ID zijn vereist. Bescherm de configuratie en start de service opnieuw na een handmatige wijziging:
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. Controleer meldingen
Volg het daemonlogboek terwijl u een geldig SPA-pakket verzendt vanaf PortGuard Client:
sudo journalctl -u fwknopd -f
Er wordt pas een melding in de wachtrij geplaatst nadat het SPA-pakket is geaccepteerd en een firewall is ingeschakeld regel is succesvol toegevoegd. Een herhaalde klop terwijl dezelfde regel nog steeds geldt actief mag geen nieuwe regel maken. Wacht eerst tot de vorige regel vervalt opnieuw testen.
Als de consoletest mislukt of een geaccepteerde klop geen bericht verzendt, controleer dan:
- De server kan
api.telegram.orgomzetten en uitgaande HTTPS-verbindingen maken. - De privéchat is gestart of de bot heeft toestemming om berichten te plaatsen in de bestemmingsgroep of kanaal.
- De Chat ID behoort tot hetzelfde botgesprek dat wordt gebruikt met
getUpdates. PORTGUARD_TG_NOTIFY_INTERVALonderdrukt de melding niet.fwknopdis opnieuw geladen of opnieuw gestart na een handmatige configuratiewijziging.
6. Schakel meldingen uit
Start de console opnieuw, selecteer optie 5, voer disable in als Bot Token en
bevestigen. PortGuard verwijdert alle drie de Telegram-instellingen en laadt de daemon opnieuw.