Ero sivun ”Palvelin” versioiden välillä

Kohteesta Linux.fi
Siirry navigaatioon Siirry hakuun
 
(30 välissä olevaa versiota 13 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
'''Tietoliikenteessä''' '''palvelimella''' voidaan tarkoittaa sekä tietokoneessa pyörivää [[palvelinohjelmat|palvelinohjelmistoa]] että itse tietokonetta joka ajaa yhtä tai useampaa palvelinohjelmaa. Palvelinohjelmistojen tarkoituksena on tarjota erilaisia palveluja muille ohjelmille joko [[verkko|verkon]] yli tai samassa tietokoneessa.
+
'''Palvelin''' on tietokone, joka tarjoaa siinä ajettavien palvelinohjelmistojen välityksellä erilaisia palveluja muille ohjelmille. Asiakkaana toimivat ohjelmat voivat sijaita joko [[loopback|samalla koneella]] tai eri koneilla.  
  
'''Tietotekniikassa''' puhutaan myös abstraktista '''[[asiakas]]-palvelin'''-mallista, missä kommunikaatio perustuu asiakkaan ottamaan yhteydenottoon eikä esimerkiksi ennaltamääritelyyn kaksisuuntaiseen yhteyteen.
+
Käsitteellä palvelin voidaan tarkoittaa myös asiakas-palvelin-mallia tapana järjestää kahden ohjelman välinen kommunikointi tai ohjelmaa, johon asiakkaat ottavat yhteyttä.
  
== Yleisimpiä palvelimia ==
+
Tämä artikkeli kokoaa yhteen ohjeita palvelintietokoneen pystyttämiseen Linuxia käyttäen. Se on kirjoitettu niin, että aloittelijakin pysyy mukana matkassa.
  
*Pelipalvelin (pitää yllä jotakin, yleensä [[internet|internetissä]] toimivaa [[Pelit|peliä]] jonne pelaajat voivat liittyä)
+
== Mikä on palvelin? ==
*Sähköpostipalvelin (lähettää ja vastaanottaa [[sähköposti|sähköpostia]])
+
 
*Web-palvelin (lähettää webselaimelle sen pyytämät sivut ja muut tiedostot)
+
Palvelinkone poikkeaa yleensä normaaleista pöytäkoneista laitteistoltaan. Isommissa palvelimissa tyypillisiä laitteistoratkaisuja ovat:
 +
 
 +
* [[SMP|Monta rinnakkaista prosessoria]]
 +
* Monta rinnakkaista levyä käsittävä levyjärjestelmä, eli [[RAID]]
 +
* [[SCSI]] tai [[SAS]]
 +
* Kahdennetut virtalähteet
 +
* [[Verkkoliitynnät monimutkaisemmin|Useampi verkkoyhteys]]
 +
 
 +
Suurten palvelinkoneiden rinnalle on tullut uusia vaihtoehtoja. Pitkälti juuri Linuxin ansiosta palvelimia voi nykyään pystyttää kuka tahansa, ja halvat palvelimet ovat yleensä kokoonpanoltaan verrattavissa pöytäkoneisiin, joidenkin palvelimien kohdalla jopa huomattavasti vaatimattomampia. Eräs kotipalvelinkäytössä suosittu minitietokone on [[Raspberry Pi]].
 +
 
 +
Toinen voimakkaasti yleistynyt suunta on virtuaalipalvelimien käyttö. Palvelimet eivät enää ole fyysisiä tietokoneita, vaan virtuaalisia tietokoneita, jotka voivat helposti käyttää sen verran rautakapasiteettia kuin tarvitaan. Linux on ollut eturivin teknologia, kun virtualisointi on kehittynyt.
 +
 
 +
Palvelimien tärkeisiin ominaisuuksiin kuuluu etähallinta esimerkiksi [[SSH]]:n yli. Monet valmistajat tarjoavatkin laitteisiinsa erillisiä hallintakortteja, joiden avulla palvelin voidaan sammuttaa ja käynnistää uudelleen verkon yli, vaikka se olisi kaatunut. Parhailla hallintakorteilla voi halutessaan alustaa koneen kovalevyt ja asentaa käyttöjärjestelmän kokonaan uudelleen etänä verkon yli.
 +
 
 +
{{Perustietoa}}
 +
 
 +
== Palvelimen hankkiminen ja pystyttäminen ==
 +
Linux-pohjaisen palvelimen pystyttäminen on helppoa ja halpaa. Siinä oppii paljon uutta tietokoneista ja verkoista. Apua tarjoavat tämä wiki ja muut ohjesivut verkossa, ja lisäksi apua voi kysyä keskustelupalstoilta tai vaikka Redditistä.
 +
[[Tiedosto:Linux-server-shell.png|kehys|tyhjä|Linux-pohjaisen etäpalvelimen hallinta tapahtuu komentorivin kautta.]]
 +
 
 +
Ensiksi pitää hankkia palvelinkone tai ostaa sopivalta palveluntarjoajalta virtuaalipalvelin. Palvelimeen pitää asentaa käyttöjärjestelmä. Tyypillisimmät palvelimissa käytettävät Linux-käyttöjärjestelmät ovat Debian- tai Red Hat -pohjaisia. Oheisessa listassa pari suosituinta:
 +
===Debian-pohjaisia:===
 +
* [[Debian]]
 +
* [[Ubuntu]]
 +
===Red Hat -pohjaisia:===
 +
* [[RHEL]]
 +
* [[CentOS]]
 +
 
 +
Näiden järjestelmien asentaminen käsitellään omissa ohjeissaan. Joissain palvelimissa järjestelmä on jo valmiiksi asennettuna. Silloin kannattaa [[Jakelu#Liite:_Mik.C3.A4_on_jakelupakettini_versio.3F|selvittää mitä järjestelmää käytät]]. Se onnistuu yleensä cat-komennolla:
 +
cat /etc/*release
 +
 
 +
* [[Jakelut]] - lisätietoa eri Linux-versioista
 +
 
 +
Linux-pohjainen palvelin on käytännössä verkkoon kytketty tietokone, johon on asennettu Linux. Linuxin päällä pyörii erilaisia ''palveluita'', jotka kuuntelevat verkosta koneelle tulevia yhteydenottoja ja vastaavat niihin. Palvelu on käytännössä vain ohjelma, jota tietokone ajaa. Erona normaaliin työpöytäohjelmaan on, että palvelua suoritetaan taustalla, eikä sille ole omaa ohjelmaikkunaa.
 +
 
 +
*[[Palvelimen pystyttäminen]] - lisätietoa Linux-palvelimen pystyttämisestä
 +
 
 +
== Alkuun pääseminen ==
 +
Palvelinta hallitaan komentorivin kautta. Seuraavista artikkeleista on hyötyä komentorivin opettelussa:
 +
* [[Komentorivin perusteet]] - pitkä ja perusteellinen ohjeartikkeli komentorivin käytöstä
 +
* [[Komentorivikomennot]] - käyttötarkoituksen mukaan luokiteltuja komentoja
 +
* [[:Luokka:Komentorivin perustyökalut|Komentorivin perustyökalut]] - aakkostettu lista yleisistä komentorivikomennoista
 +
 
 +
Palvelimelle on myös luotava käyttäjiä ja ryhmiä. Siihen löytyy nopea ohjeartikkeli:
 +
* [[Käyttäjien hallinta]]
 +
 
 +
Ohjelmia asennetaan palvelimelle yleensä jokaisen Linux-jakelun omalla paketinhallintajärjestelmällä. Debian-pohjaiset käyttävät [[apt|apt-paketinhallintaa]] ja Red Hat -pohjaiset [[yum|yum-järjestelmää]]. Suurienkin ohjelmistopakettien asentaminen hoituu näppärästi yhdellä tehokkaalla komennolla. Kattavampaa tietoa aiheesta löytyy artikkeleista [[Ohjelmien asentaminen]] ja [[Paketinhallintajärjestelmä]]
 +
 
 +
Palvelimessa ajetaan tyypillisesti yhtä tai useampaa taustapalvelua. Näiden palveluiden käynnistämisen ja sammuttamisen hoitaa Init-järjestelmä. Yleisin init-järjestelmä on nykyään systemd.
 +
* [[Init]]
 +
* [[systemd]]
 +
 
 +
Palvelimen konfiguroiminen taas tehdään asetustiedostoja muokkaamalla. Lista tyypillisistä asetustiedostoista löytyy artikkelista [[Asetustiedostot]].
 +
 
 +
== Palvelimen hallinta ==
 +
Palvelinta hallitaan yleensä [[systemd|systemd-järjestelmän]] avulla. Sillä käynnistetään ja pysäytetään palveluita, liitetään levyosioita ja tehdään jonkin verran muitakin toimenpiteitä.
 +
 
 +
== Etäkirjautumisen salliminen ==
 +
 
 +
Kuten edellä kirjoitettiin, palvelimeen otetaan yleensä etäyhteys SSH:ta käyttäen. Kun olet saanut asennettua peruskäyttöjärjestelmän, todennäköinen seuraava askel on asentaa ja konfiguroida SSH.
 +
 
 +
Tarvitset palvelimelle käynnissä olevan [[sshd|sshd-palvelun]]. Omalle tietokoneellesi Sinun on asennettava [[SSH|SSH-asiakasohjelma]].
 +
 
 +
Windows-käyttäjät käyttävät monesti [[PuTTY]]-ohjelmaa palvelimelle yhdistääkseen. Mac- ja Linux-järjestelmissä ssh-ohjelma on asennettu valmiiksi, ja se avataan järjestelmän oman komentorivin kautta.
 +
 
 +
== Palvelintyyppejä ==
 +
Asentamasi Linux-jakelu ei vielä tee varsinaisesti mitään. Siihen on asennettava ja konfiguroitava palvelinohjelmia.
 +
 
 +
=== Yleisimmät palvelinohjelmistot ===
 +
*Web-palvelin, katso [[nginx]], [[Apache]], [[thttpd]], [[lighttpd]] (lähettää www-selaimelle sen pyytämät sivut ja muut tiedostot), [[Tornado]]
 +
*[[Sähköpostipalvelin]], katso [[Exim]], [[Postfix]], [[Sendmail]], [[wikipedia:qmail|Qmail]], [[Dovecot]], [[wikipedia:Courier Mail Server|Courier]] (lähettää ja/tai vastaanottaa [[sähköposti|sähköpostia]])
 +
*Tiedostopalvelin, katso [[NFS]], [[Samba]], [[FTP]], [[SFTP]] (palvelin, jonne voi tallentaa ja josta voi hakea tiedostoja)
 +
*HTTP-välityspalvelin (proxy), katso [[Squid]]
 +
 
 +
=== Erikoisempia palvelinohjelmistoja ===
 +
*[[DHCP]]-palvelin
 +
*[[wikipedia:fi:DNS|Nimipalvelin]], katso [[BIND]]
 +
*[[wikipedia:fi:Keskusteluryhmät|Nyyssipalvelin]], katso [[cnews]], [[inn]], [[leafnode]], [[nntpd]]
 +
*Pelipalvelin (pitää yllä jotakin, yleensä Internetissä toimivaa peliä jonne pelaajat voivat liittyä)
 +
*Shellipalvelin (tarjoaa [[komentorivi]]pohjaista etäkirjautumista, tyypillisesti [[irssi]]n ja [[screen]]in kera), katso [[SSH]], [[RSH]], [[Telnet]]
 +
*Sovelluspalvelin, tarjoaa mahdollisuuksia ajaa sovelluksia, yleensä [[X-pääte]]- tai työasemaympäristössä
 +
*Thin client -palvelin, katso [[LTSP]] (tehtävät voi haluttaessa jakaa useamman palvelimen kesken)
 +
*[[wikipedia:fi:Tietokanta|Tietokantapalvelin]], katso [[MySQL]], [[PostgreSQL]], [[SQLite]], [[Oracle]], [[Firebird]]
 +
*[[VPN]]-palvelin, katso [[wikipedia:fi:L2TP|L2TP]], [[wikipedia:fi:PPTP|PPTP]] (sisältyy [[ydin|ytimeen]]) ja [[wikipedia:OpenVPN|OpenVPN]]
 +
*[[X]]-etäkirjautumispalvelin, katso [[XDMCP]], [[SSH]]
 +
*Reititinohjelmia [[Vnstat]]
 +
 
 +
 
 +
==Katso myös==
 +
*[[LASP]]
 +
*[[LAMP]]
 +
 
 +
{{Malline:Palvelin}}
 +
[[Luokka:Palvelimet]]
 +
[[Luokka:Verkko]]

Nykyinen versio 14. syyskuuta 2020 kello 17.22

Palvelin on tietokone, joka tarjoaa siinä ajettavien palvelinohjelmistojen välityksellä erilaisia palveluja muille ohjelmille. Asiakkaana toimivat ohjelmat voivat sijaita joko samalla koneella tai eri koneilla.

Käsitteellä palvelin voidaan tarkoittaa myös asiakas-palvelin-mallia tapana järjestää kahden ohjelman välinen kommunikointi tai ohjelmaa, johon asiakkaat ottavat yhteyttä.

Tämä artikkeli kokoaa yhteen ohjeita palvelintietokoneen pystyttämiseen Linuxia käyttäen. Se on kirjoitettu niin, että aloittelijakin pysyy mukana matkassa.

Mikä on palvelin?[muokkaa]

Palvelinkone poikkeaa yleensä normaaleista pöytäkoneista laitteistoltaan. Isommissa palvelimissa tyypillisiä laitteistoratkaisuja ovat:

Suurten palvelinkoneiden rinnalle on tullut uusia vaihtoehtoja. Pitkälti juuri Linuxin ansiosta palvelimia voi nykyään pystyttää kuka tahansa, ja halvat palvelimet ovat yleensä kokoonpanoltaan verrattavissa pöytäkoneisiin, joidenkin palvelimien kohdalla jopa huomattavasti vaatimattomampia. Eräs kotipalvelinkäytössä suosittu minitietokone on Raspberry Pi.

Toinen voimakkaasti yleistynyt suunta on virtuaalipalvelimien käyttö. Palvelimet eivät enää ole fyysisiä tietokoneita, vaan virtuaalisia tietokoneita, jotka voivat helposti käyttää sen verran rautakapasiteettia kuin tarvitaan. Linux on ollut eturivin teknologia, kun virtualisointi on kehittynyt.

Palvelimien tärkeisiin ominaisuuksiin kuuluu etähallinta esimerkiksi SSH:n yli. Monet valmistajat tarjoavatkin laitteisiinsa erillisiä hallintakortteja, joiden avulla palvelin voidaan sammuttaa ja käynnistää uudelleen verkon yli, vaikka se olisi kaatunut. Parhailla hallintakorteilla voi halutessaan alustaa koneen kovalevyt ja asentaa käyttöjärjestelmän kokonaan uudelleen etänä verkon yli.

Tux.png
Linux.fi-wikissä artikkelit käsittelevät yleensä aihettaan siltä osin, kuin se koskee Linuxia ja vapaaohjelmistoja. Yleisluontoisemman artikkelin tästä aiheesta löydät tietosanakirja Wikipediasta.

Palvelimen hankkiminen ja pystyttäminen[muokkaa]

Linux-pohjaisen palvelimen pystyttäminen on helppoa ja halpaa. Siinä oppii paljon uutta tietokoneista ja verkoista. Apua tarjoavat tämä wiki ja muut ohjesivut verkossa, ja lisäksi apua voi kysyä keskustelupalstoilta tai vaikka Redditistä.

Linux-pohjaisen etäpalvelimen hallinta tapahtuu komentorivin kautta.

Ensiksi pitää hankkia palvelinkone tai ostaa sopivalta palveluntarjoajalta virtuaalipalvelin. Palvelimeen pitää asentaa käyttöjärjestelmä. Tyypillisimmät palvelimissa käytettävät Linux-käyttöjärjestelmät ovat Debian- tai Red Hat -pohjaisia. Oheisessa listassa pari suosituinta:

Debian-pohjaisia:[muokkaa]

Red Hat -pohjaisia:[muokkaa]

Näiden järjestelmien asentaminen käsitellään omissa ohjeissaan. Joissain palvelimissa järjestelmä on jo valmiiksi asennettuna. Silloin kannattaa selvittää mitä järjestelmää käytät. Se onnistuu yleensä cat-komennolla:

cat /etc/*release
  • Jakelut - lisätietoa eri Linux-versioista

Linux-pohjainen palvelin on käytännössä verkkoon kytketty tietokone, johon on asennettu Linux. Linuxin päällä pyörii erilaisia palveluita, jotka kuuntelevat verkosta koneelle tulevia yhteydenottoja ja vastaavat niihin. Palvelu on käytännössä vain ohjelma, jota tietokone ajaa. Erona normaaliin työpöytäohjelmaan on, että palvelua suoritetaan taustalla, eikä sille ole omaa ohjelmaikkunaa.

Alkuun pääseminen[muokkaa]

Palvelinta hallitaan komentorivin kautta. Seuraavista artikkeleista on hyötyä komentorivin opettelussa:

Palvelimelle on myös luotava käyttäjiä ja ryhmiä. Siihen löytyy nopea ohjeartikkeli:

Ohjelmia asennetaan palvelimelle yleensä jokaisen Linux-jakelun omalla paketinhallintajärjestelmällä. Debian-pohjaiset käyttävät apt-paketinhallintaa ja Red Hat -pohjaiset yum-järjestelmää. Suurienkin ohjelmistopakettien asentaminen hoituu näppärästi yhdellä tehokkaalla komennolla. Kattavampaa tietoa aiheesta löytyy artikkeleista Ohjelmien asentaminen ja Paketinhallintajärjestelmä

Palvelimessa ajetaan tyypillisesti yhtä tai useampaa taustapalvelua. Näiden palveluiden käynnistämisen ja sammuttamisen hoitaa Init-järjestelmä. Yleisin init-järjestelmä on nykyään systemd.

Palvelimen konfiguroiminen taas tehdään asetustiedostoja muokkaamalla. Lista tyypillisistä asetustiedostoista löytyy artikkelista Asetustiedostot.

Palvelimen hallinta[muokkaa]

Palvelinta hallitaan yleensä systemd-järjestelmän avulla. Sillä käynnistetään ja pysäytetään palveluita, liitetään levyosioita ja tehdään jonkin verran muitakin toimenpiteitä.

Etäkirjautumisen salliminen[muokkaa]

Kuten edellä kirjoitettiin, palvelimeen otetaan yleensä etäyhteys SSH:ta käyttäen. Kun olet saanut asennettua peruskäyttöjärjestelmän, todennäköinen seuraava askel on asentaa ja konfiguroida SSH.

Tarvitset palvelimelle käynnissä olevan sshd-palvelun. Omalle tietokoneellesi Sinun on asennettava SSH-asiakasohjelma.

Windows-käyttäjät käyttävät monesti PuTTY-ohjelmaa palvelimelle yhdistääkseen. Mac- ja Linux-järjestelmissä ssh-ohjelma on asennettu valmiiksi, ja se avataan järjestelmän oman komentorivin kautta.

Palvelintyyppejä[muokkaa]

Asentamasi Linux-jakelu ei vielä tee varsinaisesti mitään. Siihen on asennettava ja konfiguroitava palvelinohjelmia.

Yleisimmät palvelinohjelmistot[muokkaa]

Erikoisempia palvelinohjelmistoja[muokkaa]


Katso myös[muokkaa]

v  k  m
Fxemoji u1F5A5.svg Palvelin
 Ylläpito  SSH | Tietoturva | Käyttäjien hallinta | Systemd | iptables | SELinux | AppArmor
 Palvelintyypit  Web-palvelin | Sähköposti | Tietokanta | NFS | Samba
 Komentorivi  Komentorivin perusteet | Komentorivikomennot | Bash-skriptaus
 Tekstieditoreja  nano | vi | emacs
Palvelin-luokka