-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathsend.py
31 lines (23 loc) · 1.13 KB
/
send.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import subprocess
import re
import requests
# Token del bot de Telegram
TOKEN = ''
# ID del chat donde se enviará el mensaje
CHAT_ID = ''
# Expresión regular para buscar la información del cliente en el registro DHCP
regex = r'DHCPACK on (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}) to ([^\s]+) \(([\dA-Fa-f]{2}[:-]){5}([\dA-Fa-f]{2})\).*lease (\d+)'
# Ejecutar el comando para leer el registro DHCP
output = subprocess.check_output(['cat', '/var/log/syslog | grep "DHCPACK on"'], shell=True)
# Buscar la información del cliente en el registro DHCP
match = re.search(regex, output.decode())
# Si se encuentra la información del cliente
if match:
ip_address = match.group(1)
hostname = match.group(2)
mac_address = match.group(3).replace(':', '-')
lease_time = match.group(4)
# Construir el mensaje a enviar al bot de Telegram
message = f'Cliente conectado al DHCP:\nIP: {ip_address}\nNombre de equipo: {hostname}\nDirección MAC: {mac_address}\nTiempo de concesión: {lease_time}'
# Enviar el mensaje al bot de Telegram
requests.get(f'https://api.telegram.org/bot{TOKEN}/sendMessage?chat_id={CHAT_ID}&text={message}')