dd-wrt@fonera

Tags: ,
4 Comments »

ouh-ouuuuuuh

Toute la procedure est expliquée ici.

Maintenant, on va tâcher de coller et configurer proprement un chilli pour que le DD-WRT puisse utiliser le portail captif FON.

il vous reste des pillules nosleep ?

Tags: ,
No Comments »

Alors d’abord je reçois ceci de la part d’un mysterieux anonyme :

Qu’evidemment je m’empresse de brancher comme il se doit :

Pour obtenir ce saint Graal là :

Et donc là, je me souviens de ça, mais surtout… surtout de ÇA.

Vous deux là, Mr L. et Mr F., j’espere que vous vous en voulez bien fort de cramer mon week end de la sorte.

you must unLEaaarn what ou have leaaarned

Tags: , ,
2 Comments »

alors voila, pardon. Y’a -fiou- 2 ans, je bavais comme un vilain sur dspam, et là, là, eh bah je m’incline. In-cro-yable efficacité, je lui ai fait bouffer un millier de hams, un millier de spams, et pouf, le vla-t-y pas qu’il me catche un bon 96% de saloperies. Alors attention, c’est sur mon kimloli, c’est du perso, c’est pas mutualisé pour deux sous. Mais intégration à sendmail les doigts dans le nez (+ procmail):

define(`LOCAL_MAILER_PATH', `/usr/local/bin/dspam')
define(`LOCAL_MAILER_ARGS', `dspam -t -Y -a $h "--deliver=innocent" --user $u -d %u')

Fonctionne nickel balle avec mon nouvel amour, lighttpd. GUI web tout ce qu’il y a de plus sobre et efficace.
Dla bonne.
Le plus pénible a été de lui faire avaler les quelques milliers de mails préalablement nettoyés du markup spamass :

$ formail -s spamassassin -d < spam_corpus > cleaned.spam.inbox
$ formail -s spamassassin -d < ham_corpus > cleaned.ham.inbox

puis

$ formail -s dspam --client --user mes users --class=spam --source=corpus --mode=teft < cleaned.spam.inbox
$ formail -s dspam --client --user mes users --class=innocent --source=corpus --mode=teft < cleaned.ham.inbox

Avec de chaques cotés, des mbox tronquées à grands coups de tail, wc, grep -n et autes bc.

On n'oublie pas d'ajouter le user qui possède le serveur www comme Trusted User :

Trust www

et…

…on fait un gros doigt à nos amis spammeurs.

j’ai un ami qui m’attend à l’interieur

Tags: , ,
No Comments »

Histoire de m’affranchir de N regles de firewalling / forwarding / nat à se faire des nœuds au cerveau à coups l’iptables, je me suis dit qu’il serait du meilleur effet d’embarquer un simple proxy SIP dans la Fonera.
Après 2/3 googlisations, j’identifie siproxyd comme le candidat idéal pour mon petit exercice.
Muni de l’environnement de développement de FON, je compile :

. libosip2 dont il dépend
. siproxyd lui même

Ça donne à peu près ça :

$ pwd
/home/imil/fonera/src/own/libosip2-2.2.2
$ export FONBUILD=/path/to/fonera/build/env
$ export FONENV=/path/to/fonera/fake/root/filesystem
$ CFLAGS=-I${FONBUILD}/staging_dir_mips/usr/include LDFLAGS="-L${FONBUILD}/staging_dir_mips/usr/lib -lcrypt" CC=mips-linux-uclibc-gcc ./configure --host=mips --disable-hashtable --prefix ${FONENV}
$ make && make install

FONBUILD est le chemin vers l’environnement de compilation décompressé
FONENV est mon point de montage CIFS mounté depuis la Fonera sur /usr/local
puis :

$ pwd
/home/imil/fonera/src/own/siproxd-0.5.13
$ CFLAGS=-I${FONBUILD}/staging_dir_mips/usr/include LDFLAGS="-L${FONBUILD}/staging_dir_mips/usr/lib -lcrypt" CC=mips-linux-uclibc-gcc ./configure --enable-fli4l-22-uclibc --enable-static --host=mips --prefix=${FONBUILD} --with-libosip-prefix=${FONBUILD}
$ make

À la fin de la compilation, j’obtiens un src/siproxyd que je scp dans l’/usr/bin de la Fonera.
Reste à créer un /etc/siproxyd.conf minimal :

if_inbound  = ath1
if_outbound = eth0
sip_listen_port = 5060
daemonize = 1
silence_log = 1
log_calls = 1
registration_file = /tmp/siproxd_registrations
autosave_registrations = 300
pid_file = /var/run/siproxd.pid
# on active le RTP proxy
rtp_proxy_enable = 1
rtp_port_low  = 7070
rtp_port_high = 7089
rtp_timeout = 300
rtp_dscp = 46
default_expires = 600
debug_level =      0x00000000
debug_port = 0
# 1.2.3.4 == l'ip de l'asterisk qui va effectivement enregistrer mes SIP phones
outbound_proxy_host = 1.2.3.4
outbound_proxy_port = 5060
outbound_proxy_port = 5060

Reste à ouvrir quelques ports sur la Fonera :

root@OpenWrt:/etc/init.d# tail -7 /etc/firewall.user
## -- VoIP
# SIP
iptables -t nat -A prerouting_rule -i $WAN -p udp --dport 5060 -j ACCEPT 
iptables        -A input_rule      -i $WAN -p udp --dport 5060 -j ACCEPT
# RTP
iptables -t nat -A prerouting_rule -i $WAN -p udp --dport 7070:7089 -j ACCEPT
iptables        -A input_rule      -i $WAN -p udp -m udp --dport 7070:7089 -j ACCEPT

Et evidemment à entrer ces regles “à la main” pour qu’elles soient executées en live.
Moyennant quoi :

/usr/bin/siproxd

Et on admire la beauté d’un header SIP :

Sending to 4.3.2.1 : 5060 (NAT)
Transmitting (NAT) to 4.3.2.1:5060:
SIP/2.0 200 OK
Via: SIP/2.0/UDP 4.3.2.1:5060;branch=z9hG4bKde51f2040c5392cd5619453830d27d85;received=4.3.2.1
Via: SIP/2.0/UDP 192.168.10.231:5060;branch=z9hG4bK066469ba8
From: white ;tag=6af6d7ac5d3c755
To: 087XXXXXXX ;tag=as41ab49a5
Call-ID: a09785bc6c5225000878173ed3169649@192.168.10.231
CSeq: 1169873461 BYE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Contact: 
Content-Length: 0
X-Asterisk-HangupCause: Normal Clearing

Emouvant.

WP Theme & Icons based on GlossyBlue by N.Design Studio
Banner from www.trynthlas.com
Entries RSS Comments RSS Log in
Performance Optimization WordPress Plugins by W3 EDGE