page feed



4 October, 2017

SSH password two-factor authentication

Anyone SSH-ing in to theor accounts on oak.waxworlds.org with a password will now also find that they need to enter a verification code in addition to their password.

We're using Google Authenticator (which is a procedure to perform time-based one-time password authentication, not a Google service).

If you use SSH with keys, these will continue to work as before. Two-factor authentication is only used alongside password authentication.

ol { list-style-type: lower-alpha; }

Users wanting to be able to SSH in with a password will need to either

  1. contact me, and I will set up a secret key for your account, or

  2. run google-authenticator from the command line on oak to set it up for themselves. The command will generate your secret key, ask you a few questions and then save a local ~/.google_authenticator configuration file.

You will probably want to install the Google Authenticator app on your phone/tablet/watch (it is free/libre and open source and available on F-Droid). There are also several other FOSS OTP authenticator apps that are compatible.


31 July, 2017

Server update

oak and ash have both been updated to latest stable version of Debian (stretch). This should mark a big improvement over the software that was running on them, which was becoming quite dated.

As a result, several services have been affected by the update and have required some maintenance. These are:

  • Web services
  • MySQL
  • Matrix
  • mail (and spam filtering)
  • SSH
  • XMPP (jabber)

Outstanding issues are:

  • The XMPP server is down and will require some work to fix.

I will update below as and when problems are resolved. If you notice anything awry, please let me know immediately.

UPDATE: Web services are working again (they were only down briefly) [2017-07-31]

UPDATE: MySQL has been migrated to Maria and there was briefly an authentication, which has been resolved. [2017-07-31]

UPDATE: The Matrix server is now working again. [2017-07-31]

UPDATE: Mail is working again and should start to come through. No mail should have been lost. [2016-07-31]

UPDATE: The issue with SSH keys has been resolved. [2016-08-01]

UPDATE: The remaining issue with URL rewriting has been resolved. [2016-08-01]

UPDATE: The spam filter (spamassassin) works again. [2016-08-01]


3 July, 2017

Matrix server

The matrix server, running at matrix.waxworlds.org, will probably be intermittent for a couple of days while I upgrade it.

If anyone isn't using Riot, you can get a client for Android, iOS, the web and your desktop (although the desktop client is a bit shoddy, so I use the website, which integrates well with desktop notifications, sounds, etc).

If you want an account adding at matrix.waxworlds.org, please email me.


15 June, 2017

Major server failure

oak.waxworlds.org died rather unexpectedly last night. I have not yet had a chance to make a propper analyisys of the problem, but it looks as though the disk might be toast and a complete reinstall might be on the cards.

The upshot of the situation is that mail, jabber and access to the Central network are unavailable until I am able to resolve the problm.

I will update here as things unfolds or when I find out more.

Update: oak has been up and running this evening and has been catching up with mail. All services are restored. However there will be intermittent downtime over the next few days as hardware is replaced. [2017-06-15]


8 December, 2016

Service disruption to ash

ash.waxworlds.org will be down for maintenance for approximately 1 hour tomorrow evening at 9pm GMT, after which time it will have more RAM.

Update: all done. [2016-12-09]


6 December, 2016

Service disruption to oak

oak.waxworlds.org will be down for approximately 2 hours tomorrow evening at 6pm GMT while work is undertaken on the power.

Update: work has been completed on schedule. [2016-12-07]


25 November, 2016

Spaces within parenthesis in emacs

There’s lots of opinion about coding styles and which is best. I prefer one that helps you read the code. And, to that end, I prefer to have spaces inside parenthesis, like this:

for( int a = 0; a < 20; a++ ) {
    dump( data[ a ] );

Call me a heathen if you like, but it’s how I roll!

And it’s how I set out to configure emails to help me roll…

Unfortunately, emacs’s electric-pair-mode doesn’t do this sort of thing and can’t be configured to, either. There are two problems. The first is that electric-pair-mode doesn’t allow for conditions as to when it will insert a pair. So, I could add a pair of spaces, (?\s . ?\s), to electric-pair-pairs so that it would automatically insert a second space, but it would do this for every space I typed. The second problem is that electric-pair-mode does some white-space skipping internally, which I think would be problematic. :(

So I did it the old-fashioned way and added my own functions:

(defun my/c-mode-insert-space (arg)
  (interactive "*P")
  (let ((prev (char-before))
        (next (char-after)))
    (self-insert-command (prefix-numeric-value arg))
    (if (and prev next
             (string-match-p "[[({]" (string prev))
             (string-match-p "[])}]" (string next)))
        (save-excursion (self-insert-command 1)))))

(defun my/c-mode-delete-space (arg &amp;optional killp)
  (interactive "*p\nP")
  (let ((prev (char-before))
        (next (char-after))
        (pprev (char-before (- (point) 1))))
    (if (and prev next pprev
             (char-equal prev ?\s) (char-equal next ?\s)
             (string-match "[[({]" (string pprev)))
        (delete-char 1))
    (backward-delete-char-untabify arg killp)))

They can be bound in c-mode and c-mode derivatives like this:

(add-hook 'c-mode-common-hook
          (lambda ()
            (local-set-key " " 'my/c-mode-insert-space)
            (local-set-key "\177" 'my/c-mode-delete-space)))


6 October, 2016

Service disruption to oak

It would appear that our service provider have made a misconfiguration whilst transferring IP addresses to the new DSL (see post for 2016-10-02). As a result, oak is currently down.

Mail and jabber will most notably be affected, although no mail should get lost (it will come through when oak comes back on-line).

Apologies for any inconvenience. I will update as I resolve the issue with our provider.

Update: The issue has now been resolved. All services should be up and running as normal again and mail will no doubt start trickling through again. [2016-10-06]


2 October, 2016

Temporary IP address changes to oak

As of Sunday 2nd October, the IP address of oak.waxworlds.org may change temporarily. DNS records will be updated accordingly, and there should be minimal service disruption. Oak's IP address should revert to that previously assigned in a few days. I'll update this post as I hear more.

Update: The IP address has changed. DNS has been updated. The interface of oak's default route has also changed, so please report any problems. [2016-10-02]

Update: Our service provider appears to have made a misconfiguration whilst transferring IP addresses. As a result, oak is currently down. [2016-10-06]

Update: IP addresses have been restored, although oak's IP address has actually changed to a different one within the subnet. Hopefully everything should be working again now. [2016-10-06]


19 November, 2015

Server software update and migration

I will be updating ash to Debian 8 on Sunday 22nd November. There should be vitually no disruption, aside from a reboot.

I will also be moving oak to a new machine (which will be running Debian 8). There may be a brief disruption to mail and xmpp while I transfer configuration, etc.

I'll update this post with further info.

Update: This entire upgrade/migration has been postponsed due to a) an issue with oak's new hardware, and b) a hardware issue that is preventing backups on willow.