Linux Support, Hosting & Security Hertfordshire

Thursday, 30 July 2009

Open Source Alternative to Teamspeak (TS) and Ventrilo (Vent)

Looking for a open source cross-platform alternative to Teamspeak (TS) or Ventrilo (Vent)? Check out this project for a great gaming VOIP solution;

"Mumble is an open source, low-latency, high quality voice chat software primarily intended for use while gaming."

Gentoo have recently masked Teamspeak client/server due to security issues because it contains Internal copies of vulnerable libraries.

So now a great time for you to discover a true open source alternative!

Thursday, 7 May 2009

HOWTO: fight spam backscatter using SPF

We all hate spam/spammers and receiving loads of backscatter (rejection emails from other servers) from spammers faking your email domain when sending their spam is a pain we could all do without.

Well SPF (Sender Policy Framework) is there to help.

"SPF makes it easy for a domain, whether it's an ISP, a business, a school or a vanity domain, to say, "I only send mail from these machines. If any other machine claims that I'm sending mail from there, they're lying." - SPF Site

Its as simple as adding some DNS records to your domains which allow email servers to check what addresses are allowed to send emails.

There is even a wizard to help with the creation of these spf records @ http://old.openspf.org/wizard.html However we found that this wizard created records which were not quite right for our domain and resulted in some resolution failures. But the syntax to create your own is quite simple and is well documented

Lets look at a simple example. Let say you only want to allow emails from example.com to come from 123.123.123.123 IP address. The dns line would look like;

Tiny DNS Server

'example.com:v=spf1 ip4\072123.123.123.123 -all:3600

BIND DNS Server

example.com. IN TXT "v=spf1 ip4:123.123.123.123"

Once you have setup your SPF record, you can test its working by sending an email to check-auth@verifier.port25.com . You will then receive a report in reply with the test details which include your SPF data.

Tuesday, 21 April 2009

Lightweight PHP Class to export to Excel XLS Format

PHP export to XLS class

Here is a lightweight, simple and fast PHP Class which exports array data to Excel's .XLS format.

The array data could come from MySQL or any other data source, but as long as its in the normal PHP array format, then this script will produce a xls out of it.

I wrote this because we didnt want any of fuss or bulk many other exporting scripts seemed to have. It is being released for free under the GNU LGPL Licence.

Project Page

phpexportxlsclass

The class usage is documented within the zip. It also follows;

<?php
/*

A quick script to demo the use of the export-xls.class.php script.

*/


//include the export-xls.class.php file
require('export-xls.class.php');


$filename = 'test.xls'; // The file name you want any resulting file to be called.

//create an instance of the class
$xls = new ExportXLS($filename);


//lets set some headers for top of the spreadsheet

$header = "Test Spreadsheet"; // single first col text
$xls->addHeader($header);

//add blank line
$header = null;
$xls->addHeader($header);

//add 2nd header as an array of 3 columns
$header[] = "Name";
$header[] = "Age";
$header[] = "Height";

$xls->addHeader($header);

/*
Lets add some sample data

Of course this can be from a SQL query or anyother data source
*/

//first line
$row[] = "Jack";
$row[] = "24";
$row[] = "6ft 5";
$xls->addRow($row);

//second line
$row = array();
$row[] = "Jim";
$row[] = "22";
$row[] = "5ft 5";
$xls->addRow($row);

//add a multi dimension array
$row = array();
$row[] = array(0 =>'Jess', 1=>'54', 2=>'4ft');
$row[] = array(0 =>'Luke', 1=>'6', 2=>'2ft');
$xls->addRow($row);

/*
 You can return the xls as a variable to use with;
 $sheet = $xls->returnSheet();

 OR

 You can send the sheet directly to the browser as a file
*/

$xls->sendFile();


?>

Thursday, 26 March 2009

pChart - What an amazing Project

Stumbled upon this one and cant get enough. Its a great PHP Class for producing graphs of all types and shapes.

pchart

Wednesday, 11 February 2009

Gento KDE 4.2 Dolphin menu options all say "No Text"

After upgrading my desktop to KDE 4.2, I noticed that all the menu options in the file manager said 'No Text'! Turns out this is something to do with some borked permissions. Nice quick fix.

chmod 755 -R /usr/share/config

I noticed that the gentoo elog now has a message informing people of this fix.

On a side note.. OMG KDE are back! .. I tried 4.0 and 4.1 and only lasted about 2-3days with them before i went back to 3.5. But KDE 4.2 is really something special. Sure there is still the odd plasma crash, but it recovers nicely.

Tuesday, 10 February 2009

Interoperability between linux GUI apps using javascript

This looks very interesting...

"Ars takes a close look at Seed, a new framework that allows software developers to build GTK+ applications with JavaScript. The popular web scripting language could soon become the dominant application extension language on the Linux desktop."

More >>

Sunday, 4 January 2009

EXT4 is stable as of 2.6.28

Thats right! Ext4 has been marked stable as of kernel 2.6.28. While we all know its only a stop gap until btrfs is out, it still offers some great performance benefits for little effort. More info on ext4 can be found here, along with a basic ext4 howto.

I decided i wanted to change the format of one of my Gentoo systems from reiserfs to ext4 and test this new fs out. If your going to do this make sure you have upgraded to kernel 2.6.28 and =>sys-fs/e2fsprogs-1.41.3

At the time of writing this, the only live cd with ext4 support i could find was fedora 10. However, the fedora live cd doesnt support reiserfs which is what my drive was already formatted in. So i had to boot from a Gentoo live cd, tar everything off to a server, then boot from the fedora cd, fomat in ext4 and then untar the data back.

Upon booting back into Gentoo, the newly formatted partition wouldnt mount. It insisted that i needed to enable CONFIG_LSF (needed for 2TB files) in the kernel because i was mounting a drive with large files... even though this drive was only 8gb in size! After i recompiled the kernel with CONFIG_LSF on it all worked perfect. I think this is something to do with e2fsprogs and i might lookinto it later.

Over all im very impressed with ext4 so far. While i dont have benchmarks to share, i defenately noticed a speed up on disk operations. Such as parrell booting in Gentoo and firing up KDE all seemed much quicker.

As a side note, it is also interesting that Ubuntu will be including EXT4 support as of 9.0.4 and is showing impressive boot performance... Info here