Archive

Archive for the ‘Articolo Tecnico’ Category

Pillole di Asterisk: visualizzare chiamate attive

May 18th, 2016 No comments

Schermata 05-2457527 alle 11.33.01

Per poter vusualizzare le chiamate in corso su un server Asterisk è sufficiente digitare dalla CLI di Asterisk (#asterisk -xv) il seguente comando:

core show channels verbose

Meglio se il comando lo diamo da teminale e non dall CLI di asterisk:

[root@ast]# asterisk -rx ‘core show channels verbose’

L’output non è chiarissimo in quanto oltre alle chiamate attive vengono visualizzato anche i canali, quindi con qualche comando linux ho migliorato la visualizzazione finale:

asterisk -rx ‘core show channels verbose’ | grep -v AppDial | grep Dial | awk {‘print $8″ ==> “$7’} | tr -d [:alpha:][\,\\-\(\/]

Con grep -v AppDial tolgo tutti i canali, con grep Dial tengo solo le chiamate attive, con awk {‘print $8″ ==> “$7’} stampo l’ottava e la settiam colonna che sono rispettivamente il chiamante e il chiamato, con tr -d [:alpha:][\,\\-\(\/] levo tutti i caratteri e qualche carattere speciale lasciando di fatto solo i numeri

Se si vuole vedere in tempo reale le chiamate attive basta usare watch e parsare un paio di caratteri:

watch -n 1 “asterisk -rx ‘core show channels verbose’ | grep -v AppDial | grep Dial | awk ‘{print \$8\” ==> \”\$7}’ |  tr -d [:alpha:][\\\,\/\(][=-=]”

In questo modo vedremo una schermata che ogni secondo si aggiorna e ci indica il chiamantre e il chiamato

chiamante ==> chiamato

A voi eventuali miglioramenti!

Categories: Articolo Tecnico, Software, Voip Tags:

xterm-256color: Unknown terminal type

February 16th, 2016 No comments

Problema:

Quando ti connetti in ssh su un server linux da un client MacOSX o Linux e provi ad utilizzare un programma a riga di comando (come vi o top) , potresti avere il seguente messaggio di errore:

# top
‘xterm-256color’: unknown terminal type.

 

Soluzione:

Definire la variabile di ambiente TERM

export TERM=xterm

Nota Bene:

Questa soluzione è valida solo per la sessione corrente di Terminal. Se si vuole rendere premanente la modifica la variabile va inserita nel prorpio file ~/.bashrc

Categories: Articolo Tecnico Tags: ,

Configurazione VLAN su Switch Cisco (IOS)

May 19th, 2015 No comments

Nei multilayerswitch Cisco una porta può funzionare alternativamente a layer 2 o a layer 3. Il default cambia da modello a modello. Il passaggio da layer 2 a layer 3 avviene con il comando “switchport” (layer 2) oppure “no switchport” (layer 3 ovvero “routed” sull’output di “show interface status”).

Una porta layer 2 funziona in tre modi

  • dynamic: il DTP, Dynamic Trunking Protocol, negozia se la porta è in access o in trunk mode. Questo è il default. Non usare.
  • access: passa una sola vlan untagged, comando “switchport mode access”
  • trunk: passano più vlan, comando “switchport mode trunk”

Alcuni comandi, sebbene possano essere inseriti in qualsiasi momento, diventano effettivi solo in certi stati dell’interfaccia: un esempio è il comando

switchport trunk native vlan X

diviene effettivo solo se la porta è in mode trunk.

Analogamente, il comando

switchport access vlan X

è efficace solo le porta in mode access.

 

Confronto tra HP Procurve e Cisco (configurazione VLAN)

Se la logica di fondo è la stessa, sono molto diverse le modalità di configurazione. In Hp non c’è bisogno di dire allo switch “questa porta è in access!, questa è in trunk!”. Basta dire questa vlan X è tagged sulla porta N, mentre quest’altra vlan Y è untagged sulla porta N. Implicito che ogni porta può avere una sola vlan untagged. In Hp, in una certa interfaccia escono solo le vlan esplicitamente configurate per farlo. (Con la parola “trunk” nel mondo HP ci si riferisce all’aggregazione di link fisici, che Cisco chiama “etherchannell”). Vediamo alcuni esempi confrontando le configurazioni.

Porta 25, con vlan 4 tagged, vlan 5 tagged, vlan 6 untagged.

vlan 4
tagged 25

vlan 5
tagged 25

vlan 6
untagged 25

 

In Cisco le cose cambiano molto. Quando una porta è in trunk, di default passano tutte le vlan configurate sullo switch, con la vlan 1 untagged: in altri termini quando una porta è in trunk è implicito il comando “switchport trunk native vlan 1”.

Cerchiamo di ottenere la stessa configurazione di prima: vlan 4 tagged, vlan 5 tagged, vlan 6 untagged.

interface fastethernet 2/11
switchport
switchport mode trunk
switchport trunk native vlan 6
end

Ora si vuole che da una certa if esca solo la vlan 6 untagged. In HP è semplicemente….

vlan 6
untagged 25

In Cisco invece

interface fastethernet2/11
switchport
switchport mode access
switchport access vlan 6

 

Categories: Articolo Tecnico, Networking Tags:

[Linux] Come estrarre file 7z

April 9th, 2014 No comments

7-zipI file 7z non sono altro che degli archivi compressi, come i zip e i rar, che possono contenere qualsiasi tipo di file. Per estrarre i contenuti di tali file sotto linux (CentOS) è sufficiente installare p7zip

sudo yum install p7zip

una volta installato il programma va lanciato il comeando 7za

7za x file.7z

PS:

per Windows potete usare 7-zip

Per Mac OSx potete usare Ez7z

Categories: Articolo Tecnico, Software Tags:

VoIP – debug e troubleshooting traffico SIP con ngrep

June 6th, 2013 No comments

http://ithelpblog.com/wp-content/uploads/2013/01/SIP1.pngCon questo articolo tecnico ritorniamo ad occuparci di VoIP e in particolare del troubleshooting del traffico SIP.

Il comando essenziale che dobbiamo utilizzare è “ngrep”.  Per installarlo su una macchian Ubuntu basta scrivere sul terminale

apt-get install ngrep

Vediamo ora la modalità di utilizzo direttamente con alcuni esempi:

Sniffare tutto il traffico SIP:

ngrep -qt -W byline port 5060
# ngrep -qt -W byline port 5060
interface: eth0 (192.168.0.0/255.255.255.0)
filter: (ip or ip6) and ( port 5060 )T 2013/04/27 05:59:09.541776 192.168.0.200:52018 -> 192.168.0.114:5060 [A]……T 2013/04/27 05:59:09.541837 192.168.0.200:52018 -> 192.168.0.114:5060 [AP]
REGISTER sip:openuctest.com SIP/2.0.
Via: SIP/2.0/TCP 192.168.0.200:36752;branch=z9hG4bK-d8754z-95798a09824c9c00-1—d8754z-;rport.
Max-Forwards: 70.
Contact: <sip:200@192.168.0.200:36752;rinstance=85aa8608b85349aa;transport=TCP>.
To: “200″<sip:200@openuctest.com>.
From: “200″<sip:200@openuctest.com>;tag=745f025a.
Call-ID: N2E0NDg0NTdlYmFmNTY2NjM0NGNmOWNkNDE1YWM0YmE..
CSeq: 1 REGISTER.
Expires: 3600.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO.
Supported: replaces.
User-Agent: Bria Professional release 2.4 stamp 49381.
Content-Length: 0.
.
T 2013/04/27 05:59:10.478656 192.168.0.114:5060 -> 192.168.0.200:52018 [AP]
SIP/2.0 408 Request timeout.
From: “200″<sip:200@openuctest.com>;tag=745f025a.
To: “200″<sip:200@openuctest.com>;tag=VmNa8r.
Call-Id: N2E0NDg0NTdlYmFmNTY2NjM0NGNmOWNkNDE1YWM0YmE..
Cseq: 1 REGISTER.
Via: SIP/2.0/TCP 192.168.0.200:36752;branch=z9hG4bK-d8754z-95798a09824c9c00-1—d8754z-;rport=52018.
Server: sipXecs/4.6.0 sipXecs/sipXproxy (Linux).
Content-Length: 0.
.T 2013/04/27 05:59:10.678860 192.168.0.200:52018 -> 192.168.0.114:5060 [A]
……

Sniffare e filtrare sull’indirizzo IP 192.168.0.200

ngrep -qt 192.168.0.200 -W byline port 5060

Sniffare e filtrare sull’utente “pippo”

ngrep -qt pippo -W byline port 5060

Sniffare e filtrare solo i pacchetti SIP con il metodo INVITE

ngrep -W byline -d eth0 INVITE

(articolo originale: http://ithelpblog.com/voice/troubleshooting-and-debug-voip-sip-by-ngrep-command/)

Aggiungo check funzionamento servizio SIP 5060:

nc -z -v -u <indirizzo IP> 5060

Mac OSX – Visualizzare File nascosti

April 2nd, 2013 No comments

Spesso può essere utile  visualizzare i file o directory nascoste sul Mac. Ecco come fare:

  1. Aprire il terminale (si trova in /Applicazioni /Utility/)
  2. Al prompt dei comandi digitare:
  3. Premere Invio per eseguire il comando.
  4. defaults write com.apple.finder AppleShowAllFiles-bool true
  5. Affinché le modifiche abbiano effetto è necessario o disconnettersi e riconnettersi di nuovo, o rilanciare Finder (questo può essere fatto tramite “uscita forzata” oppure digitando ‘killall Finder’ in una finestra di terminale).

Per tornare alla situazione precedente (non far visualizzare file o cartelle nascoste) basta digitare sul terminale la seguente stringa:

defaults write com.apple.finder AppleShowAllFiles-bool false

Accesso protetto pagina web tramite PHP

December 11th, 2012 No comments

Ecco una brevissima (e sicuramente migliorabile) guida su come proteggere le proprie pagine web tramite un semplice script in PHP.

Quello che ci servirà è:

  • una pagina per inserimento di utenza e password –> index.php
  • una pagina per il controllo dei dati inseriti –> check.php
  • una (o più pagine) che vanno protette –> protetta.php
  • una pagina di logout –> logout.php

index.php

<center>
<h3>Inserisci le credenziali di accesso:</h3>
<form method=”post” action=”check.php”>
<input type=”hidden” name=”tipo” value=”login”>
User:<br> <input type=”text” name=”user”><br><br>
Password:<br> <input type=”password” name=”password”>
<br><br>
<input type=”submit” value=”INVIA”>
</form>
</center>

check.php

<?php
session_start();
// ACQUISISCO LE VARIABILI INVIATE DAL FORM
$user = $_POST[‘user’];
$passwd = $_POST[‘password’];
// CONTROLLO I DATI DEL LOGIN

//Definire le proprie credenziali di accesso
if (($user == “pippo”) && ($passwd == “pluto”)){
$_SESSION[‘controllosessione’] = 1;
header(“location:  ./protetta.php”);
} else {
echo “ACCESSO NEGATO!!!”;
}
?>

protetta.php

<?php
session_start();
if(!isset($_SESSION[‘controllosessione’]))
die(‘non puoi visualizzare questa pagina!’);
?>
<!– qui inserire le informazioni da proteggere –>
<h2>password corretta</h2>
<a href=”./logout.php”>Logout</a>

logout.php

<?php
session_start();
session_destroy();
header(“Location: index.php”);
exit;
?>

Configurazione rapida del bonding su Ubuntu

September 26th, 2012 No comments

Linux_BondingCon il termine “bonding” s’intende l’aggregazione di due o più interfacce di rete fisiche in una singola interfaccia virtuale, per ottenere tolleranza ai guasti e bilanciamento di carico.

Una buona pratica nella configurazione di un server, dotato di un minimo due interfacce di rete, prevede il collegamento a due *differenti* switch di accesso per garantire la ridondanza dei servizi erogati in caso di guasto di uno dei apparati di rete, come anche un uso più efficiente della banda disponibile.

Questo articolo tratta della configurazione rapida del bonding su sistemi Ubuntu in modalità active/backup. Questa modalità non prevede bilanciamento di carico, ma garantisce tolleranza ai guasti degli switch di accesso.

Entriamo ora nei dettagli della configurazione. Read more…

Stampare con AirPrint su stampanti che non supportano AirPrint (Win e Mac OS X)

June 11th, 2012 3 comments

AirPrint è una funzione integrata negli iDevice (iPod/iPad/iPhone dalla versione iOS 4.2 in poi) che permette di stampare su stampanti Wireless che supportano questa tecnologia (qui una lista di stampanti AirPrint). Naturalmente non tutti hanno stampanti di questo tipo, ma in questo caso ci viene in aiuto  AirPrint Activator, un utility che permette di utilizzare una qualunque stampante collegata al nostro MAC/PC tramite AirPrint.  I passi da eseguire (su Mac, per Windows vedi sotto) sono i seguenti: Read more…

INum (+883): chiamate tramite Google Voice in Gmail

March 8th, 2012 4 comments

Con il nostro account gmail è possibile utilizzare il servizio Google Voice che per chiamare i numeri fissi e mobili in Italia e all’estero. Non è però ancora possibile chiamare direttamente la numerazione nomadica internazionale di iNum (quelli con prefisso +883).

Google però nello scorso dicembre ha esteso per tutto il 2012 la possibilità di chiamare gratuitamente le numerazioni fisse degli Stati Uniti e del Canada. Questo ci permette quindi di usare una dei tanti numeri dei gateway di accesso di questi due paesi (qui la lista) forniti dalla rete iNum.

Per effettuare una chiamata basta accedere al proprio account gmail, cliccare sulla voce del menu a sinistra chama tel.(bisogna aver installato il plug-in Gmail Voice and Video Chat) e chiamare per esempio il numero di accesso del Canada 403-775-1446. Quando la voce registrata chiederà di inserire il numero dovremo digitare le Read more…

Categories: Articolo Tecnico, Internet, Voip Tags: ,