Linux-virtuaalipalvelimen ylläpito

Samankaltaiset tiedostot
Linux-virtuaalipalvelimen ylläpito

Kytkimet, reitittimet, palomuurit

Kytkimet, reitittimet, palomuurit

TIES478 Linuxvirtuaalipalvelimen. Luento 1 Tervetuloa!

Kurssin verkkoalueet

Virtuaalikoneen asennus ja päivitys

Varmuuskopiointi: image

Luento 3. Timo Savola. 7. huhtikuuta 2006

Kurssin verkkoalueet

Mark Summary Form. Tulospalvelu. Competitor No Competitor Name Member

nginx sudo add-apt-repository ppa:nginx/stable Jos add-apt-repository -komentoa ei löydy: apt-get install software-properties-common

Reititys. ip route add default via reititin missä reititin on välittävän koneen (gateway) osoite

Metropolia Ammattikorkeakoulu

A Linux -järjestelmät TI09TIVE. Joni Ruotsalainen

Linux ylläpitäjän opas. Tärkeimmät komennot, logit ja muuta hömppä *^_^* by Hannu Laitinen ETA14KT

Security server v6 installation requirements

KAIKKI LAITTEET KÄYNNISTETÄÄN UUDELLEEN ENNEN TARKISTUSTA

Yleinen ohjeistus Linux-tehtävään

Kieliteknologian ATK-ympäristö Toinen luento

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

KYMENLAAKSON AMMATTIKORKEAKOULU. Tietoverkkotekniikka. Wine API sekä virtualisointiohjelmistot. Linux. Lukukausi: Kevät Työ valmistui: 8.4.

Security server v6 installation requirements

Linux - käyttöoikeudet

Lumejärjestelmä Xen. Reino Miettinen

scp scp (Secure CoPy) kopioi tiedostoja etäkoneeseen: scp [optiot] tiedostot scp [optiot] kohde

Pikaohje IPv6-ominaisuuksiin FreeBSD-järjestelmässä Päivitetty Niko Suominen

file Opetettavissa omilla säännöillä tiedostossa /etc/magic -k tulosta kaikki useista mahdollisuuksista -L/-h seuraa/älä seuraa symbolisia linkkejä

Yleinen ohjeistus Linux tehtävään

Directory Information Tree

AIHEET 1. VIRTUALISOINTI 2. WINE 3. VIRTUALISOINTIOHJELMISTOJA. ! Yleistä! Historiaa! Tyypit ja tekniikat! Hyötyjä ja ongelmia

Mark Summary Form. Taitaja Skill Number 205 Skill Tietokoneet ja verkot. Competitor Name

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikka / Tietoverkkotekniikka. Antti Parkkinen. ICTLAB tuotantoverkon IPv6 toteutus

chroot chroot [options] hakemisto [komento]

TEHTÄVÄ 4: Microsoft Windows Deployment Services asennus ja hallinta

Unix-perusteet. Unix/Linux-käyttöjärjestelmä ja sen ominaisuudet

ICMP-sanomia. 3. IP-kerroksen muita protokollia ja mekanismeja ICMP (Internet Control Message Protocol)

inodes Esimerkki: selvitetään missä /usr:n alihakemistoissa inodeja kuluu eli tiedostoja on paljon:

Reititys. Jos johonkin koneeseen tai verkkoalueeseen ei pääse oletusreitin kautta, sille pitää määritellä oma gateway. Esim.

3. IP-kerroksen muita protokollia ja

Tulostimen asentaminen Software and Documentation -CD-levyn avulla

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012

Jouko Nielsen. Ubuntu Linux

Julkaiseminen verkossa

DNS- ja DHCPpalvelut. Linuxissa. Onni Kytönummi & Mikko Raussi

Arch Linux asennusopas

IHTE 1900 Seittiviestintä (syksy 2007) VERKKOTEKNIIKKAA. Mikä on protokolla, IP osoite, nimipalvelu jne ja mihin näitä tarvitaan?

KAIKKI LAITTEET KÄYNNISTETÄÄN UUDELLEEN ENNEN TARKISTUSTA!

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

Taitaja 2015 Windows finaalitehtävä

D-Link DSL-504T ADSL Reitittimen Asennusohje ver. 1.0

server "Ismo" $ uname -a Linux ismo #1 SMP Thu Sep 16 19:35:51 UTC 2010 i686 GNU/Linux $ cat /etc/issue Debian GNU/Linux 5.

Laitteessa tulee olla ohjelmisto tai uudempi, tarvittaessa päivitä laite

S Tietoliikennetekniikan perusteet. Pakettikytkentäiset verkot. Helsinki University of Technology Networking Laboratory

Unix-perusteet. Tulostaminen

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

FuturaPlan. Järjestelmävaatimukset

Selvitysraportti. MySQL serverin asennus Windows ympäristöön

Opinnäytetyön loppuseminaari

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Unix-perusteet. Tiedosto-oikeudet

Siirtyminen IPv6 yhteyskäytäntöön

Suoritustavat: Laboratoriotöitä 2.-3.periodi. Luennot 2h, Laboratorityöt 4h, itsenäinen työskentely 124 h. Yhteensä 130 h.


TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

TEHTÄVÄ 3: * Tehtävä 1, ** Tehtävä 2

TI09. Seminaarityö Opintojakso: A Linux järjestelmät Opettaja: Tomi Pahula Opintojakson toteutus: Syksy 2011.

Windows Server 2012 asentaminen ja käyttöönotto, Serverin pyörittämisen takia tarvitaan

WHOIS. Whois-järjestelmän tulevaisuus on epävarma, muuttunee tai ehkä korvataan kokonaan eri järjestelmällä.

IPv6 käyttöönoton mahdollistajat operaattorin näkemys

Liityntäpalvelimen asentaminen

Objective Marking. Taitaja 2014 Lahti. Skill Number 205 Skill Tietokoneet ja verkot Competition Day 1. Competitor Name

lomake 6 Taitaja 2005 Osio Osion kuvaus Pisteosuus Päivä 1 Päivä 2 Päivä 3 Päivä 4 Yhteensä Allekirjoitukset

NT4.0 palvelin- ja Windows 2000 työasemaasennus

Etäkäyttö onnistuu kun kamera on kytketty yleisimpiin adsl- tai 3G verkkoihin. Kts. Tarkemmin taulukosta jäljempänä.

1.demon kertaus. Luento 3

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

Tulostimen asentaminen Software and Documentation -CD-levyn avulla tietokoneeseen ja suorita asennusohjelma uudelleen.

Tikon Ostolaskujenkäsittely versio SP1

Työpöytävirtualisointi

[Jnix näyttökoe. o ei ole sallittua käyttää mitään verkkolevyjakoa tai mitään siihen rinnastettavaa järjestelmdä.

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikka / tietoverkkotekniikka. Jarno Akkanen, Antti Parkkinen. Nagios verkkovalvonta- palvelin

Luento 4. Timo Savola. 21. huhtikuuta 2006

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Teoriatehtävät v.1.1

xinetd service discard { = discard-stream

Tehtävät 1. Tehtävät 2. Tehtävät 3. Tehtävät 4. Ubuntun käynnistys LibreOffice Writer (gedit, nano,...) Firefox tehtava-1.odt (tehtava-1.

Päivitys käyttäen USB-tikkua

telnet telnet kone portti

Luento 2. Timo Savola. 31. maaliskuuta 2006

Asennusohjeet HIITed palvelun asentamiseen

Tietoverkkojen turvallisuus. Tuomas Aura T Johdatus tietoliikenteeseen kevät 2012

Vagrant, Homestead, Laravel

Käytin tehtävän tekemiseen Xubuntu käyttöjärjestelmää aikaisemmin tekemältäni LiveUSB-tikulta.

Internet Protocol version 6. IPv6

TELEWELL TW-EA200 MODEEMIN ASENTAMINEN SILLATTUUN SAUNALAHDEN ADSL-LIITTYMÄÄN KÄYTTÄEN USB-VÄYLÄÄ

Oman koneen ylläpito

OSI ja Protokollapino

Järjestelmän asetukset. Asetustiedostojen muokkaaminen. Pääkäyttäjä eli root. Järjestelmänhallinnan työkalut

TUTUSTUMINEN LINUX-KÄYTTÖJÄRJESTELMÄÄN

Transkriptio:

Linux-virtuaalipalvelimen ylläpito Kevät 2018 Tapani Tarvainen sekä Matias Kangas, Pyry Kotilainen ja Ilona Nurminen Tarkoitus antaa riittävät valmiudet oman palvelimen ylläpitoon palvelinkäytön harjoittelua ja sovellusten kokeilua varten sekä perustiedot virtuaalikoneiden asentamisesta, hallinnasta ja erityispiirteistä. Kotisivu: https://kurssit.it.jyu.fi/ties478/

Kurssin suoritus 1 Demot: enimmäkseen ohjattua työskentelyä, kaikki tekevät kaiken itse Jokainen saa oman virtuaalikoneen (luodaan ensimmäisissä demoissa), myöhemmin useampiakin, joille tehdään sitä sun tätä asiakkaiden ja esimiehen pyynnöstä Koneisiin tulee vikoja, myös demojen välissä odottamattomina aikoina, ne pitää huomata ja korjata

Kurssin suoritus 2 Demoista pidetään lokikirjaa, josta selviää, että demot on tehty itse ja josta voi itse tarkistaa miten Oma virtuaalikoneen asennuksen ja ylläpidon dokumentointi niin hyvin, että koneen tuhoutuessa sen pystyy asentamaan uusiksi lokin perusteella Tentti: mikroluokassa, jokainen saa oman (tenttiä varten tehdyn) virtuaalikoneen, jossa on jotain vikaa vikaa vikaa... Muistiinpanoja ja hakukoneitakin saa käyttää, vain avun kysyminen ja muu yhteistyö on kielletty

Demotehtävistä Demot tehtään tai ainakin aloitetaan ohjauksissa ja viimeistellään tarvittaessa omalla ajalla. Demot rakentuvat edellisten pohjalle, joten ne pitää tehdä järjestyksessä. Tehtävissä viitataan usein yliopiston käyttäjätunnukseesi merkkijonoilla TUNNUS tai $TUNNUS. Komennoissa nämä tulee aina korvata omalla tunnuksella! Tehtävänannoissa aina implisiittisenä lisänä ja hoida vastaantulevat odottamattomat ongelmat (ja joskus varsinainen tehtävä onkin vasta siinä).

Linux Periaatteessa Linux on vain käyttöjärjestelmän ydin (kernel), yleisemmin myös Linux -pohjainen käyttöjärjestelmäjakelu : Linux ydin, yleensä Gnu-varusohjelmisto, valikoima muuta ohjelmistoa, pakettivarasto asennusta ja päivitystä varten Enemmistö maailman www-palvelimista Linux-pohjaisia Edullinen (ei lisenssimaksuja) ja helposti kustomoitavissa (Open Source) Esim. Ubuntu, RHEL, CentOS, Debian, Fedora, (Open)SuSE, Gentoo, Arch, Slackware... (ks. distrowatch.org) Tällä kurssilla ensisijaisena Ubuntu

Palvelin Fyysinen tai virtuaalinen kone tai ohjelma, joka tarjoaa jotain palvelua/palveluita Etäkäyttö (mitään fyysistä konsolia ei yleensä ole) Useita (samanaikaisiakin) käyttäjiä (ihmisiä, toisia koneita tai ohjelmia...) Päällä yleensä 24/7 Tarjoaa palvelun tai palveluita, esim: www, ftp, levytila, sähköposti, tietokanta, laskenta, irc, jabber, suorakäyttö (shell), varmuuskopiointi, pelit, webcam, palomuuri, vpn, dns, dhcp, tftp, ntp...

Virtuaali- Ei omaa, dedikoitua fyysistä konetta, vaan ohjelma, joka esittää sellaista toisen koneen sisällä (mahdollisesti liikkuen koneesta toiseen) Etuja: Hinta, ylläpidon (raudan/palvelun) ulkoistaminen, skaalattavuus, käyttöönoton ja resurssien lisäämisen nopeus Haittoja: jaettujen resurssien vaikea ennakoitavuus, tietoturvaongelmat (Spectre!), datan fyysinen sijainti, lainsäädäntö (GDPR!)

Monenlaista virtualisointia Virtuaalikoneet (full hardware virtualization) Virtuaalikoneen sisältä kuin oikea rautakone Kontit (containers, OS-level virtualization) Alustakoneen käyttöjärjestelmä mutta omat kirjastot jne Ajoympäristöt (application virtualization) Eristetty sovellusympäristö, usein palveluna (PaaS, Faas) Palvelun virtualisointi (virtual hosting) Monta IP-osoitetta tai nimeä samalla koneella Virtuaaliverkot (VPN, VLAN), -levyt, -laitteet...

Virtuaalikone Ei dedikoitua fyysistä konetta: samassa raudassa useita virtuaalikoneita, virtuaalikone voi siirtyä fyysisestä koneesta toiseen Hypervisor luo fyysistä konetta simuloivan ympäristön, johon voidaan asentaa käyttöjärjestelmä kuten suoraan rautaan; virtuaalikoneen käyttöjärjestelmä voi olla eri kuin alustakoneen Native (hypervisor suoraan raudassa ) vs. Hosted (hypervisor alustakoneen käyttöjärjestelmän päällä) Esim. VMWare, VirtualBox, XenServer, Hyper-V, Qemu... Tällä kurssilla käytössä KVM (sort-of native)

Virtuaalikone

Kontti (container) Sama käyttöjärjestelmä ja ydin kuin alustakoneessa Tiedostojärjestelmä (pääosin) oma kirjastoja myöten, laitetiedostot (osin) yleensä jaettuja alustakoneen kanssa Ei hypervisoria, prosessit samalla tasolla kuin alustakoneen omat mutta eristettynä (vrt. chroot) Kevyt (nopea käynnistää ja tuhota) Esim. Docker, LXC, OpenVZ

Kontti, container

Virtual host Yksi (virtuaalinen tai fyysinen) kone, yksi käyttöjärjestelmä, yksi tiedostojärjestelmä Monta nimeä tai IP:tä Palvelinohjelma (esim. web server kuten Apache) tunnistaa millä osoitteella (IP:llä tai nimellä) sitä kutsutaan ja vastaa sen mukaan eri tavoin, tai eri IP:t voidaan ohjata eri palvelinohjelmille Monet protokollat eivät välitä nimeä jolloin sitä ei voi käyttää virtualisointiin, http kyllä

IP-pohjainen virtual host

Nimipohjainen virtual host

Sisäkkäistä virtualisointia Eritasoisia virtualisointeja voi olla käytössä yhtaikaa Esim. virtuaalikoneen sisällä kontti jonka sisällä virtual hosting Samantasoisia virtualisointeja ei yleensä voi olla sisäkkäin

Ylläpito 1 Käyttöjärjestelmän ja muiden ohjelmien ja laitteiden asennus, konfigurointi ja päivittäminen Käyttäjien ja oikeuksien hallinta Resurssien hallinta (levytila, muisti, cpu jne) Tietoturva ja -suoja Varmuuskopiointi Dokumentointi

Ylläpito 2 Monitorointi ja ongelmien ratkaiseminen https://xkcd.com/705

Sisältö 1 Komentorivityöskentelyn perusteet, ssh Shell-ohjelmointi Oikeuksien hallinta, ryhmät, root, su, sudo Prosessit (&, ps, kill, bg, fg, jobs, top, lsof) Ohjelmapakettien etsiminen, asentaminen, poistaminen jne (apt-get, dpkg-reconfigure...) Levytilan hallinta (fdisk, parted, mkfs, mount, umount, /etc/fstab, LVM...)

Sisältö 2 IP-osoitteet (IPv4), julkiset vs. privaattiosoitteet Kytkimet, reitittimet, palomuurit Reititys (routing, gateways, netmask) Portit NAT (network address translation) Nimipalvelu (DNS), host, dig, resolv.conf

Sisältö 3 Käyttöjärjestelmän asennus KVM-virtuaalikoneen luonti ja hallinta: virtinstall, virsh, virt-viewer, kvm, qemu-img WWW-palvelimen asennus ja konfigurointi ftp-palvelimen asennus ja konfigurointi Palomuurit, iptables (jatkuu...)

Komentorivityöskentelyn alkeet Bourne/POSIX -shellit, erityisesti bash Yleisiä komentoja: man ls cp mv ln rm df cat mkdir rmdir cd pwd echo grep sort Muuttujat: var=x; echo $var; export var Ulkoisten ohjelmien suoritus, $PATH stdin, stdout, stderr, uudelleensuuntaus (exec, <, >,, >>, >, <<) Erikoismerkit: & ; ( ) $ ` \ " ' *? [ # ~ = %! Alustustiedostot.bash_profile.bash_login.profile.bashrc.bash_logout $BASH_ENV

Etäkäyttö ssh [-X] [user@]kone Windowsista putty tms scp file[...] [user@]kone:[dir/file] ssh-keygen -t rsa... ~/.ssh/authorized_keys ~/.ssh/config, /etc/ssh/{ssh_config,sshd_config} rsync [-av] file[...] [user@]kone:[dir/file] VPN (ks. ohjeet IT-palveluiden sivuilta)

Shell-ohjelmointi (scripting)./file, sh file, sh -c 'komentoja',. file (source) #! /bin/bash -ex jne Komennon paluuarvo, $? if komento; then... ; else... ; fi while komento; do...; done www.mit.jyu.fi/opiskelu/kurssit/unixshell01/

Omistajat ja oikeudet Unixin perusoikeusmalli: omistaja (user), ryhmä (group) ja muut (others), oikeuksia read(r), write(w), execute/search(x), suid(s), sticky(t) chmod ugo+rwx file; chmod 1777 dir ACL:t (Access Control Lists) /etc/passwd /etc/group /etc/shadow chown chgrp groupmod usermod newgrp Superuser (root), su, sudo (/etc/sudoers, visudo)

Prosessit Foreground vs background, parents and children, zombies ps, top, jobs & bg fg kill, killall lsof, fuser

Ohjelmapakettien hallinta dpkg & apt: Debian-pohjaisissa jakeluissa apt-cache search... apt-get install remove purge update upgrade distupgrade clean autoremove dpkg -i -l --configure --remove --purge dpkg-reconfigure, dpkg-query /etc/apt/sources.list, /etc/apt/apt-conf.d... /etc/update-manager

Levytila Partitiointi (ositus): fdisk, parted Tiedostojärjestelmätyypit (ext4, xfs, tmpfs...) Tiedostojärjestelmän luonti: mkfs Tiedostojärjestelmän tarkistus: fsck mount, umount, /etc/fstab /dev/... LVM, md, cryptsetup

Kytkimet, reitittimet, palomuurit Kytkin (ja hubi): kaikki liikenne välitetään kaikille samaan kytkimeen kytketyille koneille suoraan, ei tarvitse omaa IP-osoitetta Reititin: ohjaa liikennettä verkkoalueiden välillä, useita omia IP-osoitteita Palomuuri: suodattaa (valikoi) ja mahdollisesti muokkaa välitettäviä paketteja (vrt. myös ns. softapalomuuri) Yleensä palomuuri on myös reititin (poikkeuksena siltapalomuuri (bridged tai bridging firewall))

Verkko-osoitteet ja -alueet Ipv4-osoite: 32 bittiä, xxx.xxx.xxx.xxx, xxx = 0...255 Privaattiosoitteet 192.168.*.*, 172.{16...23}.*.*, 10.*.*.* eivät näy maailmalle Samassa aliverkossa oleviin pääsee suoraan, muihin yhdyskäytävän (gateway) kautta Netmask kertoo aliverkon koon (bittimaski); esim. 8-bittinen aliverkko 192.168.1.0/24 -> 255.255.255.0 (binäärinä 11111111.11111111.11111111.00000000), 10-bittinen 172.16.4.0/22 -> 255.255.252.0 (11111111.11111111.11111100.00000000) IPv6-osoitteet 128-bittisiä, erottimena kaksoispiste, esim. 2001:4b98:dc0:45:216:3eff:fe5e:2e10

IP-osoite Koneella X on IP-osoite Y tarkoittaa... jokin Ylempi Taho sanoo niin (DNS, reititys, IT-palvelut...) kone itse uskoo omistavansa IP:n nähdessään paketin, jonka kohdeosoite on ko. IP, kone ottaa sen käsiteltäväkseen, ja lähettäessään paketteja käyttää ko. IP:tä lähettäjäosoitteena samalla koneella voi olla monta IP:tä (myös samalla interfacella), myös useita sekä IPv4- että IPv6-osoitteita monella koneella voi olla sama IP, myös samassa aliverkossa (tarkoituksella tai vahingossa)

Reititys Reitti (route) määrittää mitä kautta oman aliverkon ulkopuolelle päästään Esim. IP 192.168.1.3, netmask 255.255.255.0 Aliverkko 192.168.1.0/24, osoitteisiin 192.168.1.* pääsee suoraan Oletusreitti: ip route add default via 192.168.1.1 Reititys aliverkkoon 172.16.0.0/16 eri yhdyskäytävällä: ip route add 172.16.0.0/16 via 192.168.1.5 Reitin poisto: route delete...

/etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 172.20.209.6 netmask 255.255.0.0 network 172.20.0.0 broadcast 172.20.255.255 gateway 172.20.0.1

DNS: Domain Name Service Koneen nimi <-> osoite A-record = koneen oma IPv4 -osoite Muita: MX = Mail Exchanger, AAAA = IPv6-osoite, CNAME = alias, NS = name server, PTR = pointer (reverse), TXT = vapaa teksti, SOA = start of authority host [-t type] nimi [tai osoite] dig [paljon optioita] /etc/resolv.conf: nimipalvelimet, oletusdomain Vrt. /etc/hosts

Portit Portti = 16-bittinen numero, jota jokin palvelu (ohjelma) kuuntelee 0-1023 System (privileged, systeemiprosesseille) ja 1024-49151 User varattuja, 49152-65535 Dynamic/Private (sisäisiin/tilapäisiin tarpeisiin) Varattujen porttien luettelo: http://iana.org/assignments/port-numbers Esim. 22 = ssh, 80 = http, 8080 = http_alt, 443 = https, 5900 = vnc /etc/services

Network Address Translation NAT: palomuuri muuntaa osoitteen toiseksi (yleensä julkisen yksityiseksi) Full NAT (1-to-1 NAT): yhtä (julkista) osoitetta vastaa yksi (yksityinen) osoite One-to-many NAT (pnat): monta (yksityistä) osoitetta -> yksi (julkinen) osoite; vaihtaa porttinumeroita julkisella puolella, ongelmallinen palvelinten kanssa. Yleisin NAT, ensisijainen tarkoitus säästää julkisia IPv4-osoitteita Vain IPv4:n kanssa, IPv6:n kanssa tarpeeton