With over 20 years of linux system administration and a curious nature I've dabbled in a lot of things over the years.

Most of these things need moving into a consolidated area now but here's some things I've messed with/created.

  • torque Android app web logging reverse engineer
  • For a while I was head of IT for Pirate Party UK in my spare time

Being one of the first team members of a local ISP's dedicated support team I have both good and bad experience of customer expectations.

I believe that this had aided in my methodology that if I cannot provide the exact requirements of a project I will be open and honest and explain what can and can’t be done and to offer the closest possible solution to the project.

My keenness to learn and develop my skills within the company soon meant that I was doing more advanced things which were not the duties of the support team, I was configuring web space both on Linux/Irix apache and Microsoft IIS/4, registering domain names, configuring email for domains or a single mailbox for the user, and adding users into radius so they can use dialup/ISDN services. This soon saw me move permanently from a support role into production which also provided a 2nd line of support.

After training my replacement to do this role I moved into systems, having already learnt some of the more advanced aspects of Qmail I was directly involved in the upgrade of the mail system from 3 separate machines into one large cluster, which was still running when I left having gone through multiple hardware/software upgrades but keeping the initial processing logic in place.

Prior to leaving I was in charge of the local data centre and responsible for day to day maintenance and running including all ISP services based out of it including DNS, web, radius and email.

This has given me knowledge of applications including apache, bind, Qmail, radiator and ICRadius, MySQL, MRTG/RRD using both MRTG and cacti and protocols such as HTTP(S), FTP, SMTP, POP3, SMTP, SNMP.

As Systems Manager at my next employer I was able to draw on my experience from leading a team of engineers. In addition to the daily contact with my team I was also heavily involved in product design and sourcing suppliers which included several large meetings with BT whom we were looking to enlarge their Openzone wireless network with via their range of “home hubs”.

Highlights

  • Design, spec, build and implementation of fully redundant 14 node mail cluster incorporating anti-virus and spam tagging, designed to handle in excess of 1 million emails a day
  • Design, spec, build and implementation of scalable ¾ Terabyte NFS storage cluster, utilising DRDB and heartbeat to provide RAID5+0 resiliency, complete with tape backup solution.
  • Recode and optimisation of a website designed to handle a maximum of 10,000 concurrent users. Optimised recompile of Apache/PHP and MySQL. Last known running with an average of 20,000 concurrent users (3½ million hits/day ) and had peaked at 28,000 without problems.
  • Planning and Action to migrate 500 websites and 30 secure websites from Apache/Apache Stronghold running on an old SGI Indy (IRIX 5.2) to new Linux machine running Apache/mod_ssl without interruption.
  • Design, spec, build and implementation of the Pirate Party UK's new web platform. Incorporating openvz containers, via proxmox, to provide redundancy with use of varnish, nginx, php-fpm, MySQL, Memcached and NFS through puppet managed deployment and configuration.
  • Migration of 45 user accounts from google domain email services to own servers, including syncronisation of mail.

Technologys

  • Web servers - Apache HTTPD, NGINX, lighttpd and tux2. Experience of IIS/4,5,7
  • Mail servers (MTA) Exim, Qmail, postfix and sendmail
  • Database servers - MySQL and sqlite. Experience of PostgreSQL and CouchDB
  • DNS servers with primary/slave redundancy using BIND 8 and 9, DJBdns for caching.
  • VPNs design and installation using openvpn. Cisco experience.
  • VoIP solutions using the Cisco Call Manager and Asterisk
  • Linux clusters deployment using DRBD (www.drbd.org) and Heartbeat (www.linux-ha.org)
  • Network Firewalls using Linux iptables/ipchains, and cisco pix/asa.
  • Help desk (ticket system) deployment using request tracker (bestpractical.com/rt)
  • Collaborative wiki platforms using TWiki (www.twiki.org) and Mediawiki (www.mediawiki.org)
  • Centralized backup systems using rsync/unison/rdiff-backup over ssh, providing simple file replacement to full disaster recovery solutions with 6 month data retention via ZFS snapshots
  • Hard disk configuration using hardware and software RAID and Logical Volume Manager (Linux LVM)
  • Distribution customisation to provide a bootable CD or network boot server to install required components and customised distribution on a machine.
  • Distribution maintenance maintaining a custom linux distribution, ensuring updating testing and deployment of critical and regular updates in a timely manner.
  • Anti-SPAM control using spamassassin, dspam (dspam.nuclearelephant.com), RBL checks, SPF, DKIM and tarpitting.
  • Monitoring using Nagios/Icinga, MRTG, RRDTool and smokeping to monitor running services, graphing usage and monitoring latency/usage of links.
  • Security using snort to detect/react to potential attacks, tripwire to check for file changes, use of grsecurity within hardened gentoo and PaX to restrict binary execution. Rootkit removal on legacy systems not sufficiently protected due to customer requirements and using unpatched code.
  • Kernel Optimisation custom built kernel compiling in required modules and required aspects.
  • N.I.S. Configuring ypbind and ypserv to provide centralised authentication to services.
  • Radius Authentication using ICradius and radiator incorporating perl scripts for more enhanced control.

Software development

  • Web development using PHP/MySQL/HTML/CSS/perl and shell
  • Regular expressions for text processing and parsing
  • Package Management RPM, gem, apt and emerge including customisation and rebuild of rpms/ebuilds for various patches or to use cvs/svn release before distribution release.

Computer languages

  • Good experience in: PHP, HTML, bash
  • experience in: C, C++, Python, Perl, XML, CSS, JavaScript

Operating systems / Appliances

  • Server level: broad experience with Linux (several distributions including Centos, Redhat RHEL (5-7), Mandriva/Mandrake, Debian, Ubuntu, Gentoo and Rock). Experience with Solaris, IRIX and *BSD
  • Desktop level: wide experience with Linux, and Windows. Experience with Mac OS X
  • F5, Stingray / Brocade Vtm, Vmware ESXi

For those inclined here's my amazon wishlist