Ero sivun ”Palvelin” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(palvelin voi olla vaatimatonkin; nyyssipalvelin, sovelluspalvelin; LTSP ei yksiselitteinen)
pEi muokkausyhteenvetoa
 
(22 välissä olevaa versiota 10 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
{{Perustietoa}}
'''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.  
'''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.  


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


Palvelinkone poikkeaa yleensä laitteistopuoleltaan jollain tapaa normaaleista pöytäkoneista, joskin 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. Isommissa palvelimissa tyypillisiä laitteistoratkaisuja ovat:
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? ==
 
Palvelinkone poikkeaa yleensä normaaleista pöytäkoneista laitteistoltaan. Isommissa palvelimissa tyypillisiä laitteistoratkaisuja ovat:


* [[SMP|Monta rinnakkaista prosessoria]]
* [[SMP|Monta rinnakkaista prosessoria]]
* Monta rinnakkaista levyä käsittävä levyjärjestelmä, eli [[RAID]]
* Monta rinnakkaista levyä käsittävä levyjärjestelmä, eli [[RAID]]
* [[SCSI]]
* [[SCSI]] tai [[SAS]]
* Kahdennetut virtalähteet
* Kahdennetut virtalähteet
* [[Verkkoliitynnät monimutkaisemmin|Useampi verkkoyhteys]]
* [[Verkkoliitynnät monimutkaisemmin|Useampi verkkoyhteys]]


Palvelimien tärkeisiin ominaisuuksiin kuuluu myös 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.
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.
 
== 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ä


== Yleisimpiä palvelintyyppejä ==
== 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
*[[DHCP]]-palvelin
*HTTP-välityspalvelin (proxy), katso [[Squid]]
*[[wikipedia:fi:DNS|Nimipalvelin]], katso [[BIND]]
*[[wikipedia:fi:DNS|Nimipalvelin]], katso [[BIND]]
*[[wikipedia:fi:Keskusteluryhmät|Nyyssipalvelin]], katso [[cnews]], [[inn]], [[leafnode]], [[nntpd]]
*[[wikipedia:fi:Keskusteluryhmät|Nyyssipalvelin]], katso [[cnews]], [[inn]], [[leafnode]], [[nntpd]]
*Pelipalvelin (pitää yllä jotakin, yleensä Internetissä toimivaa peliä jonne pelaajat voivat liittyä)
*Pelipalvelin (pitää yllä jotakin, yleensä Internetissä toimivaa peliä jonne pelaajat voivat liittyä)
*Shellipalvelin (tarjoaa [[komentorivi]]pohjaista etäkirjautumista), katso [[SSH]], [[RSH]], [[Telnet]]
*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ä  
*Sovelluspalvelin, tarjoaa mahdollisuuksia ajaa sovelluksia, yleensä [[X-pääte]]- tai työasemaympäristössä  
*Sähköpostipalvelin, katso [[Exim]], [[Postfix]], [[Sendmail]], [[wikipedia:qmail|Qmail]], [[wikipedia:fi:Dovecot|Dovecot]], [[wikipedia:Courier Mail Server|Courier]] (lähettää ja/tai vastaanottaa [[sähköposti|sähköpostia]])
*Thin client -palvelin, katso [[LTSP]] (tehtävät voi haluttaessa jakaa useamman palvelimen kesken)
*Thin client -palvelin, katso [[LTSP]] (tehtävät voi haluttaessa jakaa useamman palvelimen kesken)
*Tiedostopalvelin, katso [[NFS]], [[Samba]], [[FTP]], [[SFTP]] (palvelin, jonne voi tallentaa ja josta voi hakea tiedostoja)
*[[wikipedia:fi:Tietokanta|Tietokantapalvelin]], katso [[MySQL]], [[PostgreSQL]], [[SQLite]], [[Oracle]], [[Firebird]]
*[[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]]
*[[VPN]]-palvelin, katso [[wikipedia:fi:L2TP|L2TP]], [[wikipedia:fi:PPTP|PPTP]] (sisältyy [[ydin|ytimeen]]) ja [[wikipedia:OpenVPN|OpenVPN]]
*Web-palvelin, katso [[Apache]], [[thttpd]], [[lighttpd]] (lähettää www-selaimelle sen pyytämät sivut ja muut tiedostot)
*[[X]]-etäkirjautumispalvelin, katso [[XDMCP]], [[SSH]]
*[[X]]-etäkirjautumispalvelin, katso [[XDMCP]], [[SSH]]
*Reititinohjelmia [[Vnstat]]


==Katso myös==
==Katso myös==
*[[LASP]]
*[[LAMP]]
*[[LAMP]]


{{Malline:Palvelin}}
[[Luokka:Palvelimet]]
[[Luokka:Palvelimet]]
[[Luokka:Verkko]]
[[Luokka:Verkko]]

Nykyinen versio 21. tammikuuta 2021 kello 14.26

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

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.

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
Palvelin
 Ylläpito  SSH | Tietoturva | Käyttäjien hallinta | Systemd | iptables | Security-Enhanced Linux | AppArmor
 Palvelintyypit  Web-palvelin | Sähköposti | Tietokanta | NFS | Samba
 Komentorivi  Komentorivin perusteet | Komentorivikomennot | Bash-skriptaus
 Tekstieditoreja  nano | vi | emacs
Palvelin-luokka