← Helt andre ting
Ansvarsfraskrivelse
Alt innhold publisert på alle sider under menyvalget «Ubuntu», leveres som det er, uten garanti av noe slag. Du bruker dette helt på ditt eget ansvar. Du må tenke selv, undersøke kilder selv og selv ta det fulle og hele ansvar selv for all installasjon, konfigurasjon, bruk og drift og alt som følger av det.
Under ingen omstendighet kan fuglognatur.no holdes ansvarlig for skader, krav, feil eller annet som skyldes bruk av innholdet på disse nettsidene. Det gis ingen garantier for at innhold publisert her er korrekt.
Nettstedet fuglognatur.no fraskriver seg derfor alt ansvar for feil, skader, økonomisk tap, o.l som skyldes bruk av informasjon publisert her.
Alle sider under temaet «Ubuntu» beskriver egne erfaringer og deles som egne erfaringer. Besøkende oppfordres til å sjekke flere kilder fra andre.
Server
Dette nettsedet er utviklet på Dell PowerEdge T110 ii med Ubuntu som operativsysstem.
Noen vi sikkert mene at denne datamaskinen burde stått på museum, men faktum er at den fungerer overraskende bra. Ytelsen er upåklagelig. Med Linux som OS kan en gammel maskin få et nytt liv som staging server i et lite utviklingsmiljø.

Oppgradering
Serveren ble oppgradert med en PERC H200 Raid Controller for å kunne kjøre RAID 5 med et fysisk adapter og to disker. (Server hadde originalt software-raid.)
I tillegg er RAM oppgradert til 2 x 8 GB DDR3. Maskinen har den originale Intel Xeon E3-1220 @3.10 GHz quad-core prosessoren.
OS er nå oppgradert fra Ubuntu 20.04 LTS til Ubuntu 22.04 LTS, en Linux distribusjon. Nettstedet utvikles med WordPress som igjen drives med Apache webserver, MySQL database og PHP.
Ubuntu server
Ubuntu server lastes ned fra https://ubuntu.com/ Det er ulike versjoner som tilbys. I dette tilfellet ble nyeste «stable release» valgt. Pr 2021 var det versjon 20.04 (Focal Fossa). Dette er senere oppgradert til 22.04 (Jammy Jellyfish). Disse LTS(Long Time Support)-versjonene blir vedlikeholdt med oppdateringer i 5 – 10 år fram i tid.
Ubuntu fungerer fint. Når man kommer fra Windows er imidlertid læringskurven bratt og det kun er et terminalvindu å jobbe i. Alt er nytt. Det er tidkrevende, men gøy og lærerikt.
Serveren må konfigureres for sikkerhet og drift. Ressurser for å lære dette finnes på Internett. Det er ingen ulempe å ha et kritisk blikk på de kildene man vurderer å stole på.
Det er ikke noe grafisk brukergrensesnitt (GUI) i Ubuntu server, kun en kommandolinje for skriving og kjøring av kommandoer. Derfor må man lære seg de kommandoene man trenger for å få gjort det man skal. Det er ingen mus, ingen ting å klikke på, kun tastatur og skjerm. Ganske uvant, men effektivt jo mer man lærer.
Canonical tilbyr også Ubuntu Desktop med grafisk brukergrensesnitt. Det er et alternativ til Windows og Mac. Det er rettet mot PC, og omtales ikke her.
PuTTY
PuTTY er et dataprogram som gjør det mulig å jobbe på Ubuntu-serveren fra en PC. Det er mulig fordi man med PuTTY får et terminalvindu på PC’en som viser akkurat det samme som skjerm koblet rett til serveren. Man kan altså jobbe «remote».
Bildet under viser et terminalvindu i PuTTY slik det ser ut på en Windows PC.

Logge inn på server med brukernavn/passord i PuTTY
Før vi går igang med å logge inn på serveren med PuTTY, må vi gjøre litt forberedelser:
- Installere OpenSSH på server
- Generere host keys (nøkler) på server
- Skaffe oss fingerprint for host keys
Pkt 1-3 utføres med skjerm og tastatur koblet direkte på server (ikke PuTTY).
Vi forutsetter nå at OpenSSH er installert og at host keys er generert på server.
Nå skaffer vi oss fingerprint for serverens host keys:
brukernavn@servernavn:~/.ssh$ ssh-keygen -lf id_rsa.pub
SHA256:6S2ZpXXZP5UUAcGl0rXT+rq82o745jAekKYYwBDPPa1 brukernavn@servernavn (RSA)
brukernavn@servernavn:~/.ssh$ ssh-keygen -E md5 -lf id_rsa.pub
MD5:44:06:3b:86:ga:se:5n:09:7g:9a:1f:9a:g8:43:ak:b8 brukernavn@servernavn (RSA)
Fingerprint-format
ssh-keygen kommandoene vist over her skaffet oss her fingerprint for SHA256 og MD5.
NB! Fingerprints noteres. (Vi trenger notatet snart.)
Når vi snart skal logge inn for første gang med PuTTY, trenger vi disse notatene med fingerprints for å sjekke om det er identisk med fingerprint vi vil bli presentert for ved førstegangs pålogging med PuTTY.
Førstegangs pålogging med PuTTY
Vi kjører igang PuTTY på vår Windows PC:
- Connection type: SSH
- Host Name (or IP address): Servernavn eller IP-addressen til server
- Port: 22 (Ev. annen valgt port for SSH på server)
- Open. PuTTY prøver å koble til serveren.
I PuTTY opprettes nå en kryptert kobling mellom PC og server over SSH.
Serveren distribuerer nå sin public host key til PC for første gang. Første gang kan man ikke vite om nøkkelen vi blir bedt om å godta er ekte eller falsk, siden vi aldri har benyttet den før.
Derfor blir vi nå presentert for nøkkelens fingerprint, som er en lang serie med tegn/tall slik vi fant tidligere (se over). Fingerprint må sammenliknes med det vi sjekket på server tidligere og som vi har notert. Disse to fingerprints må være identiske. Hvis de er ulike, kan det være et «man-in-the-middle» angrep, også kalt «spoofing», hvor noen prøver å omdirigere vår pålogging eller stjele vår identitet.
Dersom fingerprints er like, svarer vi «Yes»!
Deretter kan vi skrive inn brukernavn og passord til vår bruker på server. Skriver vi korrekt, er vi «inne» og kan gjøre alt serverarbeid fra vår Windows PC.
Vi avslutter økter ved å skrive exit. PuTTY terminerer.
Fremtidig pålogging
Neste gang vi kobler til server med SSH trengs kun brukernavn og passord, fordi PC er godkjent av serveren med bekreftelse av korrekt fingerprint ved første pålogging.
Ulempen med denne type pålogging er at en angriper/hacker kan snappe opp brukernavn og passord i det øyeblikket det skrives inn og man er tilkoblet Internett, noe vi stort sett er.
Derfor bør man konfigurere server for sikkerhet og begrense tilgang for andre.
Passord bør som minimum være sterkt og vanskelig å gjette. I tillegg kan vi jo bytte det med jevne mellomrom.
Det dominerende rådet på Internett er imidlertid å bruke passordløs tilkobling, særlig hvis man kobler til over et offentlig nettverk. Passordløst regnes som det sikreste.
Passordløs pålogging
For å sette det opp, se putty_user_manual.
Konseptet Public Key Authentication i hovedtrekk
- Public og private keys genereres på PC med PuTTYgen (ikke på server) .
- Public key kopieres til serveren.
- Private key oppbevares kryptert og beskyttet med et sterkt og langt passord på PC.
- For hver innlogging på server må det sterke passordet angis for å dekryptere nøkkelen, men..
- Man kan bruke Pageant, et separat verktøy til PuTTY som inneholder den dekrypterte private nøkkelen og genererer signatur på forespørsel ved pålogging til server. Man trenger kun å skrive inn passordet én gang pr Windows økt, men kan logge på/av server mange ganger innenfor samme økt fordi nøkkelen blir de-kryptert når passordet er angitt i Pageant.
Ulemper med public key authentication
- Krever sterkt og langt passord.
- Krever Pageant for å slippe å skrive inn passord ved hver pålogging.
- Ikke så godt egnet ved automatiserte batch scripts over SSH.
Enten man bruker den ene eller den andre metoden for innlogging, vil mye avhenge av bruker(e) av systemene og hvordan utviklingsmiljøet er satt opp. Valg av passord er jo alltid viktig.
Mange fortrekker Public Key Authentication framfor autentisering med brukernavn og passord. Når datamaskiner er åpne for forespørsler fra Internett blir man sårbar og utsatt for angrep. Da er sikre systemer viktig.
Hver enkelt må vurdere selv hva slags sikkerhet som skal implementeres.
Regelmessig oppdatering av server
Enten man logger inn med PuTTY eller direkte på server, må man oppdatere Ubuntu hyppig. Oppdatering gjøres med følgende kommando:
brukernavn@servernavn:~$ sudo apt update && sudo apt upgrade
Kommandoer skrives etter brukernavn@servernavn:~$
brukernavn = det du har angitt som ditt brukernavn
servernavn = det du har angitt som navn på din server
sudo betyr at brukeren, som ikker er administrator, får midlertidige rettigheter som superuser (SU) til å kjøre kommandoer som apt update og apt upgrade. Det er bare SuperUser som kan kjøre en rekke slike administrative kommandoer som dette. sudo betyr altså «superuser do», eller på norsk: «gjør meg til superbruker».
apt update finner og laster ned oppdateringene denne maskinen mangler.
apt upgrade installerer oppdateringene som ble lastet ned.
sudo benyttes til kommandoer som bare SuperUser har rettigheter til å kjøre.
&& kobler sammen de to kommandoene apt update og apt upgrade.
Merk: Kommando apt upgrade blir kun kjørt dersom kommando apt update terminerer vellykket. Dette skjer fordi vi bruker &&.
Logge ut
Logg ut ved å skrive «exit» eller «logout». Det er ikke anbefalt å «krysse» ut vinduet. Å terminere økten med Alt+F4 eller «krysse ut vinduet» brukes kun dersom man ikke kan avslutte normalt.