Ero sivun ”Palvelin” versioiden välillä
Pb (keskustelu | muokkaukset) p (→Yleisimpiä palvelintyyppejä: squid) |
pEi muokkausyhteenvetoa |
||
(23 välissä olevaa versiota 11 käyttäjän tekeminä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
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. | {{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. | |||
Käsitteellä palvelin voidaan tarkoittaa myös asiakas-palvelin-mallia tapana järjestää kahden ohjelman välinen kommunikointi. | 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ä | 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 | 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ä | |||
== | == 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 | ||
*[[wikipedia:fi:DNS|Nimipalvelin]], katso [[BIND]] | *[[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ä) | *Pelipalvelin (pitää yllä jotakin, yleensä Internetissä toimivaa peliä jonne pelaajat voivat liittyä) | ||
*Shellipalvelin (tarjoaa [[komentorivi]]pohjaista etäkirjautumista | *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 | *Thin client -palvelin, katso [[LTSP]] (tehtävät voi haluttaessa jakaa useamman palvelimen kesken) | ||
*[[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]] | ||
*[[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
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:
- Monta rinnakkaista prosessoria
- Monta rinnakkaista levyä käsittävä levyjärjestelmä, eli RAID
- SCSI tai SAS
- Kahdennetut virtalähteet
- 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.
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ä.
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.
- Palvelimen pystyttäminen - lisätietoa Linux-palvelimen pystyttämisestä
Alkuun pääseminen[muokkaa]
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
- Komentorivin perustyökalut - aakkostettu lista yleisistä komentorivikomennoista
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]
- 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, Qmail, Dovecot, Courier (lähettää ja/tai vastaanottaa 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[muokkaa]
- DHCP-palvelin
- Nimipalvelin, katso BIND
- Nyyssipalvelin, katso cnews, inn, leafnode, nntpd
- Pelipalvelin (pitää yllä jotakin, yleensä Internetissä toimivaa peliä jonne pelaajat voivat liittyä)
- Shellipalvelin (tarjoaa komentorivipohjaista etäkirjautumista, tyypillisesti irssin ja screenin 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)
- Tietokantapalvelin, katso MySQL, PostgreSQL, SQLite, Oracle, Firebird
- VPN-palvelin, katso L2TP, PPTP (sisältyy ytimeen) ja OpenVPN
- X-etäkirjautumispalvelin, katso XDMCP, SSH
- Reititinohjelmia Vnstat
Katso myös[muokkaa]
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 |