ITjes en datjes

Dingen uit dagelijks IT werk

Archive for juni 2011

Welke software?

Even een lijstje met de software die ik meestal in gebruik heb op de Windows PC.

Internet:
-Firefox 3.6 met add-ons;
*NoScript
*oldbar
*open link in…
*Session manager
*Screen capture elite

-BlueGriffon
-NOS Teletekst browser

Office:
-OpenOffice.org
-Dia
-FreeMind
-Task Coach

Utilities:
-ATnotes
-Notepad++
-Screenshot Pilot
-CDBurnerXP

Systeem tools;
-Virtual Dimension
-SandboxIE

Written by mnystrom

2011/06/25 at 16:04

Geplaatst in software

Portal voor gratis internet op Debian

Voor een klant een internet portal opgezet zodat de campinggasten hier gebruik van kunnen maken. Een aantal bekendere oplossingen voldeden niet en uiteindelijk de portal gebaseerd op deze van Andy Beverly.

Voor de server is een HP Proliant Microserver gebruikt met extra netwerkkaart en remote access kaart.
Software is Debian Linux Squeeze met de volgende packages;
-squid 3.x
-nagios 3.x
-apache 2.x
-bind 9.x
-PHP5-xsl
-PHP5-xmlrpc
-conntrack
-iptraf
-dhcp3-server
-sudo
-ipset
-ipset-source
-module-assistant

Installatie is uitgevoerd volgens de beschrijving van Andy met uitzondering van het ADSL, firewall en sudo gedeelte. Er wordt alleen gebruik gemaakt van ethernet en filtering werkt op IP adres i.p.v. MAC adres. Verbindingen van de clients lopen over een bridge waarbij gebruik wordt gemaakt van MAC NAT zodat de registratie gebeurt met het MAC adres van de bridge i.p.v. de client.

In index.php wordt het stuk van controle mac adres gedeeltelijk vervangen;

global $mac;
global $ipadd;
$mac = shell_exec(“$arp -a “.$_SERVER[‘REMOTE_ADDR’]);
$ipadd = $_SERVER[‘REMOTE_ADDR’];
preg_match(‘/..:..:..:..:..:../’,$mac);
preg_match(‘/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}/’,$ipadd,$matches);
@$mac = $matches[0];
@$ipadd = $matches[0];
//if (!isset($mac)) { exit; }
if (!isset($ipadd)) { exit; }

In users.php de wijziging voor iptables;

// validate any inputs
if (isset($_GET[‘ipadd’])) {
if (preg_match(‘/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}\*?$/’,$_GET[‘ipadd’])) {
$ipadd = $_GET[‘ipadd’];
} else {
echo “<font color=’red’>Invalid IP address</font><br><br>”;
}
}

$userfile = “/var/lib/users”;

if (isset($_GET[‘action’]) && $ipadd) {
$ipadd = trim($ipadd,’*’);
if ($_GET[‘action’]==”block”) {
$users = file_get_contents($userfile);
if (!strpos($users,”$ipadd*”)) {
$users = str_replace($ipadd,$ipadd.”*”,$users);
file_put_contents($userfile,$users,LOCK_EX);
}
exec(“sudo iptables -D internet -t nat -s $ipadd -j RETURN”);
} elseif ($_GET[‘action’]==”unblock”) {
$users = file_get_contents($userfile);
if (strpos($users,”$ipadd*”)) {
$users = str_replace($ipadd.”*”,$ipadd,$users);
file_put_contents($userfile,$users,LOCK_EX);
exec(“sudo iptables -I internet 1 -t nat -s $ipadd -j RETURN”);
}
} elseif ($_GET[‘action’]==”delete”) {
$users = file_get_contents($userfile);
$users = preg_replace(“/\n.+$ipadd.*\n/”,”\n”,$users);
file_put_contents($userfile,$users,LOCK_EX);
exec(“sudo iptables -D internet -t nat -s $ipadd -j RETURN”);
} else {
echo “<font color=’red’>Invalid action requested</font><br><br>”;
}
}

In dit bestand moeten de verwijzingen naar $field[3] voor registratie in bestand /var/lib/users ook vervangen worden naar $field[2].

De wijziging voor sudo;

www-data ALL = NOPASSWD: /sbin/iptables -I internet 1 -t nat -s [0-9]*.[0-9]*.[0-9]*.[0-9]* -j RETURN
www-data ALL = NOPASSWD: /sbin/iptables -D internet -t nat -s [0-9]*.[0-9]*.[0-9]*.[0-9]* -j RETURN
www-data ALL = NOPASSWD: /usr/bin/rmtrack [0-9]*.[0-9]*.[0-9]*.[0-9]*

In het firewallscript wordt voor elk wireless netwerk apparaat de toegang opengezet;

$IPTABLES -t filter -A INPUT -i eth0 -s xxx.xxx.xxx.xxx -j ACCEPT

En het vullen van de internet chain gebeurt nu via de volgende regel;

awk ‘BEGIN { FS=”\t”; } { if ($3 !~ /\*/) { system(“‘$IPTABLES’ -t nat -A internet -s “$3″ -j RETURN”); } }’ /var/lib/users

Met deze portal kan op een simpele manier (draadloze) internet toegang worden gegeven aan gasten van o.a. campings, hotels, supermarkten met grotere parkeerplaatsen, festival terrreinen, etc..
(iPad is eventueel een uitzondering aangezien deze geen DHCP adres over een MAC bridge kan opvragen ten tijde van schrijven van deze post)

Meer info over onze modulaire opzet van draadloze netwerken zodat deze makkelijker uit te breiden zijn is te vinden op http://www.mbitz.nl/aanleg_wifi.html.

MBitZ modulaire wifi mast

MBitZ modulaire wifi mast

Written by mnystrom

2011/06/22 at 14:59

Asterisk met Cisco 7960 SIP telefoons

De stappen om Asterisk (FreePBX) aan de gang te krijgen met Cisco 7960 telefoons:

De oorspronkelijke installatie was FreePBX 1.7 waar in de tussentijd de upgrade via yum uit is gevoerd naar Asterisk versie 1.8.3.3. De versie 1.8.4 die op dit ogenblik via yum geïnstalleeerd kan worden heeft nog een bug waardoor de 9760 niet goed registreert op de server.
Om een eventuele downgrade uit te voeren moet wel de downgrade plugin voor yum geïnstalleerd zijn (yum install yum-allowdowngrade).

Om de lijst voor versie 1.8 te zien:  yum –showduplicates list asterisk18*
Downgrade alle packages 1 voor 1 die boven in de lijst bij installed packages staan met yum –allow-downgrade install asterisk18[-extra]-1.8.3.3-1.

De Cisco toestellen worden gebruikt met een POE switch, in dit geval een 3com Officeconnect met standaard Cat kabel. Niet elke POE switch is geschikt voor de Cisco’s, eerst testen of het werkt (het duurt wel een aantal seconden voordat de telefoon reageert op POE).

De toestellen hadden nog een oude firmware voor Cisco centrales erop staan, deze kon niet rechtstreeks naar de laatste SIP firmware dus de eerste stap was de upgrade naar versie 5, daarna de upgrade naar versie 8.
Dit wordt gedaan via de tftp server (in dit geval de Asterisk centrale). De diverse firmware versies kunnen hier gevonden worden.
In de root van de tftpserver komen dus de P0xx-xx-xx-xx bestanden te staan, en de bestanden OS79XX.TXT, SIPDefault.cnf, XMLDefault.cnf.xml.

In het OS79XX.TXT bestand staat de firmware versie die geladen moet worden door de telefoons, in het geval van de upgrade eerst naar versie 5 P003-05-0-00 (P00 is voor Cisco centrale (SCCP), P0S is de SIP firmware), daarna P0S-8-12-00 voor de upgrade van de laatste SIP firmware.

In SIPDefault.cnf staat de info voor de SIP verbinding naar de centrale;

image_version: P0S-xx-xx-xx (de firmware versie van de telefoons waar dit voor geldt)
proxy1_address: 123.123.123.123 (ip adres van de centrale)
proxy1_port: 5060 (de SIP poort)
proxy_register: 1

in XMLDefault.cnf.xml staat verdere info voor verbindingen naar centrale en firmware van de toestellen;

<Default>
<callManagerGroup>
<members>
<member priority=”0″>
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<mgcpPorts>
<listen>2427</listen>
<keepAlive>2428</keepAlive>
</mgcpPorts>
</ports>
<processNodeName>123.123.123.123</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
<loadInformation7 model=”Cisco 7960″>P0xx-xx-xx-xx</loadInformation7>
<directoryURL></directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<servicesURL></servicesURL>
</Default>

Als alle toestellen de firmware versie 5 hebben (dit duurt wel even), dan kunnen de firmware bestanden van 5 vervangen worden door 8 en de verwijzingen  vervangen worden door P0S3-8-12-00.

Voor elke telefoon moet een SIP[mac adres].cnf bestand gemaakt worden. Welke het moet zijn is makkelijk te zien in de log van de tftp server op het moment dat het toestel opstart. Daarin moet in ieder geval de line1 gedefinieerd zijn die het toestel gebruikt;

line1_name: 21
line1_displayname: lijn_21
line1_shortname: lijn_21
line1_authname: 21
line1_password: lijn_21

Om het af te maken kunnen er nog de diverse ringtones in de root van de tftpserver geplaatst worden met omschrijving en bestandnaam in het bestand RINGLIST.DAT;

Ahh!            ahh.pcm
Doh!            doh.pcm
Old Style       ringer1.pcm
Synth Low       ringer2.pcm
Dungeon         ringer3.pcm
Lightbulb       ringer4.pcm
Synth High      ringer6.pcm
Are You There M AreYouThere.raw
Are You There F AreYouThereF.raw
etc…

Written by mnystrom

2011/06/10 at 17:15

Geplaatst in installatie, linux, MBitZ, software

Tagged with , , , , ,