Palvelin
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?
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.
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.
Linux-palvelimen 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ä.
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:
Red Hat -pohjaisia:
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ä
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-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.
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
- Komentorivin perustyökalut - aakkostettu lista yleisistä komentorivikomennoista
Palvelimelle on myös luotava käyttäjiä ja ryhmiä. Siihen löytyy nopea ohjeartikkeli:
Palvelintyyppejä
Asentamasi Linux-jakelu ei vielä tee varsinaisesti mitään. Siihen on asennettava ja konfiguroitava palvelinohjelmia.
Yleisimmät
- Web-palvelin, katso 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
- 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