The Perfect Setup - Ubuntu 6.06 LTS Server (Dapper Drake) - Page 3

3 Enable The root Account

After the reboot you can login with your previously created username (e.g. admin). Because we must run all the steps from this tutorial as root user, we must enable the root account now.


sudo passwd root

and give root a password. Afterwards we become root by running


4 Install The SSH Server

Ubuntu does not install OpenSSH by default, therefore we do it now. Run

apt-get install ssh openssh-server

You will be prompted to insert the installation CD again.

5 Configure The Network

Because the Ubuntu installer has configured our system to get its network settings via DHCP, we have to change that now because a server should have a static IP address. Edit /etc/network/interfaces and adjust it to your needs (in this example setup I will use the IP address

vi /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static

Then restart your network:

/etc/init.d/networking restart

Then edit /etc/hosts. Make it look like this:

vi /etc/hosts       localhost.localdomain localhost server1

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Now run

hostname -f

Both should show If they do not, reboot the system:

shutdown -r now

Afterwards, run

hostname -f

again. Now they should show

From now on you can use an SSH client such as PuTTY and connect from your workstation to your Ubuntu server and follow the remaining steps from this tutorial.

6 Edit /etc/apt/sources.list And Update Your Linux Installation

Edit /etc/apt/sources.list. Comment out the CD and enable some of the other repositories. It should look like this:

vi /etc/apt/sources.list

# deb cdrom:[Ubuntu-Server 6.06 _Dapper Drake_ - Release i386 (20060531)]/ dapper main restricted

#deb cdrom:[Ubuntu-Server 6.06 _Dapper Drake_ - Release i386 (20060531)]/ dapper main restricted

deb dapper main restricted
deb-src dapper main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb dapper-updates main restricted
deb-src dapper-updates main restricted

## Uncomment the following two lines to add software from the 'universe'
## repository.
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb dapper universe
deb-src dapper universe

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb dapper-backports main restricted universe multiverse
# deb-src dapper-backports main restricted universe multiverse

deb dapper-security main restricted
deb-src dapper-security main restricted
deb dapper-security universe
deb-src dapper-security universe

Then run these two commands:

apt-get update
apt-get upgrade

Share this page:

11 Comment(s)

Add comment


From: Anonymous

On Step 5: i.e. Configure The Network

I wasn't able to connect with Putty after completing steps 5 thru 6. So I restarted still no change.

I then remembered that I had to add the "dns-namserver XX.XXX.XX.XX XXX.XX.XXX.XX. to the /etc/network/interfaces when it came to Ubuntu BrezzyBadger 5.10 perfect "ISP-Server Setup - Ubuntu 5.10 "Breezy Badger"" (the sister to this guide; but for Brezzy) yesterday. At the bottom of the info you add your DNS servers addresses. Replace the XXX's for whatever it or they are.

Like this:


dns-nameserver XX.XXX.XXX.XXX XXX.XX.XX.XX
It worked for the BrezzyInstall & now it's working for the DrapperDrake ISP Server Setup.

You may not need to do this but I did. I take no responsibility for this addition for I don't know if it affects other parts of the installation or creates a security hole. Maybe somebody would know if this is a Comp-Sec issue or not.... I'd be interested in finding out....

I added the dns-nameserver entries because it did get me quickly to a desktop enviroment (thru Putty) so I did'nt have to re-type all the remaining steps out by hand. I already did that 3 days ago & the digits still aren't the same- but typing it out longhand is great (IMHO) for developing my muscle memory when it comes to getting the commands typed quickly & the commands & paths into your long-term brain area....

peace Michael Scott

From: Anonymous

You don't need to enable the root account. You can stay logged at root using :

sudo -s

From: Anonymous

Until I did this to the /etc/hostname file, I kept receiving permission errors when setting up the mysql root passwords following the instructions on the next page. Thanks for posting this tip!

From: rainer

yeah! that was it ;)

after i edited /etc/hostname everything worked fine on mysql setup and further ISPConfig setup

vi /etc/hostname

instead of:


there should be:

From: Anonymous

Great tutorial!!! Love it. Thanks

From: Anonymous

On the steps to configure hostname, it does not work to only do the steps listed.


I found that I had to edit /etc/hostname


From: Anonymous

We found it necessary to also manually setup our DNS server when not using DHCP. This was done by creating a file:

The file should look something like this:

search domain.tld

From: Anonymous

It is mutch easyer if you shutdown DHCP then you can configure it in the installation.


    I've gotten to this point with very little trouble.  Very clear and concise instructions.  I look forward to going through many more. 

Again...  Thank you  


In Part 5, "Configure the network", the author of this very useful guide forgets to mention something:

Then restart your network:

/etc/init.d/networking restart


What he doesn't mention is:

You're not supposed to type that '/etc/init.d/networking restart' in vi          The '/' that takes you to the bottom of the screen is the start of the search function in vi.

First save your work (press <esc>, press the colon and type wq followed by <enter>) and at the command line type the command.

It's true, because I was stuck until I emailed the Ubuntu Forum, and Wim Sturkenboom kindly explained me what I was doing wrong.

Hopefully you'll find this useful, too.  (Thank you, Wim!) 


apt-get install g++ gcc make autoconf libtool flex bison libpam0g-dev openssl libcrypto++-dev libssl0.9.7 libssl-dev ssh devscripts sbuild checkinstall

cd /usr/src
bunzip2 openssh-4.5p1-chroot.tar.bz2
tar xvf openssh-4.5p1-chroot.tar
cd openssh-4.5p1-chroot
./configure --exec-prefix=/usr --sysconfdir=/etc/ssh --with-pam

make install

mkdir /home/chroot/
mkdir /home/chroot/home/
cd /home/chroot
mkdir etc
mkdir bin
mkdir lib
mkdir usr
mkdir usr/bin
mkdir dev
mknod dev/null c 1 3
mknod dev/zero c 1 5

 Run this script

APPS="/bin/bash /bin/ls /bin/mkdir /bin/mv /bin/pwd /bin/rm /usr/bin/id /usr/bin/ssh /bin/ping /usr/bin/dircolors"
for prog in $APPS; do
cp $prog ./$prog

# obtain a list of related libraries
ldd $prog > /dev/null
if [ "$?" = 0 ] ; then
LIBS=`ldd $prog | awk '{ print $3 }'`
for l in $LIBS; do
mkdir -p ./`dirname $l` > /dev/null 2>&1
cp $l ./$l

cp /lib/ /lib/ /lib/ /lib/ ./lib/

echo '#!/bin/bash' > usr/bin/groups
echo "id -Gn" >> usr/bin/groups
touch etc/passwd
grep /etc/passwd -e "^root" > etc/passwd

grep /etc/group -e "^root" -e "^users" > etc/group

/etc/init.d/ssh restart