Horrible Howtos - Persistent IRC In The Age of Laptops

Warning: I'm definitely not a pro

I obviously have a website...But what use is having this powerful static IP with a nameserver if the only thing I am using it for is delivering to you misinformed content in the form of a blog? Digital Ocean is an amazing company, probably the best web service you can have. The freedom they give customers is absolutely phenomenal

Ever since I made the plunge to start doing development I have seen everyone using IRCCloud for just about everything....While I appreciate that people have made an awesome cloud tool, I did not appreciate the 5 bucks or so it costs to use it.

For the past 17 years I have been involved in computing whether it be the glory days of ircII, BitchX, or mIRC, persistent connections were never really something I had thought of, but...in modern computing now they are all the rage!

Paying for microservices is quickly becoming the nickle & dime method of the internet.....I really try to avoid that as much as possible.

Here comes the nerd life. I'm a huge fan of tmux and terminal screening. Minimal computing has been something of a hobby for most of my life.

Combining a web-server with older tools is a great way to create an awesome personal cloud. Here are the tools I am going to use:

  • irssi for chatting!
  • ssh keys for making logging in easier and general education
  • screen(i prefer screen because I use tmux in my home environments) for attaching/detaching a irssi session

SSH-KEY Authentication

Let's make authentication faster to Digital Ocean
warning: never put this on root, it's just bad

  1. On your personal machine(assuming you're using a non-heathen operating system) follow the instructions, they're completely straight forward:
    ssh-keygen -t rsa <--Hit enter 4 times seriously

  2. Copy these keys to your Digital Ocean Server(courtesy of this tutorial).
    cat ~/.ssh/id_rsa.pub | ssh username@digitaloceanserver.calm "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

  3. Now simply ssh over to your server, and you will be able to log in without a password. This should be pretty standard practice for a lot of folks as it will prevent a lot of authentication hacks. You can also do cool stuff like put your RSA key on encrypted USB drives and look super 31337.

Set Up Screen & IRSSI

This is probably the easiest part. Screen is for lack of better terms, the easiest screen management tool you can use. Let me preface by saying C^a means "Control+A" if you're not down with all of the funny online jargon for meta keys.

  1. Screen is pre-installed on almost every Linux Distro. I prefer Ubuntu because it's easy...and I'm lazy:
    sudo apt-get install irssi

  2. Kicking off a screen session with irssi is as simple as:
    screen irssi

  3. Now we're in the money, more than likely you'll want to configure irssi however you want. Everyone has different preferences. If you don't know how check out this awesome tutorial.

  4. The reason we're using screen in this situation, is so that we can disconnect from the digital ocean server and still have irssi still running. To do this we "detach" from screen:
    C^a + d

  5. Now we are brought back to our initial terminal on our Digital Ocean Server. To bring it back we simply type:
    screen -r (If you did not detach it to begin with use '-dr' instead of '-r').

Voila!

Your finished product should be a stream lined login system to your Digital Ocean server, and a persistent IRC connection.