h4

Tehtävänanto:

a) Tee alusta lähtien oma julkinen palvelin Internetiin.

Vinkkejä: Tee siis uusi virtuaalipalvelin (esim ”Droplet”) ja sille tarvittavat alkutoimet. Tee uusi DNS-nimi. Alanimiä voi yleensä tehdä maksutta: esim. jos hallitsee TeroKarvinen.com, voi tehdä hattu.TeroKarvinen.com. Tässä tehtävässä on tarkoitus sujuvoittaa koko prosessi, tee siis uusi A-tietue nimipalvelimeen ja uusi virtuaalipalvelin alusta lähtien, vaikka sinulla olisi jo sekä nimi että palvelin. Kun kaikki toimii ja raportti on valmis, voit poistaa turhan palvelimen ja jättää itsellesi esimerkiksi vain yhden käyttöön. Jos jäät jumiin, pyri päättelemään, mitkä osat toimivat ja mitkä eivät; ratkomme viimeiset ongelmat yhdessä tunnilla. Palautusaika on tuttuun tapaan 24h ennen seuraavaa tapaamiskertaa, eli vasta talvivapaan jälkeen.

b) Vapaaehtoinen: Etsi lokeistasi merkkejä murtautumisyrityksistä ja analysoi ne.

c) Vapaaehtoinen: Laita TLS-salakirjoitus (https) toimimaan certbot ja Let’s Encrypt avulla.

d) Vapaaehtoinen: Tee weppisivuja omalla, paikallisella koneellasi ja kopioi ne palvelimmelle scp-komennolla.

x) Vaikea, vapaaehtoinen vaihtoehtotehtävä Tämä on vain niille parille propellihatulle, jotka halusivat vaikeamman tehtävän. Korvaa muut h4 koti- ja tuntitehtävät. Koodaa ja julkaise uusi tietokantaa hyödyntävä weppipalvelu. Palvelun pitää ratkaista jokin käytännön ongelma, esimerkiksi ilmoittautuminen tapahtumaan, pisteytä tunti, äänestä suosikkia tms. Voit hyödyntää vanhoja koodejasi, kunhan lopputulos on uusi. Voit käyttää mitä vain kehitysalustaa (framework), esimerkiksi LAMP, Flask, Django, Postgre, Mariadb… Muista lisätä raporttiin ruutukaappaukset keskeisestä toiminnallisuudesta.

Rauta: Läppäri, livetikku, copypaste.

a) Tee alusta lähtien oma julkinen palvelin Internetiin.

Lähdin luomaan uutta virtuaalipalvelinta itselleni ja palveluntarjoajakseni päätyi vultr.com koska minulla on jo täällä muita palvelimia.

Vultr, virtuaalipalvelimen pystytys

Kirjauduin Vultrn sivuille ja lähdin luomaan uutta palvelinta painamalla Deploy Server nappia ( plus merkki sinisellä pohjalla) sivuston oikeasta yläreunasta.

Valitsin Cloude Computen palveluni tyypiksi

Tämän jälkeen Server Locationiin valitsin Amsterdamin

Käyttöliittymäksi Server Typestä valitsin Ubuntu 18.04 x64:n

Server Sizeen valitsin halvimman paketin 5 dollarin hinnalla.

Lopuksi deployasin severin painamalla Deploy Now nappia sivuston pohjalta.

Virtuaalipalvelin konffaus

Hain hallintapaneelista virtuaalipalvelimeni tiedot, elikkä tämän IP:n ja salasanan. Oletuskäyttäjä oli root.

Tehtävänäni oli lisätä uusi käyttäjä sudo voimin, asentaa apache2 ja saada palvelimeni näkymään domainissani jaanisavolainen.com

Avasin terminaalin ja otin ssh-yhteyden virtuaaliapalvelimeeni komennolla

  • ssh root@45.32.232.15

Ensimmäinen tehtäväni oli laittaa palomuuri kuntoon lisäämällä tähän pääsyn portteihin 22 ja 80 jotta pystyn käyttämään apache2 ja ssh:a.

  • sudo ufw allow 22/tcp
  • sudo ufw allow 80/tcp
  • sudo uwf enable

Loin uuden käyttäjän tunnuksella jaani ja lisäsin tämän sudo ryhmään.

  • sudo adduser jaani
  • sudo usermod -aG sudo jaani

Vaihdoin käyttäjän jaaniin komennolla ”su – jaani” ja tarkistin sudo oikeuksien toiminnan päivittämällä paketit sekä asentalalla apachen.

  • sudo apt-get update
  • sudo apt-get install -y apache2

Toiminnot menivät läpi ja totesin apachen toiminnan avaamalla selaimesta virtuaalipalvelimen ip:n. Tämä näytti apachen defaultsivua.

Tämän jälkeen lukitsin root käyttäjän tietoturvasyistä, sillä tämä hankaloittaa potentiaalisten tunkeutujien työtä koska he eivät tiedä muita käyttäjiä kuin rootin. (Ainakin periaatteessa, nythän blogin perusteella tiedetään Jaani)

  • sudo usermode -L -e 1 root

-L parametri tarkoittaa Lockia, -e tarkoittaa expirationia ja 1 että milloinka, elikkäs -e 1 tarkoittaa että lukitsee koneen 1pv unixin alkuajan mukaan, elikkä 1970-01-01 olisi tässä kohtaa lukitus/expire päivämäärä.

Yritin kirjautua puttylla virtuaalipalvelimelle käyttäen root tunnusta ja sain ilmoituksen että access denied. Tunnus on nyt lukittuna.

Myöhemmin googletin lisää aiheesta ja sain tietooni että rootiin voisi vielä olla pääsy root loginilla ssh:n kautta. http://terokarvinen.com/2017/first-steps-on-a-new-virtual-private-server-an-example-on-digitalocean

Muokkasin sudoeditillä tiedostoa /etc/ssh/sshd_config ja vaihdoin PermitRootLoginin arvon yes -> no. Tallensin tiedoston ja käynnistin palvelun uudelleen sudo service ssh restart komennolla.

Namecheap, Domainin DNS nimi , A record

Kirjauduin Namecheap.com sivustolle ja sivusto aukesi dashboardille. Valitsin jo olemassa olevan domainin painamalla tämän ”Manage” nappulaa

Menin ylävalikosta Advanced DNS osioon ja lähdin hallinnoimaan Recordeja. Poistin jo olemassaolevat recordit pois, näitä oli mm. parkkeeraus palvelu ja redirecti.

Painoin Add New Record nappia ja valitsin aukeavastaa vetovalikosta A Recordin. Lisäsin tämän tietueen Host kentään @ – arvon ja valueeseen lisäsin virtuaalipalvelimeni osoitteen. Toistin toimenpiteen mutta nyt laitoin host kenttään www arvon jotta sivustoni vastaisi myös osoitteeseen http://www.jaanisavolainen.com pelkän jaanisavolainen.com sijaan.

Tallensin lisäykseni ja odotin A recordin voimaantulemista. Olin jo aikaisemmin käynyt sivustolla jaanisavolainnen.com käyttökoneellani ja käyttökone näytti cachettuaa sivua vanhoista recordeista. Testasin toisella koneella sivustoa 5 minuuttia myöhemmin ja tämä latasi heti apachen oletussivun jonka olin laittanut pyörimään virtuaalipalvelimelle

Jätä kommentti

Design a site like this with WordPress.com
Aloitus