In questi ultimi due giorni mi sono messo a configurare o sfruttare al meglio il mio router/switch/gateway/firewall/access point wireless (ho dimenticato qualcosa?). A dire la verità è da circa 4 anni o forse di più che lo ho e già dopo averlo comprato avevo configurato il WiFi (inteso come WPA, indirizzi statici ecc..) e poco successivamente il firewall ma non è di questo che voglio parlare (magari farò un altro articolo a riguardo).
Quello che in realtà ho voluto fare è: vedere i log del router sul mio pc e usare come server DNS il router stesso.
Syslog DG834G e syslog-ng.conf
Prima cosa, ovviamente, girare i log del router su un pc della nostra LAN o WLAN. Basta andare su Registri e fare come la figura di seguito (ovviamente i log che si sceglie di tenere traccia sono a vostra discrezione)

Girare sull'host 192.168.0.3 i log del router
Fatto questo bisogna configurare syslog-ng.conf. Secondo gli standard i log vengono trasmessi secondo il protocollo UDP sulla porta 154 inoltre se abbiamo impostato iptables sull’host 192.168.0.3 bisogna aprire tale porta per tale protocollo (ma questo arrangiatevi perché io uso solo il firewall del router). Sapendo questo il resto è facilissimo in quanto basta aggiungere le seguenti righe in syslog-ng.conf
- udp(ip(“0.0.0.0″) port(514)); in source src. Non servono molte spiegazioni a parte il fatto che come ip non possiamo usare 192.168.0.3, la spiegazione dovrebbe venirci dal man: If you do not want to bind to a specific interface use 0.0.0.0. Ma sinceramente non ho capito bene che cosa voglia dire;
- destination d_netgear { file(“/var/log/netgear.log”); }; ovviamente dove vogliamo che vengano salvati i log
- filter f_netgear { host(“192.168.0.1″); }; filtro solo in base all’host, nel mio caso è ovviamente il router che ha indirizzo, nella rete LAN, 192.168.0.1
- log { source(src); filter(f_netgear); destination(d_netgear); }; infine loggo tutto secondo quanto impostato sopra.
Semplice no? Se qualcuno ha qualcosa da aggiungere può farlo in questo topic. La prova che funziona è questa:
tail /var/log/netgear.log
Jun 28 10:25:51 192.168.0.1 Administrator: login successful – IP:192.168.0.3
Jun 28 10:30:56 192.168.0.1 LCP: down.
Jun 28 10:31:05 192.168.0.1 Initialize: LCP.
Jun 28 10:31:05 192.168.0.1 LCP: is allowed to come up.
Jun 28 10:31:12 192.168.0.1 PAP: authentication success
Jun 28 10:31:22 192.168.0.1 Loss: of synchronization :6
Jun 28 10:32:49 192.168.0.1 Administrator: login successful – IP:192.168.0.3
Jun 28 10:41:36 192.168.0.1 TCP: Packet – Source:62.211.73.232 Destination:87.0.11.42 – [PORT SCAN]
Jun 28 10:41:39 192.168.0.1 TCP: Packet – Source:83.234.78.229,1417 Destination:87.0.11.42,445 – [DOS]
Jun 28 10:41:45 192.168.0.1 TCP: Packet – Source:62.211.73.232 Destination:87.0.11.42 – [PORT SCAN]
PS per chi se lo chiedesse i port scan e i gli attacchi DOS sono provocati dai canali IRC: succede quando vi riconnettete molto velocemente (telecom di m***a) e i server IRC cercano di rompervi le balle credendovi una minaccia.
Usare il router DG834G come server DNS
Possiamo chiedere al router di risolvere i nomi di dominio invece di farlo in locale impostando i DNS su resolv.conf. Ovviamente consiglio di impostare sul router dei server DNS decenti invece che farli caricare ad ogni avvio dall’ISP: basta andare sulle Configurazioni di Base. Vedi immagine sotto

Impostare dei DNS, io uso i FoolDNS
Qui ho impostato i FoolDNS che consiglio caldamente. Fatto questo basta editare resolv.conf e mettere (prima di tutti gli altri oppure da solo)
nameserver 192.168.0.1
che è l’indirizzo del router. Ovviamente se usate il DHCP per farvi dare un indirizzo dal router a ogni boot o ogni volta che chiedete un indirizzo IP i server in resolv.conf verranno sovrascritti con quelli impostati sul router: qui ci sono delle soluzioni interessanti. Eccovi comunque la prova che tutto funziona a meraviglia:
dig www.google.it
; <> DiG 9.6.0-P1 <> www.google.it
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58046
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 7, ADDITIONAL: 7
;; QUESTION SECTION:
;www.google.it. IN A
;; ANSWER SECTION:
www.google.it. 181999 IN CNAME www.google.com.
www.google.com. 352652 IN CNAME www.l.google.com.
www.l.google.com. 70 IN A 72.14.221.103
www.l.google.com. 70 IN A 72.14.221.104
www.l.google.com. 70 IN A 72.14.221.147
www.l.google.com. 70 IN A 72.14.221.99
;; AUTHORITY SECTION:
l.google.com. 6280 IN NS c.l.google.com.
l.google.com. 6280 IN NS d.l.google.com.
l.google.com. 6280 IN NS e.l.google.com.
l.google.com. 6280 IN NS f.l.google.com.
l.google.com. 6280 IN NS g.l.google.com.
l.google.com. 6280 IN NS a.l.google.com.
l.google.com. 6280 IN NS b.l.google.com.
;; ADDITIONAL SECTION:
a.l.google.com. 6336 IN A 74.125.53.9
b.l.google.com. 6336 IN A 74.125.45.9
c.l.google.com. 6336 IN A 64.233.161.9
d.l.google.com. 6344 IN A 74.125.77.9
e.l.google.com. 6344 IN A 209.85.137.9
f.l.google.com. 6336 IN A 72.14.203.9
g.l.google.com. 6344 IN A 74.125.95.9
;; Query time: 55 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: Sun Jun 28 11:07:35 2009
;; MSG SIZE rcvd: 367
Notare il server che viene usato.