Ubuntu server - Simpel opsætning

Denne guide

I denne guide lærer du at sætte en basal "headless" Ubuntu-server op med en enkelt harddisk. Headless i denne sammenhæng betyder, at du kan fjerne tastetur og mus efter installationen og tilgå serveren over netværk ved hjælp af SSH

Jeg har valgt ikke at kommentere hvert eneste skærmbillede, da langt de fleste af dem giver sig selv. Der er kommentarer hvor det er nødvendigt, eller hvor du som bruger skal foretage dig et aktivt valg.

Hardware

I denne guide har jeg oprettet en virtuel maskine i VirtualBox, med nedestående parametre:

RAM 1024 MB
Grafikhukommelse 12 MB
Harddiske (simpel) 1 stk 100GB
Harddisk (avanceret) 2 stk 100GB
Lydkort Nej
Netværk Netværksbro, så den virtuelle maskine er koblet på værtens netværk

Netværket

Serveren er sat i et netværk med følgende parametre:

Netværk 192.168.0.0
Netmaske 255.255.255.0 (CIDR /24)
Gateway 192.168.0.1
DNS 8.8.8.8 8.8.4.4 (Googles DNS)
DHCP-scope 192.168.0.50 - 192.168.0.200

På den måde er der plads til 47 statiske IPadresser
Domain name home.local

For serveren gælder der følgende:

Server IP 192.168.0.10
Netmaske 255.255.255.0 (CIDR /24)
Gateway 192.168.0.1
DNS 8.8.8.8 8.8.4.4 (Googles DNS)
FQDN mainsrv.home.local

Harddisk opsætning

Der vil i denne guide være to muligheder for opsætning af harddiske. De er beskrevet her:

Simpel setup

I dette setup vil der være en harddisk (100GB), og vi vil lade installationen partitionere harddisken for os.

Ubuntu vil lave en logisk swap-partition på størrelse med RAM og resten vil blive anvendt til en primær systempartition (/). I dette tilfælde

/ 99 GB
swap 1 GB
Avanceret setup

I dette setup vil der blive anvendt 2 harddiske (2 stk. 100GB). Harddiskene vil blive sat op ved hjælp af LVM. Se nedenstående skema:

Harddiske
Physical Volumes - PV
LVM - gruppe
Volume Groups - VG
Logiske grupper
Logical Volumes - LV
Størrelse Monteringspunkt Beskrivelse
/dev/sda

/dev/sdb
arkiv01 system 10 GB / System
server 120 GB /srv Ressourcer til netværket
data 30 GB /data backup og dokumentation
web 8 GB /var/www Placering af hjemmeside
swap 1 GB swap swap drev

Anvend tasteturet

Under installationen af Ubuntu serveren skal du anvende tasteturet. I starten er det lidt underligt at navigere ved hjælp af tasteturet, men det hurtigt og effektivt. Navigationen fungerer efter følgende skema:

Tast Funktion
Tab Hopper mellem de forskellige punkter i installationsmenuen.
Mellemrum Vælger.
Enter Udfører. Ved flere menuer vil Enter gøre sådan at du blot accepterer der der står i installationsmenuen.
, , , Kan i nogle tilfælde anvendes til at vælge med.

Ved langt de fleste installationsmenuer står informationerne også i bunden:

Ved fejlvalg

Hvis du laver en fejl kan du altid gå tilbage i installtionsmetoden ved at vælge Gå tilbage og derefter vælge punktet hvor det gik galt. Har du lavet indtastninger husker installationen på det, så du kan nøjes med at ændre de ting der er fejl i.

Begynd installationen

Før selve installationen starter skal du vælge sprog. Herunder kommer der skærmdumps fra installationen

Vælg dansk

Vælg den første mulighed: Installér Ubuntu Server

Forsæt installationen på Dansk. Vælg: Ja og derefter "Danmark".

Tastetur

Efter du har valgt sprog skal du vælge dit tastetur. Vælg Nej, for at du selv kan vælge dit tastetur.

Herefter installeres nogle filer:

Netværk

Netværksopsætningen kan være lidt tricky. Det skyldes at serveren automatisk vil forsøge at finde en DHCP-server så den automatisk får en IP-adresse. Denne funktion vil normalt ligge i den router du har stående. Vi vil have at den får en fast IP, nemlig 10.0.2.10.

Den nedestående fejlmeddelelse kommer hvis du ikke har nogen DHCP-server på netværket. Vælg: Fortsæt.

Hvis du har en DHCP-server på netværket vil Ubuntu selv sætte netværket op, og du ender med nedestående vindue "Angiv dette systems værtsnavn". Her skal du ikke vælge Fortsæt, men vælge Gå tilbage, for at kunne konfigurere netværket selv.

Manuel opsætning af netværk

I vinduet "Sæt netværket op" skal du vælge Sæt netværket op manuelt.

Herefter skal du indtaste netværkets oplysninger. I denne opgave er de:

Server IP 192.168.0.10/24
Gateway 192.168.0.1
DNS 8.8.8.8 8.8.4.4 (Googles DNS)
Værtsnavn mainsrv
Domænenavn home.local

Når du har indtastet netværksinformationerne taster du blot Enter, så bliver Fortsæt automatisk valgt.

Brugeropsætning

Den første bruger man opretter på et Ubuntu-system er automatisk sudo bruger. Derfor er det vigtigt at du husker brugernavn og password. Er det kun til test du opretter serveren vil jeg anbefale at du anvender dine initialer og 123qwe som adgangskode. Læg mærke til at Ubuntu advarer dig om at det er svagt password, hvis det ikke indeholder nok tegn eller en god blandning af bogstaver, tal, tegn og symboler.

Angiv først brugerens fulde navn og herefter brugernavn på computeren:

Angiv adgangskode:

Hvis du ligesom mig har valgt et meget simpelt password (Her har jeg valgt 123qwe) vil installationen advare dig så du kan ændre det. Er det til testformål er det ikke vigtigt, men skal den f.eks. bruges som webserver, bør du have en adgangskode der indeholder minimum 10 tegn, og hvor det er en blanding store og små bogstaver, tal og tegn.

Du kan vælge at kryptere dit hjemmekatalog. Jeg vælger som regel Nej

Vælg herefter tidszone:

Opsætning af harddisk

Herunder får du mulighed for at vælge to forskellige harddiskkonfigurationer.

Opsætning Beskrivelse Anbefales til
Simpel Her vil vi lade installationen konfigurere harddisken. Der vil blive lavet en mindre swap-partition og resten bliver til / Simple backup og server løsninger
Avanceret Harddisken vil blive sat op med LVM, sådan at du senere kan ændre i partitionsstørelser, udskrifte harddiske osv. Produktionssystemer, hvor sikkerhed og drift er vigtig

Simpel opsætning

Med denne metode sørger Ubuntu selv for at sætte harddisken op. Det gør den ved at lave 2 partitioner: root (systemdrev) og swap. Swap bliver sat nogenlunde til den samme RAM-mængde som computeren har. Vælg "Guidet - benyt en hel disk" og derefter den disk du vil partitionere.

Til sidst får du et overblik over de ændringer du har lavet på harddisken og du skal bekræftige at du vil skrive på disken. Svar Ja.

Avanceret opsætning

For at gøre denne guide overskuelig har jeg valgt at lægge den avancerede opsætning i et andet dokument. Heri vil du blive guidet igennem at sætte Ubuntu serveren op med LVM med følgende konfiguration:

Harddiske
Physical Volumes - PV
LVM - gruppe
Volume Groups - VG
Logiske grupper
Logical Volumes - LV
Størrelse Monteringspunkt Beskrivelse



/dev/sda (100GB)






Arkiv01
system 10 GB / System
server 120 GB /srv Ressourcer til netværket
data 30 GB /data backup og dokumentation


/dev/sdb (100GB)
web 8 GB /var/www Placering af hjemmeside
swap 1 GB swap swap drev
- 31 GB - FRI

Grunden til at der er plads til overs skyldes at denne installation vil blive anvendt i en LVM guide, så der er noget fri plads at eksperiemtere med.

Find guiden her: server_avanceret_HD_install_16.06.LTS.html

HTTP-Proxy og opdateringer

Hvis du har en HTTP-proxy der skal sættes op ... så har du ikke brug for denne guide. Vælg fortsæt uden at skrive noget på linien:

Konfigurer hvordan systemet skal opdateres. Hvis du blot ønsker en meget simpel server, du ikke skal have noget arbejde med, kan du roligt vælge: Installer sikkerhedsoplysninger automatisk. Hvis du selv ønsker at have kontrol over opdateringerne vælger du: Ingen automatiske opdateringer (ANBEFALET).

Installer OpenSSH server

I denne opsætning vælger vi kun at installere det mest basale. "Standard system utilities" er valgt som standard, så du skal kun tilføje "OpenSSH server", så du kan få adgang til serveren over netværket. Vælg Fortsæt, så installationen fortsætter.

Bootloaderen GRUB

GRUB (the GRand Unified Bootloader) sørger for at Ubuntu kan boote. Alt efter om du har valgt simpel eller avanceret harddiskopsætning, så vil du få et af nedestående vinduer

Simpel harddisk opsætning

Vælg at installere GRUB på opstartssporet - tryk Ja.

Avanceret harddisk opsætning

Her kan du vælge hvor du vil have GRUB installeret. Vælg den første harddisk /dev/sda ... og tryk Enter

Herefter er installationen færdig. Tryk Fortsæt, fjern bootmediet og nyd din nyinstallerede server:

Første start

Det første opstartsbillede er GRUB'en

Herefter melder Ubuntu sig klar, så du kan logge ind.

Første gang du logger på får du informationer om servere. De vigtigste du skal forholde dig til er sektionen med opdateringer.

Opdatering af serveren

For at opdatere er der 3 ting vi skal have gjort:

  1. Ændre repositories fra danske til internationale og tilføjer partner repository
  2. Opdatere repository filerne
  3. Opgradere Ubuntu
  4. Fjerne overflødige kerner (efter kontrolopstart)

Ubuntu søger som standard i danske repositories efter filer. Det er min erfaring at disse er langsommere at tilgå og hente fra end de internationale. Derfor er det min anbefaling at det ændres. Først tager vi en kopi af den fil vi arbejder med, så vi altid kan gå tilbage til den oprindelige tilstand.

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

Det som skal ændres er er adressen til opdateringerne (repositories). Da vi valgte at installere Ubuntu serveren på dansk, er adresserne sat til danske arkiver. For at ændre det skal vi fjerne referencerne til dk i /etc/apt/sources.list og til det formål anvender vi kommandoen sed. Kommandoen her bytter teksstrengen dk.archive ud med archive.

sudo sed -i s/dk.archive/archive/ /etc/apt/sources.list Opdater repository filerne sudo apt update
thoj@mainsrv:~$ sudo apt update
Henter:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [94,5 kB]
Henter:2 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]
Henter:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [94,5 kB]
Henter:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [92,2 kB]
Henter:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages [1.201 kB]
...
Opgrader serveren

Det er min anbefaling at du vælger at lave en dist-upgrade, da det vilgive dig de nyeste filer.

sudo apt dist-upgrade -y

Herunder er terminal-output for min opdatering. Som du kan se får du en beskrivelse af hvilke papper der opggraderes, hvor mange, hvor meget der skal hentes og hvor meget det kommer til at fylde når opgraderingerne er færdige

thoj@mainsrv:~$ sudo apt dist-upgrade -y
Indlæser pakkelisterne... Færdig
Opbygger afhængighedstræ        
Læser tilstandsoplysninger... Færdig
Beregner opgraderingen... Færdig
Følgende NYE pakker vil blive installeret:
  libpython3.5 linux-headers-4.4.0-28 linux-headers-4.4.0-28-generic
  linux-image-4.4.0-28-generic linux-image-extra-4.4.0-28-generic
Følgende pakker vil blive opgraderet:
  accountsservice apport apt apt-transport-https apt-utils base-files
  bash-completion bind9-host bsdutils command-not-found command-not-found-data
  dh-python distro-info-data dmidecode dnsmasq-base dnsutils dosfstools dpkg
  gcc-5-base grep init init-system-helpers initramfs-tools initramfs-tools-bin
  initramfs-tools-core language-selector-common libaccountsservice0
  libapt-inst2.0 libapt-pkg5.0 libbind9-140 libblkid1 libdns-export162
  libdns162 libdrm2 libexpat1 libfdisk1 libglib2.0-0 libglib2.0-data
  libgnutls-openssl27 libgnutls30 libisc-export160 libisc160 libisccc140
  libisccfg140 libldap-2.4-2 liblwres141 liblxc1 libmount1 libpam-systemd
  libplymouth4 libsmartcols1 libssl1.0.0 libstdc++6 libsystemd0 libtasn1-6
  libudev1 libuuid1 libxml2 linux-firmware linux-generic linux-headers-generic
  linux-image-generic lsb-base lsb-release lshw lxc-common lxcfs lxd
  lxd-client mdadm mount mtr-tiny openssh-client openssh-server
  openssh-sftp-server openssl plymouth plymouth-theme-ubuntu-text
  python3-apport python3-commandnotfound python3-distupgrade
  python3-problem-report python3-software-properties python3-urllib3
  shared-mime-info snapd software-properties-common sudo systemd systemd-sysv
  ubuntu-core-launcher ubuntu-release-upgrader-core udev util-linux
  uuid-runtime vim vim-common vim-runtime vim-tiny wget
100 opgraderes, 5 nyinstalleres, 0 afinstalleres og 0 opgraderes ikke.
142 MB skal hentes fra arkiverne.
Efter denne handling, vil 304 MB yderligere diskplads være brugt.
Henter:1 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 base-files amd64 9.4ubuntu4.1 [68,4 kB]
...
Fjern alle overflødige pakker sudo apt autoremove -y

Når man arbejder med den nyeste ubuntu lige efter udgivelsen vil der sjældent være pakker der er overflødige, men der vil ske opgradering af programmer løbende som vil efterlade filer på harddisken som er overflødige.

thoj@mainsrv:~$ sudo apt autoremove -y
Indlæser pakkelisterne... Færdig
Opbygger afhængighedstræ        
Læser tilstandsoplysninger... Færdig
0 opgraderes, 0 nyinstalleres, 0 afinstalleres og 0 opgraderes ikke.
Fjern overflødige kerner

Du vil komme til at opleve at kerne bliver opdateret ret ofte. Det skyldes at der konstant arbejdes på at forbedre sikkerheden, drivers og hastighed. Det betyder desværre også, at man risikerer at der ligger en masse data på ens harddisk, man aldrig bruger. Før man fjerne ældre kerner kontrollerer man at systemet virker som det skal ved at genstarte systemet og tjekke de tjenester man anvender. Da det er en ny installation er der endnu ikke nogen tjenester der skal kontrolleres.

Genstart serveren

sudo reboot

Efter login kan du se at der ikke er nye opgraderinger, og at kernen i dette tilfælde er skiftet fra 4.4.0-21 til 4.4.0-28.

Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-28-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 pakker kan opdateres.
0 opdateringer er sikkerhedsopdateringer.


Last login: Sat Jul  2 11:50:44 2016 from 192.168.0.77

Herefter køres følgende kommando (en linie)

sudo apt purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve $(uname -r | sed -r 's/-[a-z]+//') | sed ':a;N;$!ba;s/\n/ /g')
thoj@mainsrv:~$ sudo apt purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve $(uname -r | sed -r 's/-[a-z]+//') | sed ':a;N;$!ba;s/\n/ /g')
[sudo] adgangskode for thoj: 
Indlæser pakkelisterne... Færdig
Opbygger afhængighedstræ        
Læser tilstandsoplysninger... Færdig
Følgende pakker vil blive AFINSTALLERET:
  linux-headers-4.4.0-21* linux-headers-4.4.0-21-generic*
  linux-image-4.4.0-21-generic* linux-image-extra-4.4.0-21-generic*
0 opgraderes, 0 nyinstalleres, 4 afinstalleres og 0 opgraderes ikke.
Efter denne handling, vil 295 MB diskplads blive frigjort.
Vil du fortsætte? [J/n]

Som du kan se bliver der fjernet i alt 295 MB, når du klikker j. Opdaterer du din server jævnlig (som du bør gøre), så vil der efterhånden kunne ligge gigabytes af forældede kerner. Så du bør rense din computer for kerner med jævne mellemrum.

Administration af server

Det er min anbefaling at du anvender SSH til at arbejde på serveren. På den måde kan den administreres fra en hvilken som helst PC der har en SSH klient installeret.

Anvender du Ubuntu/Linux eller Mac, er SSH indbygget i kommandoprompten. Anvender du Windows skal du anvende en SSH klient, men Microsoft er igang med at implementere SSH i Windows (siger rygterne). Derfor skal du indtil videre anvende PuTTY http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Hemmesiden ser meget spartansk ud, men PuTTY er et godt værktøj.

Man tilgår serveren ved hjælp af kommandoen:

ssh *brugernavn*@*IP-adresse*

Herunder har jeg logget på min server ved hjælp af SSH.

thoj@thoj-VirtualBox:~$ ssh thoj@192.168.0.10
thoj@192.168.0.10's password: 
Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-28-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 pakker kan opdateres.
0 opdateringer er sikkerhedsopdateringer.


*** Genstart af computeren er påkrævet ***
Last login: Fri Jul  8 10:56:45 2016 from 192.168.0.77
thoj@mainsrv:~$

Som du kan se er der behov for at genstarter serveren.

sudo reboot