Category Archives: System Administration

Setting Up BackupPC on Ubuntu

I recently started to do regular backups of all my systems using BackupPC. It uses the rsync protocol to limit the amount of data transferred during backups. Once the initial backup is done, future backups only need to copy incremental changes. This requires far less resources than other software I have used

This article covers setting up the server on Ubuntu and configuring backups for Ubuntu and OpenWRT. A future article will cover backing up Windows systems using an rsyncd daemon process. Continue reading

Implementing IPv6 Part 2

We are quickly running out of IPv4 addresses. Are you ready for World IPv6 Day on June 8th, 2011? I have prepared my configuration on OpenWRT and Ubuntu. This includes configuring DNS using bind, email using Exim, and a Squid web proxy.

Having verified that I could establish IPv6 connectivity, I chose to improve my connectivity. This started with getting a tunnel from Hurricane Electric and updating my configuration. I then updated my bind server and Exim mail server support IPv6 addresses. This posting updates and continues from my post on Implementing IPv6 6to4 on OpenWRT.   Review it for information on creating a tunnel and running radvd on OpenWRT. Continue reading

Transparent Squid Proxy

Over the holidays, I had a user experience and attempted browser hijacking.  It appeared to have bypassed my squid proxy.   My updated configuration now sends all web access via squid.  The old firewall rules, that allowed direct access to the Internet, have been replaced with a transparent Squid proxy.  This runs on my existing Squid Proxy using another port. Continue reading

Implementing IPv6 6to4 on OpenWRT

As the IPv4 addresses begins to run out I finally invested the time to investigate and implement IPV6. As my ISP has not yet announced availability of IPV6 addresses I chose to implement a 6to4 tunnel. This is simple to implement, and currently well supported. My external firewall is an ASUS wireless router running OpenWRT.  As I have a static IP address, my implementation is simpler than is required by a dynamic address.  Support for dynamic IPv4 addresses is not covered here, but this configuration should work as long as your address does not change.

I initially created a 6to4 implementation without a firewall.  Then to secure my systems I implemented a firewall using Shorewall6-lite.  Until I figured out how to configure the 6tunnel script, I used the command line to bring up the network.  This documentation uses of the 6tunnel script instead of the manual commands.  My configuration does not yet include any IPsec functionality. Continue reading

Manual networking for KVM

I found the networking configured by libvirt (KVM) did not allow me to firewall the network as I desired.  I use Shorewall for firewalling, and DNSMasq for internal DNS and DHCP.  After a little experimentation, I found that I could configure Ubuntu to create the network.  This allows me to get a reliable firewall configuration with a virtual DMZ.

The virtual hosts are assigned to a bridge, and only have connectivity to other networks as defined in the Shorewall configuration.  A single DNSMasq server provides DSN an DHCP services for all virtual servers, as well as the network the server is connected to.  The network and firewall configuration remains consistent even as servers are cycled up and down.  An additional bridge was created to support virtual servers in the DMZ zone. Continue reading

Remote Desktops with VNC and RDP

I find it useful to have a remote desktop to my Ubuntu systems.   On secure connections I have been using VNC via xinetd.  Connections with xrdp where possible, but it wasn’t launching the desktop for the connection.  For secure terminal connections, I stick with with ssh.  All these connection have a login at the start of the connection. This is how I do it. Continue reading

Cfengine 2 for Debian and Ubuntu

Cfengine is a declarative system configuration tool.  This helps apply standards to system configuration. The configuration files specify the desired configuration and the engine applies these specifications to the system.  It is useful to:

  • Distribute configuration files;
  • Install standard packages (including on Debian and Ubuntu with code provided here);
  • Cleanup old files; and
  • Ensure certain programs are/are not running.

This documentation applies to Cfengine version 2. . The latest version has made significant changes to the scripting structure, but maintains the capability to run the version 2 format files. Continue reading

Firewalling Google Chat and Skype

To enable for Internet chat I set up Google Chat and Skype.  My firewall rules have been extremely restrictive with only known and approved services allowed to connect.  Google Chat installed with no noticeable impact to the firewall. Things did not go so well with Skype.

The installation of Skype resulted in lots of warnings on the firewall.  Outgoing tests worked with only port 80 and 443 open.  Skype’s peer-to-peer approach  requires at least one port be opened incoming and and a large range of ports outgoing.  They specify all ports over 1024 should be open.  Their preferred mode seems to be to use uPnP to dynamically modify the firewall.   They do allow you to attempt to set  fixed incoming port which is also used for some outgoing UDP traffic. Continue reading

Setting up Squid Proxy on Ubuntu

Squid is a proxy service for HTTP and other requests.  This article covers installing it and configuring it to run on Ubuntu as a transparent proxy.  This documentation includes configuring Web Proxy Auto-Discovery (WPAD) via DHCP and DNS.

I run a heterogeneous configuration.  This provided a number of challenges as various implementations of WPAD were encountered.  These each seem to require something different.  The final configuration works for Ubuntu, Windows X/P, and Windows Vista.  Both Internet Explorer and Firefox configured correctly. Continue reading

Connecting a Palm via USB

The computer to which I had been synchronizing my Palm Tungsten E died a while ago. I explored the two options for connecting to my Ubuntu system using a USB cable. The fastest is to use a direct USB connection. However, I wanted to ensure I could synchronize over a network connection. I also configured and tested setting up a PPP connection over USB. Continue reading