Skip to content

Latest commit

 

History

History
185 lines (104 loc) · 9.55 KB

File metadata and controls

185 lines (104 loc) · 9.55 KB

h4 Maailma kuulee

Linux Palvelimet 2024 alkusyksy -kurssin neljännessä tehtävässä vuokrasin virtuaalipalvelimen, tein sille alkutoimet, ja asensin sille weppipalvelimen.

Tein tehtävän torstaina 12.9.2024. Aloitin klo 15, ja valmista tuli klo 20.

Laitteisto

Host

Käytössäni on Windows 11 Home -käyttöjärjestelmällä varustettu jokusen vuoden vanha HP:n kannettava kone, jonka tiedot ovat seuraavat:

  • HP:n kannettava Envy x360
  • 64-bittinen käyttöjärjestelmä: Windows 11 Home Edition
  • CPU ja näytönohjain: AMD Ryzen 7 3700U with Radeon Vega Mobile Gfx 2.30 GHz (4 ydintä, 8 säiettä)
  • RAM: 16,0 GB (käytettävissä 13,9 GB)
  • Levytila: 476 GB SSD, vapaana 202 GB

Guest

  • Virtualisointiympäristönä Oracle VM VirtualBox 7.0.20
  • Virtuaalikoneena Debian GNU/Linux 12.6.0 (”Bookworm”)
  • CPU 4 ydintä
  • RAM: 4 GB
  • Levytila: 30 GB

x) Lue ja tiivistä

Ennen varsinaisen tehtävän aloittamista luin hieman teoriaa virtuaalipalvelimista Karvisen artikkelista First Steps on a New Virtual Private Server – an Example on DigitalOcean and Ubuntu 16.04 LTS. Artikkelissa esitetään tiiviisti toimenpiteet, joiden avulla virtuaalipalvelin saadaan pystyyn:

  • Perusta tili palveluntarjoajalle (esimerkkinä Digital Ocean) ja luo uusi virtuaalipalvelin.
  • Kirjaudu koneelle etänä SSH:ta hyödyntäen. Luo käyttäjä ja anna käyttäjälle sudo-oikeudet.
  • Pystytä palomuuri, tee reikä SSH:ta varten.
  • Lukitse root-tili.
  • Päivitä ohjelmistot ja asenna web-palvelin kuten Apache.
  • Hanki palvelimellesi domain-nimi julkiselta DNS-palveluntarjoajalta.

Susanna Lehdon erinomaisesta raportista Teoriasta käytäntöön pilvipalvelimen avulla (h4) löysin puolestaan tervetulleet, yksityiskohtaiset ohjeet siitä, miten virtuaalipalvelimen perustaminen kannattaa käytännössä tehdä vaihe vaiheelta. Tämän tasoiset ohjeet ovat minulle aloittelijana arvokkaita; edellisen tehtävän kanssa käytin tuntikausia aikaa virheiden selvittelyyn, koska en tahtonut ymmärtää osaamistasooni verrattuna turhan ylimalkaisia ohjeita.

a) Virtuaalipalvelimen vuokraus

Vuokraa oma virtuaalipalvelin haluamaltasi palveluntarjoajalta. (Vaihtoehtona voit käyttää ilmaista kokeilujaksoa, GitHub Education krediittejä; tai jos mikään muu ei onnistu, voit kokeilla ilmaiseksi vagrant:ia paikallisesti. Suosittelen kuitenkin harjoittelemaan oikeilla, tuotantoon kelpaavilla julkisilla palveluilla).

Edellisellä viikolla jättämäni GitHub Education -hakemukseni oli lisätietojen antamisen jälkeen hyväksytty, ja pääsin tutkimaan Student Developer Pack -sivuston tarjoamaa, josta kurssikaveri ystävällisesti vinkkasi (oikeaa sivua en onnistunut löytämään Git Hub Educationin sivustolta muuten lainkaan).

Navigoin sivun keskivaiheille kohtaan All offers ja valitsin DigitalOceanin tarjouksen.

image

image

Kirjauduin Digital Oceaniin GitHub-tunnuksillani, ja käytin Student Pack -tarjouksen.

image

Seuraavaksi loin virtuaalipalvelimen (Create Droplet).

image

Valinnat:

image

image

image

image

Valitsin palvelimeeni regioonan läheltä itseäni, OS Debian 12, shared regular CPU, min. 1 GB RAM, 25 GB SSD, 1000 GB transfer. En valinnut lisäpalveluja. Hintaa kombinaatiolle tuli 6 USD/kk.

Kone luotiin n. 30 sekunnissa. Otin talteen koneen IP-osoitteen ja tiedot. Tein itselleni kalenterimerkinnän poistaa kone, jos en tarvitse sitä enää vuoden jälkeen.

image

b) Alkutoimet virtuaalipalvelimella

Tee alkutoimet omalla virtuaalipalvelimellasi: tulimuuri päälle, root-tunnus kiinni, ohjelmien päivitys.

Käynnistin VirtualBoxissa sijaitsevan virtuaali-Debianini (niina-virtualbox) ja avasin terminaalin. Otin SSH-yhteyden virtuaalipalvelimeeni osoitteessa 167.71.76.115. Ensimmäisen yhteyden ollessa kyseessä, komento oli

ssh root@167.71.76.115

image

Yhteys tuli luotua onnistuneesti.

image

Lisäsin käyttäjän nlholm (sudo adduser nlholm), ja annoin käyttäjälle sudo-oikeudet (sudo adduser nlholm sudo).

image

Asensin palomuurin (sudo apt-get install ufw), tein siihen reiän SSH:ta varten (sudo ufw allow 22/tcp) ja laitoin palomuurin päälle (sudo ufw enable).

image

Testasin toisella terminaaliyhteydellä, että yhteys verkkopalvelimen käyttäjään löytyy. Onnistuin toisella yrittämällä.

image

Palasin ensimmäiseen terminaaliin, lukitsin juuritilin (sudo usermod --lock root), ja vaihdoin käyttäjäksi nlholm (su nlholm).

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade

image

Lopuksi päivitin virtuaalipalvelin delfiinin ohjelmistot.

c) Weppipalvelin virtuaalipalvelimelle

Asenna weppipalvelin omalle virtuaalipalvelimellesi. Korvaa testisivu. Kokeile, että se näkyy julkisesti. Kokeile myös eri koneelta, esim kännykältä.

image

Olin avannut palomuurin portin 80 samalla kuin 22:sen, mutta tarkistin vielä palomuurin tilan.

image

image

image

Asensin web-palvelin Apache2:sen edellisen viikon oppien mukaan.

image

Testisivu toimi.

image

image

image

Korvasin testisivun tervehdyksellä.

image

Loin käyttäjän nlholm kotikansioon kansiot public_html ja publicsites.

image

Asensin micron ja loin lyhyen HTML-sivun käyttäjän nlholm public_html-kansioon.

image

Hmm, sain 403-virheen. Tarkistin kertaalleen, että userdir oli käynnissä, ja käynnistin Apachen uudelleen. Tämäkään ei auttanut.

image

Annoin käyttäjän oikeudet uudestaan edellisellä tunnilla sivutulla komennolla.

image

image

Kotisivut lähtivät käyntiin.

image

Ja toimivat myös Windows-koneen Chrome-selaimessa, ts. julkisen verkon yli.

image

Lopuksi kokeilin luoda nimiperusteisen virtuaali-isännän dolphin.example.com, mutta hosts-tiedosto näyttikin erilaiselta virtuaalipalvelimella. En tehnyt tässä vaiheessa muutoksia.

image

Asennustyöt tuli onnistuneesti tehtyä. Kirjauduin ulos SSH-istunnosta komennolla exit.

Lähteet

Digital Ocean. 2024. Luettavissa: https://www.digitalocean.com/ .

GitHub.com. 2024. GitHub Student Developer Pack. Luettavissa: https://education.github.com/pack#digitalocean .

Karvinen, T. 19.9.2017. First Steps on a New Virtual Private Server – an Example on DigitalOcean and Ubuntu 16.04 LTS. Tero Karvinen – Learn Free Software with me. Luettavissa https://terokarvinen.com/2017/first-steps-on-a-new-virtual-private-server-an-example-on-digitalocean/ .

Karvinen, T. 2024. Linux Palvelimet 2024 alkusyksy. Tero Karvinen – Learn Free Software with me. Luettavissa https://terokarvinen.com/linux-palvelimet/ .

Leino, Susanna. 14.2.2022. Teoriasta käytäntöön pilvipalvelimen avulla (h4). Susanna Leino – Blogi. Luettavissa: https://susannalehto.fi/2022/teoriasta-kaytantoon-pilvipalvelimen-avulla-h4/ .