The main terms you need to acquaint yourself with for now are as follows:
Database
The overall container for a collection of MySQL data
Table
A subcontainer within a database that stores the actual data
Row
A single record within a table, which may contain several fields
Column
The name of a field within a row
All posts by mesala
SSH Config
Palveluportin voi vaihtaa kohdasta port. Defaultti portti on 22.
Kuvan konfigissa se on muutettu porttiin 2000.
LoginGraceTime määrittää kauan voi client ohjelma olla kirjautumistilassa. Suositeltu aika on 60 sekunttia.
MaxAuthTries määrittää kirjautumiskertojen määrän jotka epäonnistuu.
Ennen kuin käyttäjä saa todennusyrityksen, SSH -protokolla vaatii salauksen ja muiden protokollavaihtoehtojen neuvottelun, istuntoavainten luomisen ja isäntäavainten vaihdon. Joten jokainen uusi yhteys vaatii ei-triviaalia työtä: SSH-yhteysyritysten pyyntö useista lähteistä voitaisiin varmasti yhdistää palvelimen DoS-hyökkäykseen.
Tämä asetus kannattaa pitää mahdollisimman pienenä, pienempi kuin 6.
MaxSessios -asetus määrittää avointen istuntojen enimmäismäärän yhteyttä kohti. Tarkempi tapa ajatella tätä asetusta on, että sen avulla voit hallita yhden TCP -yhteyden kautta lähetettyjen SSH -istuntojen määrää. Oletusarvo on 10. MaxSessions -asetus on hyvin yksinkertainen. Mitä pienempi luku, sitä vähemmän yhteyksiä ja päinvastoin.
Seuraavilla asetuksilla voi pitää yhteyttä aktiivisena vaikka yhteyden dataliikenne olisi vähäistä (Syöttölaitteen syöttö vähäinen).
ClientAliveInterval määrittää serverin ja clientin välisen hello komennon lähettämisen, eli palvelin kysyy clientiltä oletko siellä.
Esimerkissä on asetettu 60 s välein lähetettäväksi tämä kysely.
ClientAliveCountMax määrittää kuinka monta kappaletta hello kyselyitä lähetetään clientille. Esimerkissä niitä lähetetään 300kpl ja niitä lähetetään minuutin välein.
Proftpd-basic konfiguraatio
Konfiguraatio tapahtuu kansiosta /etc/proftpd ja sieltä avataan tiedosto
proftpd.conf, avaaminen tapahtuu nano ohjelmalla komennolla: nano proftpd.conf.
- Serveri nimen vaihtaminen “ident” -> ServerName “palvelimen nimi”
- Käyttäjien lukitseminen omiin kotikansioihin -> DefaultRoot , poista kommenteista.
- Käyttäjän evääminen palvelun käytöstä: AccessDenyMsg “Salasanasi ei kelpaa %u.”
- Käyttäjän sallinta tekstin lähettäminen: AccessGrantMsg “Tervetuloa palvelimelle %u.”
- Sallitaan uudelleen vastaan-ottaminen vaikka yhteys on katkennut: AllowRetrieveRestart on
- Sallitaan uudelleen lähettäminen vaikka yhteys on katkennut: AllowStoreRestart on
- Määritellään maksimi asiakasohjelmien määrä per käyttäjätunnus MaxClientsPerUser 10
- Kirjautumisaika sekunneissa: TimeoutLogin 300
- Kirjautumisen jälkeen voidaan lähettää serverin tunnistustiedot: ServerIdent on “This is dataserver made by mekaanikko.”
Proftpd-basic asennus
Pääkäyttäjänä voi asentaa proftpd serveri sovelluksen seuraavalla komennolla: apt-get install proftpd
Ennen asennusta kannattaa päivittää paketit komennolla apt-get update ja apt-get upgrade.
- Avaa terminaali Kirjaudu pääkäyttäjänä root (sudo -i)
- Päivitä paketit apt-get update
- Asenna proftpd (apt-get install proftpd-basic)
- Konfiguroi proftpd.conf (/etc/proftpd/proftpd.conf), jossa muuta palvelimen nimi ja osoita jokainen käyttäjä kotihakemistoonsa.
ServerName “Debian” -> oman palvelimen nimi
#DefaultRoot ~ -> DefaultRoot ~/

- . Käynnistä proftp palvelu uudestaan ( service proftpd restart )
- Tee ftp käyttäjille oma kansio, esim /ftp (mkdir komento)
- Tee testikäyttäjä useradd komennolla
- (useradd asentaja -d /ftp/asentaja -m -s /bin/false)
- Testaa palvelimen toiminta ftp ohjelmalla (filezilla)
Apachen asennus
Asennus tapahtuu pääkäyttäjän oikeuksilla seuraavasti:
apt-get install apache2
Sitä ennen kannattaa päivittää paketit komennolla apt-get update ja apt-get upgrade.
Apache2 asennus linux käyttöjärjestelmään
- Käynnistä käyttöjärjestelmä (Kubuntu/Ubuntu/Debian)
- Avaa terminaali
- Kirjaudu pääkäyttäjänä (sudo -i)
- Päivitä paketit apt-get update
- Tee juuri tasolla kansio www, käyttäen komentoa mkdir www
- Asenna Apache2 (apt-get install apache2)
- Konfiguroi Apache2.conf ja muuta halutuksi www-kansion osoitus (etc/apache2/sites-available/)

Huomioi että eri apache2 käännösversioissa on erilaiset konfiguraatiotiedostot! Lisää käännösversiosta voit lukea apachen sivuilta.
Halutessa kansioita voi asettaa salasanan taakse ja siihen tarvitaan konfigiin muutos ( AllowOverride AuthConfig ) Apachen tietoturvaa voi parantaa lisäämällä kaksi riviä apache2.conf tiedostoon.
ServerSignature off
ServerTokens Prod


Käynnistä Apache2 uudelleen (service apache2 restart) Testaa selaimella palvelimen toiminta Lataa palvelimelle verkkosivut ja testaa niiden toiminta Access/Error logit löytyy vakiona hakemistosta:
/var/log/apache2/ Logien analysointiin mielestäni hyvä työkalu on goaccess.
Se on avointa lähdekoodia sekä se toimii suoraan komentorivillä. /apache2/mods-enables/dir.conf tiedostoon lisätään tiedostonimiä lisää, avautumisprioriteetti on samassa järjestyksessä kuin tiedostoa luetaan.
esim:
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm Index.htm main.html main.htm Main.htm koti.html Koti.html koti.htm koti.php Koti.php home.html Home.html home.htm

Apache konfiguraatio
Apachen konfiguraatio löytyy kansiosta /etc/apache2.
Sieltä avataan nanolla tiedosto apache2.conf
Kohdasta directory muutetaan kansion asetus halutuksi, oletuksena se on /var/www -> esim. wwwdata
Serverin signature tiedot pois päältä:
ServerSignature off
ServerTokens Prod
Htaccessin toiminta sallitaan seuraavalla komennolla:
AllowOverride AuthConfig, eli poistetaan None ja vaihdetaan tilalle AuthConfig. Huomio isot ja pienet kirjaimet.
Kansio-osoitus tulee muuttaa myös /etc/apache2/sites-available kansiosta, tiedoston nimi on 000-default.conf, sen sisältä vaihdetaan rivi
DocumentRoot ja kun halutaan osoitus wwwdataksi niin se tehdään näin: DocumentRoot /var/www/html -> /wwwdata/
Palvelun uudelleen käynnistäminen:
service apache2 restart
Putty
Linuxiin puttyn pystyy asentamaan komennolla apt-get install putty.
Windows koneelle se täytyy hakea täältä.
Puttyä varten tarvitset tietää seuraavat asiat palvelimelta:
– Palvelimen osoite
– Palvelun portti
– Käyttäjätunnus
– Salasana

SSH
SSH konfiguraatio
Ssh konfiguraatio löytyy kansiosta /etc/ssh ja sen sisältä sshd_config tietosto joka avataan nano-editor ohjelmalla. Komento on seuraava: nano sshd_config.
Palvelun portin voi vaihtaa kohdasta port, default portti on 22.
Tietoturvan kannalta on järkevää muuttaa portti, portti kannattaa valita siten ettei se ole listattuna RFC dokumentissa käytetyimpien tyyppien kohdalle.
Keepalive toiminto asetus tehdään seuraavasti, otetaan kommenteista seuraavat komennot pois ja asetetaan niihin tarvittavat asetukset.
ClientAliveInterval 60
ClientAliveCountMax 120
ClientAliveInterval lähettää noop tietoa putty terminaalille, tässä tapauksessa 60 s välein.
ClientAliveCountMax asettaa nooppien lukumäärän ja kokonaisaika määräytyy kun kerrotaan 60 * 120 -> 2h.
Autentifikointi kohtaan muutettiin seuraavat asiat:
LoginGraceTime 1m
MaxAuthTries 6
MaxSessions 30
LoginGraceTime määrittää kirjautumiseen käytettävän kokonaisajan
MaxAuthTries määrittää kuinka monta kertaa voi kirjautua väärällä tunnuksella, ennen kuin joutuu banniin
MaxSessions maksimi ssh yhteyksien määrä palvelimelle.
SSH asennus
Ssh palvelun voi asentaa serverille komennolla apt-get install ssh.
Sitä ennen kannattaa tehdä pakettien päivitykset komennolla apt-get update.