System administration
I have a wide range of knowledge having worked with both GNU/Linux and Microsoft Windows for many years. Below is a list of the operating systems which I have experience with:
-
GNU/Linux
- Debian v3 - v8 I have used various versions of Debian and Ubuntu for both server and desktop use since 2003.
- Ubuntu v5.04 - current / Linux Mint 17.2 - current I have used Ubuntu and Linux Mint mainly as a desktop system but experimented using it as a server using virtual machines.
- Redhat, Suse (some experience) I have experimented with some other Linux distributions to some extent but do not have experience running production systems using anything other than Debian and Ubuntu other than running a Red Hat server for a short time.
-
Microsoft
- MSDOS v5 - v7 I started using PC's while still at school back in 1990. At that time they where running early versions of MS DOS and windows 2.
- Windows v3.11 - v10 Microsoft Windows was my main operating system for my desktop computers from about 1993 to 2001 when I started using GNU/Linux as a desktop OS. I still however run current versions of windows either on a hard drive partition or virtual machine in order to keep up to date so I am able to continue to offer support to Windows users which I do on a regular basis through IT Surgery and home visits.
Being mainly concerned with Webserver Administration my main area of knowledge is GNU/Linux, which I have always used for this purpose because I believe it to be more secure, more reliable and of course its free! I have been running my own hosting company and Debian webserver since 2003 at MORETONHAMPSTEAD.NET for which I am responsible for all system administration and customer technical support at all levels. Some of the elements of running a GNU/Linux system of which I have experience follow:
- Command line administration (remote and local)
- File systems (partitioning, LVM)
- Boot process (grub/lilo, init, runlevels)
- Kernel Modules and device drivers (modprobe, lsmod, modules.conf)
- User management
- Process management and System performance (top, ps, kill)
-
Networking
- Configuration (ifconfig, interfaces)
- Wireless (security, WPA, WEP)
- DHCP
- Network analysis (nmap, iptraf)
- Security (firewall, iptables, fail2ban)
- VPN (OpenVPN, server and client configuration)
- VNC
- GUI (X, Gnome, KDE, xfce)
- Package management (dpkg, aptitude, rpm)
- Compiling from source (kernel configuration, application software)
- Scripting (Bash, Perl, Python)
- Scheduled tasks (crontab)
-
Services (installation, configuration and maintenance)
- Network shares (samba, nfs, sshfs, ftp, permissions & security)
- Openssh (sshd.conf, security)
- Mail server (Exim, POP, IMAP, SMTP, virtual users, spamassasin, clamav)
- Webmail (squirrelmail, roundcube)
-
Apache Web Server
- httpd.conf
- Virtual hosting
- Modules (installing, enabling, configuring , disabling, uninstalling)
- Configuration Directives
- SSL (configuration, certificates, keys)
- Database (MySQL, phpmyadmin, Postgresql)
- Webalizer web-stats
- Log analysis
- Virtual machines (Installation, local and remote management, virtual networks)
- Administrative control panels (webmin, cpanel, plesk)
I do also have some experience with configuring MS Windows systems.
- OS and software installation and removal
- User management
- Networking (configuring clients, connecting to shares, mapping drives, printing)
- Process management and system performance (task manager)
- Security (firewall, AV, update manager)
Below is a list of some of the applications I am familiar with.
- Office (MS Office 97-2010, OpenOffice/LibreOffice, Word, Spreadsheet, Database, etc.)
- Imaging Software (Photoshop v7 - CS4, GIMP)
- Website development (Dreamweaver, Kompozer/NVU)
- FTP and networking (Filezilla, SSH, Putty)
- Browsers (Firefox, Chrome, Internet Explorer)
Website Development and programming
I have been developing websites since my collage days in 1994 when coding HTML was the only way to do it. Since then I have experimented with various web authering software but gone back to using code which now of course includes CSS. Since around 1997 I found myself getting more and more involved in server side programming (using PERL at the time and PHP more recently) as clients wanted more functionallity to their websites. Below is a list of some of the technologies I am familiar with:
- HTML (4, 5)
- CSS (2.1, 3)
- Javascript (jquery, DOM scripting, Ajax)
-
PHP (4, 5)
- Object oriented design
- Libraries (PEAR)
- Frameworks (CakePHP, smarty)
- Perl (CGI, Apache ModPerl, OOP, CPAN)
-
MySQL Database
- Administration
- Efficient Relational database design
- Query design
-
Web Software (installation, configuration, maintenance)
- Wordpress (administration, template customisation, plugins)
- CMS Made Simple
- GINAS (Apache Perl module I wrote which parses tags within HTML for tasks such as returning formatted database query results)
- SWE (Simple Website Editor back-end written by myself in PHP, JS and Ajax using Mercury front-end)
-
Techniques
- Web standards
- Accessibility
- Cross browser compliance
- SEO
- MVC architecture
- API's
- JSON
- RESTful