Interested in learning Linux? Need hosting? Free shells!

by JohnWittle1 min read9th Sep 201237 comments


Personal Blog

Sign up form: Click Here


I own a personal server running Debian Squeeze which has a 1Gb/s symmetric connection and 15TB per month bandwidth.

I am offering free shell accounts to lesswrongers, with one contingency:

You'll be placed in a usergroup, 'lw', as opposed to various other usergroups for various other communities I belong to, which will be in other usergroups. Anything that ends up in /var/log is fair game. I intend to make lots of graphs and post them on all the communities I belong to. There won't be any personally identifying data in anything that ends up publicly.

Your shell account will start out with a disk quota of 5g, and if you need more you can ask me. I'm totally cool with you seeding your torrents. I do not intend to terminate accounts at any point for inactivity or otherwise; you can reasonably expect to have access for at least a year, probably longer.

Fill out the form at the top of the page, query me on freenode's irc (JohnWittle), send me an email:, or reply to this thread with your own contact information.

If you'd like to ask questions about the server, or what good such a service might be for you, point your IRC client at and /join #shells (you should also do this if you sign up), or find me on freenode, or comment below.

Also, while the results of my analysis are likely to go in Discussion, I was wondering if this offering of free service itself might go in discussion. I asked in IRC and was told that advertisements are seriously frowned upon and that I would lose all my karma. I was told that this is not too similar to advertising, and that it would fly.

Edit: As far as illicit activities go... I am precommitting here to fully cooperating with any law enforcement entities who approach me with regards to the server. By using the server, you are agreeing to abstain from any activities which will get me in trouble even if I cooperate fully with law enforcement.


37 comments, sorted by Highlighting new comments since Today at 11:57 AM
New Comment

This isn't an ad, it's a public service. :)

[-][anonymous]9y 3

Is there only one IP addr? How would that work with multiple people trying to do web hosting?

Apache virtual hosts. For instance:

'' is registered and has its A record pointed at the server, so when you type into your browser, it goes to (the ip of the server).

Now, apache, the webserver, has the following in its configuration files:

<VirtualHost *:80>                              #look for connections coming in on port 80
ServerName  #if the requested URL is this url...
DocumentRoot /home/dbaupp/www #...use this directory as root

Then you just set up a virtualhost block for every domain/subdomain you want.

[-][anonymous]9y 0

and fcgi 404 handler or whatever would be set up similarly?

the two lines i posted are the bare minimum needed to set a vhost. Things like 404 pages, per-vhost access and error logs, servername aliases (* to, etc. are all possible.

Afaik, this is the standard method of going about doing this.

One of the more popular uses of shell accounts is as an internet proxy. I assume that you'd rather not have people doing highly illegal stuff through your server, but could you specify what you're okay with? Some of the things you should mention are piracy, porn, pissing off the US/China/Anonymous, running a tor relay/exit node.

I already run a tor relay node on the server; luckily most things of this nature require root access, which will not be given.

I will update the OP with relevant information.

Does anybody have any specific ideas as to:

  • How to get people who have signed up for the purposes of learning to actually sit down in a talk session with me and learn?
  • What should be taught first? My current plan is, getting people to understand how configuration files in linux are like preferences in windows, and getting them to set up a .bashrc file with aliases and a custom PS1 prompt, to get used to the idea of a) rc files b) editing things with a text editor
  • Is vimtutor any good? I learned vim before vimtutor was available, and I went through the exercises a little bit and they seemed good, but how is retention?

How to get people who have signed up for the purposes of learning to actually sit down in a talk session with me and learn?

I'm guessing that most of those who signed up and plan on using their account already know the ropes well enough to not need tutoring.

What should be taught first? My current plan is, getting people to understand how configuration files in linux are like preferences in windows, and getting them to set up a .bashrc file with aliases and a custom PS1 prompt, to get used to the idea of a) rc files b) editing things with a text editor

What is your goal here? Getting people to learn this 1970's cutting-edge technology? Personally, I forget the details after only a few months of disuse, and have to look it up again if necessary. As for editing, I use vi when there is absolutely no other choice (cat, pico, nano, k100... no emacs, please). The only vi commands that I find essential enough to remember are /, I, Esc, q! and w. Any real editing can be done on a box with some form of GUI (almost always available, given that your shell is remote) and then pasted into the vi window.

Quite a few people who emailed me told me they were specifically interested in learning linux; that they had installed ubuntu on a laptop but never touched the terminal, or that they had never touched linux and had to be showed how to login, etc. Because this is lesswrong, those people for the most part have actually done some stuff on their own instead of just never logging in again, but I feel like I could be doing more.

The value in learning the inner workings of an operating system should be self-evident, no matter how you scorn it. It is a human-designed self-contained deterministic purpose-driven system from start to finish, with many layers of complexity, which on its own is good enough reason for me, but after you spend an afternoon debugging something that went wrong with your ssh-agent, or with your .rtorrent.rc, you are going to understand those programs on a technical level instead of an intuitive level, and that does make a difference. It's also an option that Windows never gives you.

What if we already know Linux and just want to use a server?

Go ahead and sign up!

What's the benefit vis-a-vis, say, just using a free Knoppix CD?

Well, it isn't your computer; it's my computer, sitting in a server farm somewhere in Sunnyvale, California. It has nearly 100% uptime (3 minutes of downtime over the last year), a static IP address you can point domains at or use to host your own Counter Strike or Minecraft server, and particularly it has a 1Gb/s (128 megabytes per second) sustained upload and download speed, so you could actually host a high-bandwidth popular media streaming server or website or something. Because it is only accessible remotely, it forces you to use the terminal, which means you will be diving into the 'real stuff' right away.

To the layman, this means you can host your very own website! For free, none of this $20/month business!

Also, there's a small community of users on the server who like to talk to each other using the rudimentary posix 'talk' program, localhost irc, etc.

Also, I love teaching people about linux, telling them about all the cool projects they can set up if they only have a linux box with a static IP, and I will talk your ears off if you want me to, while guiding you through learning things.

Or if you aren't interested in learning and are just looking for a persistent box to use 'screen' to stay logged into IRC all the time, I can give you that too (latest weechat git builds, latest irssi source builds, etc)

It'll also give you a great feel of what it was like to use a computer in the 1980's.

The benefit here isn't the operating system, it's the persistent uptime, the community, the static IP, and the extremely high thoroughput connection.

I recommend using tmux as an alternative to screen, which lets you use multi-pane windows, and also lets you keep a live session going even when you get disconnected. I don't like the default prefix of ctrl-b, but I find alt-a to be suitable. To get this, add the following to your .tmux.conf file:

set-option -g prefix M-a

Then type 'tmux' to load it up.

i use the ` key, which I have yet to find a use for in any situation ever. since 90% of the time, the next key you're going to press is a number key, this works really well.

Good point. Actually it is useful in bash scripting when you want to include the output of a command in the arguments of another. However you can get it to work when you press the key twice by using send-prefix like so:

set-option -g prefix `
bind-key ` send-prefix

The only disadvantage is that now you can't copy and paste without losing your backticks, and possibly triggering an action you didn't intend. I haven't yet run into a situation where this was relevant though.

Reply here with contact information, should you be opposed to email or IRC.

  • Lesswrong Username
  • Email Address (obfuscated)
  • Preferred shell username

LW username: arundelo
email address: echo "$LW_USERNAME^" | tr ^ @
preferred shell username: arundelo


Username: RobertLumley

E-mail: "r" + My last name + "1"

Preferred username in decreasing order of preference: robert, rlumley, robertl


  • LW username: AllanGering.
  • Email: My first name + "j" + my last name at gmail dot com.
  • Usernames in decreasing order of preference: allan, allang, agering.

Thank you, this is a wonderful initiative!

Lesswrong Username: alexgreen728

Email Address (obfuscated): [LW username] in

Preferred shell username: alexgreen728


  • LW username: komponisto
  • Email address: [my LW username]["at"-symbol][US domain of Yahoo! Inc] OR: [that other address from which I sent an email to you that you haven't replied to yet]
  • preferred shell username: komponisto

EDIT: And thank you, of course!

LW username: John_Maxwell_IV
email address (nice idea arundelo): echo "" | tr 'wxyz' 'alre'
preferred shell username: "john" if you've got it; "johniv" otherwise

Thank you!

  1. See above. Yeah, that is my real name.
  2. My first name dot my last name at ASU dot EDU.
  3. Exactly the same as my username.

You sir, are a badass.

See above. Yeah, that is my real name.

Wow....really? I had always been reading it as a (possibly ironic) self-congratulatory pseudonym.

Wow....really? I had always been reading it as a (possibly ironic) self-congratulatory pseudonym.

Yeah, apparently my extreme manliness has acausal effects on my ancestors' naming conventions.

Contact information goes here, as a reply to this comment.

(I have no relation to JohnWittle, I'm just trying to keep the thread tidy in case it becomes popular. I will delete this comment if JohnWittle asks me.)

[This comment is no longer endorsed by its author]Reply

(If a comment like this is wanted, then it is probably better for it to be by JohnWittle, otherwise a reply to this thread might go unnoticed, as you get the notification, not JohnWittle.)

Indeed, I'll make the comment now. Bluecomet: please delete.

Bluecomet can't delete while there are replies beneath the comment, if I remember correctly how this works.

He can 'retract' it, which is good enough.

The cost of ball is $0.05.