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



Samankaltaiset tiedostot
nginx Ubuntu tarjoaa useita asennuspaketteja:

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

Varmuuskopiointi: image

Kytkimet, reitittimet, palomuurit

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

Linux-virtuaalipalvelimen ylläpito

Kurssin verkkoalueet

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

Luento 3. Timo Savola. 7. huhtikuuta 2006

Kurssin verkkoalueet

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

Disaster recovery: /usr lost

Metropolia Ammattikorkeakoulu

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

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.

Luento 4. Timo Savola. 21. huhtikuuta 2006

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

Kytkimet, reitittimet, palomuurit

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

Unix-perusteet. Tiedosto-oikeudet

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

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

Esimerkki: monen partition muutos

Julkaiseminen verkossa


Yleinen ohjeistus Windows tehtävään.

Virtuaalikoneen asennus ja päivitys

Yleinen ohjeistus Linux tehtävään

Liityntäpalvelimen asentaminen

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Automounter (autofs)

2 Asennuksen poistaminen Uninstall.sh Esiasetukset Sivuston poisto Mush Mush.sh Komennot...

Linux - käyttöoikeudet

1.demon kertaus. Luento 3

Bitnami WordPress - Asenna WordPress koneellesi. Jari Sarja

Mark Summary Form. Tulospalvelu. Competitor No Competitor Name Member

JulkICT Arkkitehtuuripankki - QPR EnterpriseArchitect asennusohje

Päivitys käyttäen USB-tikkua

WordPress Multisite Asennus ja ylläpito

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

Kieliteknologian ATK-ympäristö Viides luento

SSL/TLS, HTTPS, Salaus

Unix-perusteet. Varmistaminen, tiedon pakkaaminen ja tiivistäminen

1 Visma Econet Pro Arkistointi

Kieliteknologian ATK-ympäristö Viides luento

rikunsivut.dy.fi RaspberryPi asennus ohje Perus asennus

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

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

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

Korpusten käsittely clt131, P Luento 4

WordPress:n asennus - Asenna WordPress (alkaen tilanteesta, jossa LAMP on asennettu)

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

SSH Secure Shell & SSH File Transfer

Asentaminen Bionic Beaver

Luento 5. Timo Savola. 28. huhtikuuta 2006

Visma Nova. Visma Nova ASP käyttö ja ohjeet

UCOT-Sovellusprojekti. Asennusohje

SQL Buddy JAMK Labranet Wiki

Paavo Räisänen. WampServer palvelimen asennus ja käyttö Eclipsen kanssa, sekä ensimmäinen FTP yhteys.

erasmartcard-kortinlukijaohjelmiston asennusohje (mpollux jää toiseksi kortinlukijaohjelmistoksi)

Raspin Geany-IDE:n etäkäyttö

Linux-virtuaalipalvelimen ylläpito

1. NetBeans-ohjelman asennus ja käyttöönotto pva

CVS. Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen

Unix. Markus Norrena

Liityntäpalvelimen asentaminen kehitysympäristöön liityttäessä (Ubuntu) esuomi.fi

Tikon Ostolaskujenkäsittely versio SP1

Mathcad 14.0 Single User -asennus

WordPress Multisiten varmuuskopiointi

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY

FLEXnet lisenssipalvelun määritys/päivitys serverille (LMTOOLS) ja verkkolisenssimäärittelyt työasemalle

SELVITYSRAPORTTI LABRA-VERKON MYSQL:n JA PHP:n KÄYTTÖÖNOTOSTA. Jarkko Kähkönen

Liityntäpalvelimen asentaminen

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

NETTIKIOSKIN ASENNUSOHJE. Ubuntu LTS

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

Yleinen ohjeistus Linux-tehtävään

1 Tivax siirto uuteen koneeseen

Asteri Laskutus (Dos)

Esimerkki: monen partition muutos

Harjoitus 3 Antti Hartikainen

Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun.

ASENNUSOHJEET INTERNET-ASENNUS. Navita Yritysmalli. YHTEYSTIEDOT Visma Solutions Oy Mannerheiminkatu LAPPEENRANTA Puh.

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

Visma Business AddOn Tositteiden tuonti. Käsikirja

Asennuksessa kannattaa käyttää asennusohjelman tarjoamia oletusarvoja.

Asennusohjeet HIITed palvelun asentamiseen

Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito

Taitaja 2015 Windows finaalitehtävä

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.

Security server v6 installation requirements

Julkaiseminen verkossa, esitysgrafiikkaa (laitteistosta, tietotekniikka ja tulevaisuus) H9T1: Tiedostojen vienti internetiin

fsck Joillekin tiedostojärjestelmille omia testaus- ja korjauskomentojaan, esim. xfs_check, xfs_repair

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Komentotulkki. Kysymyksiä

Visma Liikkuvan työn ratkaisut Päivitysohje. Pääkäyttäjän opas

VERKKOSOVELLUSTEN OHJELMOINTI, JOHDATUS PHP:HEN

Lync Online. Järjestelmänvalvojan perusopas

Transkriptio:

nginx Engine X, toiseksi yleisin (apachen jälkeen) www-palvelin Linux-ympäristössä, yleistyy nopeasti Ei yhtä full-featured kuin apache, mutta monissa tilanteissa kevyempi (etenkin muistin tarve pienempi, joskus vertailukelpoinen jopa lighttpd:n kanssa) Yleinen (tehokas) edustapalvelimena (proxy) Ubuntussa tai Debianissa asennus onnistuu tavanomaiseen tapaan (apt-get install nginx), mutta valmiiksi paketoitu versio on usein vanha. Jos halutaan uudempi tehdään ensin sudo add-apt-repository ppa:nginx/stable Jos add-apt-repository -komentoa ei löydy: apt-get install software-properties-common Repositorymääritys menee hakemistoon /etc/apt/sources.list.d Jos jo asennettu vanhempi versio, voidaan päivittää tekemällä (edellisen jälkeen) apt-get update; apt-get upgrade nginx # tai apt-get dist-upgrade, päivittää kaiken muunkin

nginx konfiguraatiotiedostot Konfiguraatiohakemisto /etc/nginx Pääkonfiguraatiotiedosto /etc/nginx/nginx.conf Lisäkonfiguraatiotiedostoja /etc/nginx/conf.d/*.conf (automaattisia) ja /etc/nginx/snippets/*.conf (otettava käyttöön erikseen) Omia konfiguraatiotiedostoja voi sisällyttää muualtakin include-direktiivillä Määritellyt virtuaalihostit (www-) hakemistossa /etc/nginx/sites-available, käytössä olevat /etc/nginx/sites-enabled (linkkejä edelliseen) Oletus /etc/nginx/sites-available/default, sijainti: grep root /etc/nginx/sites-available/default /var/www/html, /usr/share/nginx/html tms grep index /etc/nginx/sites-available/default Jos useita vaihtoehtoja, ensimmäistä löytynyttä käytetään Yleensä ainakin index.html toimii Jos default-konfiguraatiota ei käytetä: rm /etc/nginx/sites-enabled/default

nginx: virtual host, esimerkki cat >/etc/nginx/sites-available/tt2.student.it.jyu.fi<<\eof server { listen 80; # Ipv4; voisi olla myös esim. 8080 tai 443 (https) listen [::]:80; # IPv6 server_name tt2.student.it.jyu.fi; root /var/www/tt2.student.it.jyu.fi/html; index index.html; location / { try_files $uri $uri/ =404; EOF ln -s../sites-available/tt2.student.it.jyu.fi /etc/nginx/sites-enabled mkdir -p /var/www/tt2.student.it.jyu.fi/html nano /var/www/tt2.student.it.jyu.fi/html/index.html # jotain sopivaa service nginx reload tail /var/log/nginx/error.log # jos ei toimi...

nginx konfiguraatiodirektiivit Nginx'in konfiguraatiotiedostossa olevat määritykset (direktiivit) voivat olla globaaleja tai jossain aaltosuluilla { rajatussa kontekstissa: http{ server{ location{ events{ Direktiivien loppuun tulee yleensä puolipiste (ei :n jälkeen) Yleisiä globaaleja asetuksia: user (käyttäjätunnus jolla nginx pyörii), worker_processes (montako palvelinprosessia käynnistetään), pid (minne nginx-pääprosessin PID talletetaan); näitä ei yleensä tarvitse muuttaa Konfiguraatiotiedostoon voi lukea muita include-direktiivillä, jokerit toimivat Kaikki http(s)-palvelimiin liittyvät direktiivit (erityisesti myös server{) ovat http{:n sisällä; kaikki.../sites-enabled/... tiedostot tulevat automaattisesti sen sisään (toteutettu include-direktiivillä html{:n sisällä) Virtual host -määritykset tehdään server{ -direktiivillä, niiden sisällön ohjaukset sen sisällä location{'illa events{ ohjaa yhteyksien muodostumista (esim. worker_connections: kuinka monta yhtaikaista yhteyttä per palvelinprosessi sallitaan)

nginx: server{ listen [osoite][:portti] [optiot]; jos :portti puuttuu, oletetaan 80 jos osoite puuttuu, oletus = * = kaikki IPv4-osoitteet [::] = kaikki IPv6 -osoitteet tai myös IPv4 optiolla ipv6only=off server_name nimi [nimi...]; nimi tai nimet joihin vastataan; ensimmäinen ensisijainen jokerit ja regexp'it sallittuja: *.example.com ~^www\..*\.example\.net root polku; sisällön juurihakemisto, johon suhteessa URL-polut tulkitaan index file [file...]; tiedostonimi jota käytetään URLin viitatessa hakemistoon jos useita, käytetään ensimmäistä joka löytyy error_log file stderr syslog:server=... minne virheilmoitukset kirjoitetaan (paljon optioita) location...

nginx: location{ location [= ~ ~* ^~] URI {... location @nimi {... URIsta riippuvia asetuksia (server{in sisällä); voi olla useita sisäkkäin URI voi olla polun alku (esim. /); jos edessä ^~, ohittaa regexpit käsitellään pituusjärjestyksessä, pisin voittaa =koko polku ( = /kala/hauki.html ) voittaa kaikki muut; voi olla esim. yhtaikaa sekä / että = / ~regexp ( ~ \.php$ ), ~* case-insensitive regexp'it voittavat polunalkumääritykset ilman ^~ -prefiksiä regexp'it tulkitaan järjestyksessä, ensimmäinen voittaa @nimi määrittää nimetyn sijainnin käytettäväksi uudelleenohjausviittauksissa location{in sisällä voi olla mm. root, index, error_log, proxy_pass...

nginx: try_files try_files file... URI; Vaihtoehtoja miten tiedosto tulkitaan, ensimmäinen löytynyt voittaa $uri on alkuperäinen polku sellaisenaan =code palauttaa virhekoodin Esim. location / { try_files /huoltokatko.html $uri $uri/ $uri/index.html $uri.html =404; location /pictures/ { try_files $uri /pictures/oletus.jpg; location / { try_files $uri @varakone; location @varakone { proxy_pass http://192.168.6.7:8080;

nginx: php sudo apt-get install php5-common php5-cli php5-fpm Haluttuun konfiguraatiotiedostoon: location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; try_files $fastcgi_script_name =404; set $path_info $fastcgi_path_info; fastcgi_param PATH_INFO $path_info; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi.conf; sudo service nginx restart

nginx: rewrite rewrite regexp korvaus [lippu] Muuntaa URIn toiseksi regexp-säännöllä Jos useita, suoritetaan järjestyksessä Liput: break: lopeta rewrite-sääntöjen suoritus tähän last: lopeta tähän ja ala käsitellä muutettua URIa alusta voi johtaa silmukkaan... redirect: palauta temporary redirect -koodi permanent: palauta permanent redirect -koodi Esim. location /download/ { rewrite ^(/download/.*)/media/(.*)\..*$ $1/mp3/$2.mp3 break; rewrite ^(/download/.*)/audio/(.*)\..*$ $1/mp3/$2.ra break; return 403;

nginx: proxy_pass proxy_pass URL; Ohjaa (yleensä location{in määräämän) URLin toiseen Esim. location / { proxy_pass http://192.168.122.4:8080/; location /images/ { proxy_pass http://192.168.122.5/pics/; Yhdistettävissä esim. rewrite-direktiivin kanssa: location /user/ { rewrite /user/([^/]+) /users?name=$1 break; proxy_pass http://192.168.7.8/;

nginx: reverse proxy Esimerkki: halutaan erottaa virtual hosteja sisäisesti eri virtuaalikoneisiin. Ohjataan kaikki ulkoa tulevat pyynnöt edustapalvelimena toimivalle nginx'ille, jossa on kullekin virtual hostille tämäntapainen määritys: server { listen :80; server_name: 1.example.org; location / { proxy_pass http://kone1:8080/; Virtual hosteja voidaan jakaa virtuaalikoneisiin kuten halutaan, jossain voi pyöriä nginx, jossain apache, jossain lighttpd... jopa useita samassa koneessa eri porteissa, edustakoneen huolehtiessa ohjauksesta oikeaan paikkaan

vmbuilder Vaihtoehtoinen tapa asentaa virtuaalikoneita (Ubuntu/Debian-spesifi): sudo vmbuilder kvm ubuntu --dest $HOME/kone4 --suite trusty --arch i386 --libvirt qemu:///system --mem 256 --rootsize 2000 --cpus 1 --ip 192.168.1.50 --mask 255.255.255.0 --gw 192.168.1.1 - dns 192.168.1.2 --hostname kone4 --domain student.it.jyu.fi --bridge br0 --user tunnus0 --pass= tilapainen --addpkg linux-image-generic --addpkg ssh --addpkg acpid --ssh-key.ssh/id_rsa.pub --proxy http://192.168.1.20:3142 --dest hakemisto, jonka alle kone asennetaan (ei saa olla ennestään olemassa) --addpkg linux-image-generic on tarpeen vain joissakin Ubuntun versioissa olevan bugin takia, muut --addpkg't vapaavalintaisia optioita enemmänkin... Ei-interaktiivinen, kaikki tarvittavat tiedot annetaan komentorivillä Edellyttää root-oikeuksia alustakoneessa Ei (toistaiseksi) tue LVM:ää suoraan (helppo lisätä jättämällä / LVM:n ulkopuolelle)

umask Shellin (bash) sisäinen komento: asettaa oletusarvon luotavien tiedostojen oikeuksille Vanha syntaksi oktaalinen bittimaski poistettaville oikeuksille, esim. umask 022 # ryhmältä ja maailmalta w-oikeus pois umask 067 # ryhmältä rw pois, maailmalta kaikki pois Uusi syntaksi sallitut oikeudet kuten chmod'issa, esim. ylläolevat toisin: umask u=rwx,g=rx,o=rx umask u=rwx,g=x,o= Ilman argumentteja tulostaa voimassaolevan asetuksen, oletuksena oktaalimuodossa, optiolla -S symbolisena

Recovery: LVM / broken Jos recovery boot onnistuu: Ensin fsck, joko suoraan valikosta tai root-shellistä root shellissä: Mountataan / read-write, muuten sitä ei voi muokata: mount -o remount, rw / Mountataan /usr ja ehkä /var, muuten työkaluja on vähän: mount /usr; mount /var Jos mount /usr ei onnistu, esim. /etc/fstab on rikki: Yritetään mountata käsin, esim. mount /dev/kone/usr /usr Korjataan mitä voidaan ilman /usr:ää; jos nano/vi eivät toimi, sed usein toimii Jos jokin levyosio on täynnä: Yritetään tyhjentää, recover- boot -valikosta tai käsin Jos VG:ssä tilaa, suurennetaan LV:tä: lvextend... Huom. optio -r ei tässä yleensä toimi vaan pitää tehdä erikseen resize2fs tai xfs_growfs tms

Recovery: LVM / broken 2 Tilanne: kone1 LVM root (/) niin rikki, ettei Recovery Boot onnistu. Liitetään levy toiseen virtuaalikoneeseen kone2 ja korjataan siellä. Alustakoneessa: virsh destroy kone1 virsh attach-disk kone2 $HOME/kone1.img vdb # --persistent ei tarpeen Kone2:ssa sudo apt-get install lvm2 # ellei kone2:ssa LVM:ää ennestään sudo vgscan ls /dev/mapper # näkyykö kone1-root jne? sudo vgchange -a y kone1 # jos kone1- ei näkynyt yllä sudo mkdir /mnt/root sudo mount /dev/kone1/root /mnt/root sudo nano /mnt/root/etc/fstab # tms, korjataan mitä onkin rikki sudo umount /mnt/root sudo vgchange -a n kone1 ls /dev/mapper # kone1... ei pitäisi enää näkyä Alustakoneessa: virsh detach-disk kone2 vdb virsh start kone1