Wake on Lan-Wake over internet su Debian

 

wake on lan su debian

 

 

Per chi ha un PC o un serverino e volesse accenderlo al bisogno da remoto ha bisogno di Wake on Lan. Per potere ottenere questo c'è bisogno di tre cose fondamentali:

 

  1. Wake on lan deve essere abilitato nel Bios, e che la scheda di rete supporti Wol.
  2. Serve un IP statico oppure per chi ha una adsl casalinga può sempre rivolgersi ad un servizio DDNS come DynDNS oppure  Noip.com.
  3. Serve un router in grado di inoltrare i Magic Packet, e questo oramai è quasi impossibile da ottenere dato che la maggior parte dei modem/router casalinghi sono bloccati e quindi non in grado di inviare i magic packet. Per ovviare a questo problema consiglio un piccolo acquisto di qualche decina di euro, il Linksys E1200-EZ versione v2. Una volta in mano, su questo router si può installare il nuovo firmware opensource DD-WRT. e poi seguire la guida specifica.

 

Per abilitare Wol su Debian Gnu-Linux:

 

# apt-get install ethtool

 

verificare che la scheda di rete sia attiva:

 

# ethtool eth0

 

root@debianserver:/home/edmond# ethtool eth0
Settings for eth0:
    Supported ports: [ TP MII ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                         100baseT/Half 100baseT/Full
    Link partner advertised pause frame use: Symmetric
    Link partner advertised auto-negotiation: Yes
    Speed: 100Mb/s
    Duplex: Full
    Port: MII
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    Supports Wake-on: pumbg
    Wake-on: d
    Current message level: 0x00000001 (1)
                   drv
    Link detected: yes

 

come si vede è settata su "d", quindi significa che è disabilitata. Per abilitarla:

 

# ethtool -s eth0 wol g

 

per verificare il buon esito:

 

# ethtool eth0 | grep -i "wake"

 

root@debianserver:/home/edmond# ethtool eth0 | grep -i "wake"
    Supports Wake-on: pumbg
    Wake-on: g

 

adesso serve conoscere il mac address della scheda di rete:

 

# cat /sys/class/net/eth0/address

 

e poi una volta configurato il router si è pronti a svegliare il PC da remoto al bisogno.

 

enjoy 🙂

 

Installare Asterisk 13 + Freepbx 12 su Debian Wheezy

 

freepbx-12

 

Dopo aver installato Asterisk 11 e Freepbx 2.11 su Debian Wheezy, mi sono deciso a provare ad installare la versione recente di Asterisk 13 con Freepbx 12. I passi sono più o meno gli stessi di quelli precedenti, ma con qualche piccolo accorgimento ed alcune modifiche, Ad ogni modo, malgrado qualche piccolo warning il tutto funziona perfettamente.

 

Aggiornare il sistema:

 

# apt-get update && apt-get upgrade -y

 

Scaricare le dipendenze ed i servizi necessari:

 

# apt-get install -y build-essential linux-headers-`uname -r` openssh-server apache2 mysql-server mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php-db php5-gd curl sox libgnutls26 libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git subversion uuid-dev libjansson-dev smartmontools zip unzip rar unrar arj zoo sox

 

a metà installazione verrà chiesto di settare una password per Mysql MEMORIZZARLA/SEGNARSELA, poi per sicurezza meglio riavviare, a meno che non si è sicuri che si userà lo stesso kernel.

 

# reboot

 

Scaricare l'occorrente:  Dahdi, Libpri, Pjproject, Asterisk, Freepbx.

 

# cd /usr/src
# wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/\
dahdi-linux-complete-current.tar.gz
# wget
# wget https://www.pjsip.org/release/2.3/pjproject-2.3.tar.bz2
# wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
# wget https://mirror.freepbx.org/freepbx-12.0.21.tgz

 

Installare Dahdi:

 

# cd /usr/src
# tar xvfz dahdi-linux-complete-current.tar.gz
# cd dahdi-linux-complete-2*
# make -j4 all
# make install
# make config

 

Installare Libpri:

 

# cd /usr/src
# tar xvfz libpri-1.4-current.tar.gz
# cd libpri-1.4*
# make -j4
# make install

 

Installare Pjproject:

 

# cd /usr/src
# tar -xjvf pjproject-*
# cd /usr/src/pjproject-*
# CFLAGS='-DPJ_HAS_IPV6=0' ./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr
# make dep
# make
# make install

 

Installare Asterisk:

 

# cd /usr/src
# tar xvfz asterisk-13-*
# cd asterisk-*
# ./configure
# make menuselect

 

a questo punto conviene dare un occhiata e se serve si può abilitare qualche modulo in più, come format_mp3 o i moduli extrasound:

 

freepbx-moduli

 

# make -j4
# make install
# make config
# ldconfig

 

Installazione e configurazione di Freepbx e Mysql

 

# pear uninstall db
# pear install db-1.7.14
# cd /usr/src
# tar xvfz freepbx-*
# cd freepbx
# adduser asterisk --disabled-password --gecos "Asterisk User"
# chown asterisk. /var/run/asterisk
# chown -R asterisk. /etc/asterisk
# chown -R asterisk. /var/{lib,log,spool}/asterisk
# chown -R asterisk. /usr/lib/asterisk
# chown -R asterisk. /var/www/
# sed -i 's/\(^upload_max_filesize = \).*/\1120M/' /etc/php5/apache2/php.ini
# cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
# sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
# /etc/init.d/apache2 restart
# export ASTERISK_DB_PW='INSERIRE_LA_PASSW_MYSQL'
# mysqladmin -p -u root create asterisk
# mysqladmin -p -u root create asteriskcdrdb
# mysql -p -u root -e "GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY '${ASTERISK_DB_PW}';"
# mysql -p -u root -e "GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY '${ASTERISK_DB_PW}';"
# mysql -p -u root -e "flush privileges;"
# ./start_asterisk start
# ./install_amp --installdb --username=asteriskuser --password=${ASTERISK_DB_PW} --dbhost='127.0.0.1' --dbname='asterisk' --freepbxip='X.X.X.X' --cgibin='/var/www/cgi-bin' --bin='/var/lib/asterisk/bin' --sbin='/usr/local/sbin' --asteriskuser=admin --asteriskpass=${ASTERISK_DB_PW} --asteriskip='127.0.0.1' --scripted

 

sostituire le X.X.X.X con l'ip della macchina che eseguirà Asterisk:

 

# ./install_amp --update-links
# amportal chown
# amportal a ma installall
# amportal restart
# amportal a ma refreshsignatures
# amportal chown

 

a questo punto fare una piccola modifica al file /etc/apache2/sites-enabled/000-default.conf, poiche la DocumentRoot deve puntare a  "/var/www/html", ed AllowOverride dovrà essere "All", come sotto:

 

<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/html
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
        <Directory /var/www/html>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all

 

# nano /etc/apache2/sites-enabled/000-default.conf
# /etc/init.d/apache2 restart

 

Da adesso in poi si potrà utilizzare AsteriskFreepbx all'indirizzo https://localhost/admin/. La prima cosa da fare è andare nel menu Admin-Module Admin e scaricare tutti i moduli. Dopo l'aggiornamento dei moduli potrebbero verificarsi degli errori nel momento in cui si applicano i cambiamenti, il tutto si risolve andando manualmente a forzarne l'aggiornamento.

Errori moduli esempi:

PHP Fatal error:  Call to undefined function core_devices_list() in /var/www/html/admin/modules/digium_phones/classes/digium_phones.php on line 102

PHP Fatal error:  Call to undefined function core_devices_list() in /var/www/html/admin/modules/callforward/functions.inc.php on line 47

The Module Named "Core" is required, but yours is disabled because it needs to be upgraded. Please upgrade Core first, and then try again.

 

Errori compilazione:

Durante la compilazione ho avuto diversi errori ma che non hanno dato problemi:

PHP Warning:  copy(/var/www/html/robots.txt): failed to open stream: No such file or directory in /usr/src/freepbx/libfreepbx.install.php on line 381

PHP Warning:  file_put_contents(/var/log/asterisk/freepbx.log): failed to open stream: Permission denied in /var/www/html/admin/libraries/utility.functions.php on line 111

 

enjoy 😉

 

Asterisk 11 con Freepbx 2.11 su Debian 7 Wheezy

 

 

Guida su Asterisk 11 con Freepbx 2.11 su Debian 7 Wheezy. Mi sono cimentato nell'installazione del centralino Asterisk con l'interfaccia Freepbx su Debian Wheezy. Dopo diversi tentativi il tutto è andato a buon fine. Di seguito riporterò i passi effettuati su una Debian 7 Wheezy appena installata. I comandi sotto sono stati eseguiti tutti da root.

 

Aggiornare il sistema:

 

# apt-get update && apt-get upgrade -y

 

Scaricare le dipendenze ed i servizi necessari:

 

# apt-get install -y build-essential linux-headers-`uname -r` openssh-server apache2 mysql-server mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php-db php5-gd curl sox libgnutls26 libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git subversion uuid-dev libjansson-dev smartmontools zip unzip rar unrar arj zoo sox

 

a metà installazione verrà chiesto di settare una password per mysql. MEMORIZZARLA/SEGNARSELA.

poi:

 

# pear uninstall db
# pear install db-1.7.14

 

Scaricare l'occorrente: Asterisk, Dahdi, Libpri, Freepbx.

 

# cd /usr/src
# wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/\
dahdi-linux-complete-current.tar.gz
# wget
# wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz
# wget https://mirror.freepbx.org/freepbx-2.11.0.40.tgz

 

Installare Dahdi:

 

# cd /usr/src
# tar xvfz dahdi-linux-complete-current.tar.gz
# cd dahdi-linux-complete-2.10.0.1+2.10.0.1
# make -j4 all
# make install
# make config

 

Installare Libpri:

 

# cd /usr/src
# tar xvfz libpri-1.4-current.tar.gz
# cd libpri-1.4.15
# make -j4
# make install

 

Installare Asterisk:

 

# cd /usr/src
# tar xvfz asterisk-11-current.tar.gz
# cd asterisk-11.15.0
# ./configure
# ./contrib/scripts/install_prereq install
# contrib/scripts/get_mp3_source.sh
# make menuselect
# make -j4
# make install
# make config

 

Riavviare il sistema:

 

# reboot

 

dopo il riavvio controllare che tutti i servizi sono up:

 

# service asterisk start
# service apache2 start
# service mysql start

 

per entrare nella CLI di Asterisk:

 

# asterisk -r
Ctrl>c

 

 

Creazione utente e settaggio dei permessi:

 

# adduser asterisk --disabled-password --gecos "Asterisk User"
# chown -R asterisk. /var/run/asterisk
# chown -R asterisk. /etc/asterisk
# chown -R asterisk. /var/{lib,log,spool}/asterisk
# chown -R asterisk. /usr/lib/asterisk
# mkdir /var/www/html
# chown -R asterisk. /var/www/

 

Modifiche più o meno necessarie nel file di configurazione di apache:

 

# sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php5/apache2/php.ini
# cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
# sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
# service apache2 restart

 

Configurazione del database Asterisk in mysql:

 

# export ASTERISK_DB_PW=amp109
# mysqladmin -p -u root create asterisk
# mysqladmin -p -u root create asteriskcdrdb

verrà richiesta la password di mysql scelta in precedenza.

 

# mysql -u root -p

 

adesso siamo nella CLI di mysql e dare i comandi successivi, sostituire PASSWD_MYSQL con la password creata:

 

GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY
'PASSWD_MYSQL';
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED
BY 'PASSWD_MYSQL';
flush privileges;
quit

 

restart Asterisk:

 

# /etc/init.d/asterisk restart

 

Installazione di Freepbx:

 

# cd /usr/src/
# export VER_FREEPBX=2.11
# tar xvfz freepbx-2.11.0.40.tgz
# cd /usr/src/freepbx
# mysql -p -u root asterisk < SQL/newinstall.sql
# mysql -p -u root asteriskcdrdb < SQL/cdr_mysql_table.sql
# ./install_amp --webroot /var/www

oppure:

# ./install_amp --username=asteriskuser --password=$ASTERISK_DB_PW --webroot /var/www

 

Se tutto è andato bene puntare il browser su https://localhost/admin

 

Asterisk 11 con Freepbx 2.11 su Debian 7 Wheezy

 

enjoy 😉

 

Vsftpd su Debian Wheezy

 

 

Vsftpd (acronimo di Very Secure FTP Daemon) è quello che uso come servizio ftp, semplice, leggero, sicuro e veloce da configurare.

 

$ sudo apt-get install vsftpd

 

subito dopo mettere mano al file di configurazione:

 

$ sudo nano /etc/vsftpd.conf

 

per una configurazione base i punti più importanti da decommentare sono:

.

  1. local_enable=YES

    Abilita/disabilita l'accesso agli utenti locali.

  2. write_enable=YES

    Abilita/disabilita agli utenti l'accesso in scrittura.

  3. xferlog_enable=YES

    Attiva i log su tutte le operazioni di scaricamento e caricamento file.

  4. xferlog_file=/var/log/vsftpd.log

    Specifica il percorso per i file di log.

  5. ftpd_banner=

    Imposta un messaggio di benvenuto visualizzato all'accesso al server FTP.

 

Per fermare/avviare/riavviare il servizio digitare i seguenti comandi:

 

$ sudo /etc/init.d/vsftpd stop
$ sudo /etc/init.d/vsftpd start
$ sudo /etc/init.d/vsftpd restart

 

per testare:

 

$ ftp 192.168.x.x

 

enjoy 😉

 

Gtkterm-0.99.7 su Debian Wheezy

 

gtkterm-300x204

 

Gtkterm è un semplice terminale GTK+ da usarsi per comunicare con la porta seriale. Sarebbe l'equivalente di Hyperterminal e di SecureCRT, in Windows. Io personalmente lo preferisco sia a cutecom che a minicom, che tra l'altro attualmente non mi funziona sulla mia Debian. Nei repo di Debian Wheezy non è presente Gtkterm, lo si può trovare in Testing o in Sid. già pacchettizzato, oppure seguendo i passi successivi:

 

$ sudo apt-get install atool intltool libvte-dev
$ wget ftp://ftp.hu.debian.org/pub/linux/distributions/gentoo/distfiles/gtkterm-0.99.7-rc1.tar.gz
$ atool -x  gtkterm-0.99.7-rc1.tar.gz
$ cd gtkterm-0.99.7-rc1
$ ./configure
$ make -j4
$ sudo make install

 

poi si avvia con:

 

$ sudo gtkterm

 

Le sue caratteristiche sono:

 

 * finestra terminale per la porta seriale;
 * impostazione della porta (velocità, parità, numero di bit, numero di
   bit di stop, controllo di flusso);
 * usa la API termios;
 * possibilità di inviare un file (solo dati GREZZI, senza protocollo);
 * la caduta della linea è ritardata durante l'invio di un file;
 * i caratteri speciali attendono un "a capo" durante le trasmissione
   di un file;
 * possibilità di cambiare le linee di controllo manualmente (DTR, CTS);
 * possibilità di leggere lo stato delle linee di controllo (RTS, CD,
   DSR, RI).

 

enjoy 😉

 

(Cracking) Wifite e Reaver nei repository di Debian Sid

 

 

 

Non so quanto è vecchia la notizia, ma siccome mi sono assentato per quasi due mesi dal blog, nei quali non ho seguito nulla, mi sono accorto adesso di alcune novità. Alcuni strumenti utili per il cracking sulle reti wifi, sono stati introdotti nei repository di Debian Sid. Parlo nello specifico di Wifite e di Reaver, ed ho notato che la versione di aircrack-ng è alla versione 1.1-5. Di questi strumenti e sul loro utilizzo avevo parlato in passato, facendo anche delle guide. WifiteReaveraircrack-ng.

 

enjoy 😉

Installare RetroShare amd64 su Debian Sid

 

 

 

 

RetroShare è una applicazione multipiattaforma per la condivisione di files su rete F2F, ritenuta molto sicura in quanto si autentifica con GPG e ci si connette tramite un tunnel ssh. Sul sito ufficiale ci sono pacchetti pronti per diverse distribuzioni. Nel caso specifico Debian, esiste solo il pacchetto a 32bit per Squeeze, siccome io uso Sid amd64, mi sono dovuto arrangiare:

 

wget

sudo dpkg -i retroshare_0.5.3-0.5256~oneiric_amd64.deb

 

una volta avviato la configurazione è intuitiva.

 

enjoy 😉
 

(Errori) Network-Manager dispositivo non gestito su Debian Squeeze

 

 

 

 

A volte capita/capitava su Debian Squeeze, di trovarsi con l'icona di Network-Manager con una X, per segnalare un problema con la connessione, ma in realtà la connessione c'è, ed è funzionante. Per risolvere il problema:

 

# nano /etc/NetworkManager/NetworkManager.conf

 

e settare a true:

 

[ifupdown]
managed=true

 

riavviare:

 

# /etc/init.d/network-manager restart

 

 

enjoy 😉

Connessione ad hoc wifi tra Debian Sid ed Iphone 4

 

 

 

 

Creare una connessione aod hoc su Debian Sid è diventato molto semplice, basta andare nelle impostazioni di rete, e premere "usa come hotspot", a quel punto si da il Nome, e si sceglie il tipo di protezione, wep, wpa, wpa2, e dal lato host il tutto è fatto.

 

 

Dal lato client, nello specifico, Iphone 4 con OS 5.0.1, si avvia il wireless, e si noterà subito una nuova connessione.

 

 

per collegarsi bisogna mettere un indirizzo statico, nel mio caso avendo il router del tipo 192.168.1.X, l' IP da mettere deve essere dello stesso tipo, per intenderci come in figura, non 192.168.0.2 o 192.168.2.X. Come Router e DNS, bisogna mettere l'indirizzo IP dell' host, nel mio caso, 192.168.1.2

 

 

questa schermata invece è relativa agli indirizzi dati in automatico successivamente. Questa connessione ad hoc io non la uso internamente, dato che il mio è un router wireless, ma mi serve perchè sto facendo un esperimento con un'antennino dalla portata di 3km…..vedremo se è così 🙂 L'idea sarebbe quella di sfruttare la connessione ad internet del pc di casa lasciato acceso, magari in piazza o al parco 😉

 

 

enjoy 😉

Scoprire limitazioni di banda (ISP) con Debian e Gnu/Linux

 

 

 

 

Per scoprire se il proprio ISP limita la banda, in ambienti Gnu/Linux si può utilizzare DiffProbe Shaper Module.

 

$ wget

$ tar xvf shaperprobe.tgz

$ cd shaperprobe

$ make

$ ./prober

 

il test dura un paio di minuti, e se tutto è andato bene, si avrà qualcosa di simile.

 

edmond@Debianbox:~/shaperprobe$ ./prober
DiffProbe release. January 2012.
Shaper Detection Module.

Connected to server 74.63.50.40.

Estimating capacity:
Upstream: 54 Kbps.
Downstream: 547 Kbps.

The measurement will last for about 2.5 minutes. Please wait.

Checking for traffic shapers:

Upstream: No shaper detected.
Median received rate: 112 Kbps.

Downstream: Burst size: 130-135 KB; Shaping rate: 373 Kbps.

For more information, visit:
 

 

enjoy 😉