OpenBSD seadistamine
Sisukord
- 1 Sissejuhatus
- 2 Võrguseadmete seadistamine
- 3 Liikluse ruutimine
- 4 Alglaadimise järgselt automaatselt käivitatavad programmid
- 5 Kõvaketta seadistamine
- 6 Kasutaja keskkonna seadistamine
- 7 Eposti seadistamine
- 8 Protsessi tuumajälg
- 9 Daily, weekly, monthly
- 10 Tarkvaralise RAID kasutamine
- 11 Multiedastus
- 12 Kasulikud lisamaterjalid
Sissejuhatus
Omajagu olulisi operatsioonisüsteemi seadistusi puudutavaid valikud tehakse ära operatsioonisüsteemi paigaldamise käigus, nt mis puudutavad kõvakettakasutust. Samuti antakse arvutile nimi, ip aadress, õeldakse, kas bootimise järgselt sshd server käivitada. Kõvakettaseadistuse osas tehtud valikut on töötava süsteemi tingimustes suhteliselt raske muuta, samas ip aadressi või seda kas sshd server bootimisel käivitatakse, on suhteliselt lihtne muuta.
Käesolevas palas selgitatakse, kuidas kõige sagedamini muutmist vajavaid arvuti tööd mõjutavaid parameetreid kontrollida.
Võrguseadmete seadistamine
Reeglina ei ole kombeks OpenBSD kasutamisel operatsioonisüsteemi tuuma ümber kompileerida eesmärgiga lülitada sisse vajalike võrgukaardi mudelite tuge - OpenBSD poolt toetatud seadmete tugi on olemas ning riistvara tuntakse automaatselt ära või siis parasjagu kasutada olevate seadmete tugi puudub ja tõenäoliselt on sel juhul lihtsam leida riistvara, mis on toetatud.
Võrguseadmed esinevad tootjale iseloomulike nimedega, täpsemat infot saab vastavast võrguseadme draiveri manuaalist, nt 'man em'
- em - Inteli Gbit kaardid
- bge - Broadcomi Gbit kaardid
- fxp - Inteli 100 Mbit kaardid
- xl - 3Com 100 Mbit kaardid
Võrguseadme seadistamiseks tuleb öelda
# ifconfig em0 172.16.1.17 netmask 255.255.255.252
või uuemate (4.3 ja 4.4) versioonide puhul ka CDIR (ingl. k. Classless Inter-domain Routing) notatsioonis
# ifconfig em0 172.16.1.17/24
Soovides, et bootimise järgselt omandaks seade samad väärtused, tuleb tekitada fail /etc/hostname.em0 sisuga
inet 172.16.1.17 255.255.255.252 NONE
hostname.if seadistusfaili süntaksit on kirjeldatud manuaalis man hostname.if.
Võrguseadmele aadresside lisamiseks tuleb öelda
# ifconfig em0 inet alias 172.16.1.18 netmask 255.255.255.255
Soovides, et bootimise järgselt oleks alias olemas tuleb lisada /etc/hostname.em0 faili rida
inet alias 172.16.1.18 255.255.255.255
Aliase eemaldamiseks tuleb öelda
# ifconfig em0 inet delete 172.16.1.18 netmask 255.255.255.255
Kui võrguseadme peab omandama ip aadressi dhcp serveri käest, peab fail /etc/hostname.seadmenimi fail sisaldama
dhcp
Kui ruutingutabelis on nt kirje 192.168.2.0/24 ruutimise kohta, siis arvuti võrguseadmele sellest võrgust ip aadresse seadistamisel öeldakse
# ifconfig em1 192.168.2.30/24 ifconfig: SIOCAIFADDR: File exists
Liikluse ruutimine
Selleks, et OpenBSD hakkas liiklust ruutima tuleb tulemüüri võrguseadmed sobivalt seadistada, ühendada kaablid teiste arvutitega ning öelda
# sysctl -w net.inet.ip.forwarding=1
Selleks, et alglaadimise järgselt omandaks see tuuma parameeter sama väärtused, tuleb redigeerida faili /etc/sysctl.conf.
Tavaliselt on lisaks võrguseadmete seadistamisele vajalik öelda ka vaikelüüsi aadress
# route add default 172.16.1.18
Selleks, et alglaadimise järgselt seadistataks see vaikelüüsi aadress, tuleb kirjutada faili /etc/mygate
172.16.1.18
IPv4 ruutingutabelit näeb öeldes
# route -n show -inet
Kontrollimaks, et ruutimine iseenesest toimib tasub vajadusel paketifilter välja lülitada käsuga 'pfctl -d' ning nt pingimise abil veenduda, et liiklus tulimüüri läbib.
Võrgule ruutingu lisamiseks tuleb öelda
# route add 192.168.15.0/24 192.168.1.3 add net 192.168.15.0/24: gateway 192.168.1.3
Selleks, et staatiline ruuting kehtestuks bootimise käigus, tuleb lisada vastava võrguseadme /etc/interface.if-name faili juurde rida
!route add 192.168.15.0/24 192.168.1.3
ning selle ruutingu eemaldamiseks
# route delete 192.168.15.0/24 delete net 192.168.15.0/24
Hosti 192.168.16.14 juurde pakettide ruutimiseks lüüsi 192.168.15.4 kaudu tuleb öelda
# route add 192.168.16.14 192.168.15.4
ning selle ruutingu eemaldamiseks
# route delete 192.168.16.14
Alglaadimise järgselt automaatselt käivitatavad programmid
Failide /etc/rc.conf ning /etc/rc.conf.local sisu määrab, millised programmid käivitatakse peale OpenBSD alglaadimist. /etc/rc.conf faili tuleks käsitleda template'ina ja muudatusi teha vaid failis /etc/rc.conf.local. Näiteks selleks, et nimeserver automaatselt käivitus peab sisaldub /etc/rc.conf.local failis rida
named_flags=""
kusjuures, vaikimisi st /etc/rc.conf failis on vastav rida
named_flags="NO"
Lisaks programmide käivitamisele saab /etc/rc.conf.local faili abil lülitada automaatselt sisse PF paketifiltri reaga
pf="YES"
Tuuma parameetrite vaikeväärtuste muutmiseks tuleb redigeerida faili /etc/sysctl.conf, näiteks võrguliikluse ruutimiseks peab seal sisalduma rida
net.inet.ip.forwarding=1
Paketihalduse vahenditega või nt niisama lähetetekstist lisatud programmide käivitamist tuleks teha failist /etc/rc.local, nt Squid puhul lisada sektsioon
if [ -x /usr/local/sbin/squid ]; then echo -n ' squid'; /usr/local/sbin/squid fi
Kõvaketta seadistamine
Kõvaketta disklabeli sisu vaatamiseks tuleb öelda
# disklabel /dev/wd0c # Inside MBR partition 3: type A6 start 63 size 39871377 # /dev/wd0c: type: ESDI disk: ESDI/IDE disk label: IC35L020AVER07-0 flags: bytes/sector: 512 sectors/track: 63 tracks/cylinder: 16 sectors/cylinder: 1008 cylinders: 16383 total sectors: 39876480 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # microseconds track-to-track seek: 0 # microseconds drivedata: 0 16 partitions: # size offset fstype [fsize bsize cpg] a: 30000000 63 4.2BSD 2048 16384 328 # Cyl 0*- 29761* b: 2687361 30000063 swap # Cyl 29761*- 32427 c: 39876480 0 unused 0 0 # Cyl 0 - 39559
Kasutaja keskkonna seadistamine
Selleks, et hakkaks kogunema shelli history tuleb lisada faili ~/.profile read
export HISTSIZE=1024 export HISTFILE=~/.ksh_history
Hea on promptis näha ka süsteemi nime, selleks kasutage
export PS1="`hostname -s`:\w# "
Eposti seadistamine
Kui OpenBSD ei ole otseselt postimasin, siis tema enda poolt genereeritud raportite kasutaja postkasti edasi saatmiseks piisab kirjeldada root kasutajale /etc/mail/aliases failis aadress, lisades näiteks rea
root: mart@loomaaed.tartu.ee
Vaikimisi käivitatakse sendmail vaid lokaalselt kirju vastu võtma ja edasi saatma, kuulates 127.0.0.1:25 soketil.
Protsessi tuumajälg
Protsessi tuumajälje logimiseks (ingl. k. kernel trace logging) on kaks programmi
- ktrace - lülitab protsessi logimise sisse ja välja ning määratleb, mida logitakse (system calls, signal prcessing jt)
- kdump - esitab ktrace poolt kogutud andmed loetaval kujul
Näiteks protsessi PID=65 tuumajäljega tegelemiseks tuleb esmalt jälgimine sisse lülitada
# ktrace -p 65 -f /tmp/65-ktrace.out
Seejarel sooritada huvipakkuvaid tegevusi prosessiga ja lülitada jälgimine välja
# ktrace -c -p 65
Ning sisuga tutvumiseks öelda
# kdump -f /tmp/65-ktrace.out
Äärmiselt oluline on peale jälge sisselülitamist sooritada ka väljalülitus, vastasel korral on oht, et failisüsteem täitub trace failiga.
Daily, weekly, monthly
Kord nädalas, laupäeviti käivitatakse /etc/weekly skript, muu seas juhendab see locate.db ehitamist. locate.db erandite tegemiseks tuleb redigeerida /etc/locale.rc seadistusfaili, lisades PRUNEPATHS peale katalooginimi
PRUNEPATHS="/tmp /var/tmp /usr/tmp /backup"
Tarkvaralise RAID kasutamine
Tarkvaralise RAID (ingl. k. software raid) kasutamiseks on OpenBSD operatsioonisüsteemis olemas mitmeid võimalusi, tundub, et kõige uuem (ja ehk mitte veel kõige stabiilsem ja omadusterohkem) võimalus on nn 'man softraid'. Peab arvestama, et sellist RAID'i ei saa kasutada juurfailisüsteemi jaoks.
Olgu arvutis kasutada neli kõvaketast, wd0 peal on juurikas, ning wd1, wd2 ja wd3 on ühesugused ja ei ole kasutuses. Kolmest komponendist koosnevad vööditatud RAID seadme moodustamiseks tuleb sooritada selline järgnevus
- Initsialiseerida partitsioonitableid
# fdisk -iy wd1 # fdisk -iy wd2 # fdisk -iy wd3
- Moodustada RAID partitsioonid
# printf "a\n\n\n\nRAID\nw\nq\n\n" | disklabel -E wd1 # printf "a\n\n\n\nRAID\nw\nq\n\n" | disklabel -E wd2 # printf "a\n\n\n\nRAID\nw\nq\n\n" | disklabel -E wd3
Moodustada RAID skeem
# bioctl -c 0 -l /dev/wd1a,/dev/wd2a,/dev/wd3a softraid0
Tulemust saab vaadata nii
# bioctl sd0 Volume Status Size Device softraid0 0 Online 25761357312 sd0 RAID0 0 Online 8587119104 0:0.0 noencl <wd1a> 1 Online 8587119104 0:1.0 noencl <wd2a> 2 Online 8587119104 0:2.0 noencl <wd3a>
Kirjutame moodustunud seadme sd0 algusse nullid
# dd if=/dev/zero of=/dev/rsd0c bs=1m count=1
Võtame moodustunud seadme sd0 kasutusele
# fdisk -iy sd0 # printf "a\n\n\n\n4.2BSD\nw\nq\n\n" | disklabel -E sd0 # newfs /dev/rsd0a
Seadme eemaldamiseks tuleb kasutamine esmalt lõpetada ning öelda
# bioctl -d sd0
Multiedastus
Multiedastuse (ingl. k. multicasting) abil saab korraldada andmete jõudmist lähtepunktist kasutajani kusjuures iseloomulikuks on, et seejuures ei moodustata nn ühendust (tcp mõttes) ega pseudo-ühendust (udp mõttes). Vastuvõtja ei saada midagi allikale vastuseks, lihtsalt kuulab võrgust liiklust ja kasutab seda. Multiedastus leiab kasutust nt meedia st heli ja pildi edastamisel. Oluline asjaolu on et allika poolt välja saadetavate andmete hulk ei sõltu sellest kui palju on nende kasutajaid.
OpenBSD roll multiedastuse juures on tagada, et multiedastus ületaks vajadusel ühe alamvõrgu (ingl. k. subnet) piirid, nt ühes alamvõrgus asub multiedastuse server ja teises multiedastuse kliendid.
OpenBSD puhul tuleb selliseks asjakorralduseks lülitada multiedastus sisse sysctl abil öeldes
# sysctl -w net.inet.ip.mforwarding=1
ning käitada nt sellised seadistusfailiga /etc/dvmrpd.conf
group { robustness 4 interface em0 interface em1 }
dvrmpd deemon öeldes
# dvmrpd
Kasulikud lisamaterjalid
- man ifconfig
- man hostname.if
- man softraid
- man bioctl