The common and widespread status bar for screen, plus minor tweaks for the GNU screen configuration file (.screenrc). Copy from below or download it from here.

# Bind F11 and F12 (NOT F1 and F2) to previous and next screen window
bindkey -k F1 prev bindkey -k F2 next startup_message off

# Window list at the bottom.
hardstatus alwayslastline
hardstatus string "%-w%{= BW}%50>%n %t%{-}%+w%< | %c | %D %d"

# Enable mouse scrolling and scroll bar history scrolling
termcapinfo xterm* ti@:te@

Tab complete for SSH

This snippet from .bashrc/.bash_profile was gifted from Marcel Molina, but I thought I would share because it’s life changing. Put this in your .bashrc or .bash_profile:

SSH_COMPLETE=( $(cat ~/.ssh/known_hosts | \
cut -f 1 -d ‘ ’ | \
sed -e s/,.*//g | \
uniq | \
egrep -v [0123456789]) )
 complete -o default -W ”${SSH_COMPLETE[*]}” ssh

SSH with authentication files

Update: For the impatient people:

ssh-keygen -t rsa && ssh-copy-id -i ~/.ssh/id_rsa.pub

It’s handy to log into our machine, and then to be able to access all machines of our network (or even remote machines) via SSH, without having to enter the password each time. We can avoid manual authentication generating an authentication key in our machine, and then adding that key to the list of authorized keys in remote machines.

Of course this give to our computer a strong power: we need to have extra care in its protection…

Generally speaking this is a two step procedure:

STEP1: generate your authentication key

$ ssh-keygen -b 2048 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/utente/.ssh/id_rsa): (hit ENTER)
Created directory '/home/utente/.ssh
Your identification has been saved in /home/utente/.ssh/id_rsa.
Your public key has been saved in /home/utente/.ssh/id_rsa.pub.
The key fingerprint is:

STEP2: import your auth file in the remote server

Then you have to append into the authorized_keys file (it’s in your .ssh directory) the file you just created locally.
First scp the file to your remote home, then append it… easy?

$ scp  ~/.ssh/id_rsa.pub user@remotehost
$ ssh user@remotehost
$ cat id_rsa.pub >> .ssh/authorized_keys
$ rm id_rsa.pub