Erinevus lehekülje "Populaarsete teenuste pidamine OpenBSD abil" redaktsioonide vahel
(→Python) |
(→OpenLDAP kliendi kasutamine) |
||
321. rida: | 321. rida: | ||
===OpenLDAP kliendi kasutamine=== | ===OpenLDAP kliendi kasutamine=== | ||
− | + | Kliendi tarkvara paigaldamiseks tuleb öelda | |
+ | |||
+ | # pkg_add openldap-client | ||
+ | |||
+ | LDAP kliendi seadistusfailid asuvad kataloogis /etc/openldap, seadistamine ja kasutamine toimub sarnaselt nagu nt Debiani http://kuutorvaja.eenet.ee/wiki/OpenLDAP_kasutamine_Debianiga. |
Redaktsioon: 1. detsember 2009, kell 11:39
Sisukord
Sissejuhatus
OpenBSD abil teenuste, nt nimeserveri ja veebiseveri pidamisel torkab Linuxi ja Solarise kasutajatele ilmselt olulise erinevusena silma
- puuduvad nö tavapärased /etc/init.d/serverinimi käivitusskriptid (mis on tegelikult üks nn BSD-line ilming; õigupoolest on ses mõttes Linux ja Solaris System V legacy'ga)
- vaikimisi on teenused pigem chroot'itud
Teenuste käivitumist bootimisejärgselt saab juhtida /etc/rc.conf, õigemini /etc/rc.conf.local faili abil. Seaditusfailides tehtud muudatuste kehtestamiseks tuleb saata protsessile sobiv signaal või kasutada sobivat utiliiti, nt named puhul on olemas programm rndc.
Nimeserver
Nimeserveri tarkvara sisaldub OpenBSD opratsioonisüsteemis, seadistusfailid asuvad kataloogis /var/named. Nimeserveri käivitamiseks tuleb öelda
# named
/etc/rndc.key moodustamiseks ja chroot alla kopeerimiseks sobib öelda
# rndc-confgen -a # cp /etc/rndc.key /var/named/etc
Veebiserver
Veebiserveri takrkvara sisaldub OpenBSD operatsioonisüsteemis, seadistusfailid asuvad kataloogis /var/www. Veebiserveri käivitamiseks tuleb öelda
# httpd
Kui veebiserver peaks käivituma mitte-chrootitult, tuleb lisada lõppu võti -u.
DHCP server
DHCP server tarkvara sisaldub OpenBSD operatsioonisüsteemi põhiosas, serveri tööd juhib seadistusfail /etc/dhcpd.conf. Olgu ülesandeks pakkuda OpenBSD tulemüüri kahe füüsilise võrguseadme külge ühendatud võrkudes
- em0 - jagada aadresse vahemikus 192.168.10.32 - 192.168.10.63
- em2 - jagada aadress vahemikus 192.168.252.32 - 192.168.252.63
- mac aadressiga 00:11:25:85:64:34 arvutil on fikseeritud ip aadress 192.168.10.216
Lisaks öeldakse klientidele vaikelüüsi ja nimeserveri aadresse.
Vastav seadistusfail võiks olla näiteks sellise sisuga
shared-network wifi { option domain-name-servers 192.168.10.254; option domain-name "wifi"; subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.32 192.168.10.63; option broadcast-address 192.168.10.255; option routers 192.168.10.254; } host arvuti-1.wifi { hardware ethernet 00:11:25:85:64:34; fixed-address 192.168.10.216; option broadcast-address 192.168.10.255; option routers 192.168.10.254; } } shared-network kontor { option domain-name-servers 192.168.252.254; option domain-name "kontor"; subnet 192.168.252.0 netmask 255.255.255.0 { range 192.168.252.32 192.168.252.63; option broadcast-address 192.168.252.255; option routers 192.168.252.254; } }
Käivitamine toimub käsuga, kus em0 em2 on nende võrguseadmete nimed, millel dhcp teenus tööle hakkab, seejuures on oluline, et vastaval füüsilisel seadmele on seadistatud ip aadress
# dhcpd em0 em2
OpenBSD nn baasi kuuluv dhcpd tarkvara erineb nt ISC DHCP serverist, mida kasutatakse paljudes Linuxi distributsioonides selle poolest, et OpenBSD dhcpd ei kuula nö UDP porti, vaid kasutab BPF'i (Berkeley Packet Filter, man 4 bpf). Sellest järeldub, et dhcpd serverile ligipääsu ei saa kontrollida paketifiltriga, vaid käivitades dhcpd ainult vajalikel võrguseadmetel ning ning dhcpd seadistusfaili abil. Lisaks, dhcpd saab kasutada ainult füüsilistel või nendega samaväärsetel seadmetel (nt mitte carp seade; aga sobib nt füüsiline, vlan, trunk) ning neile seadmetel peab olema omistatud ip aadress.
Ajaserver
Süsteemi õige aeg on oluline näiteks logifailide kasutamise seisukohast. OpenBSD nn baas-komplekti kuulub ntpd programm (OpenNTPD tarkvara), mille seadistusfailiks on /etc/ntpd.conf. Süsteemi enda aja õigena hoidmiseks piisab seadistusfailis ridadest, kus ip aadres on sobiva võrguseadme aadress
listen on 127.0.0.1 servers pool.ntp.org
ntpd käivitamiseks sobib öelda, -s võti seab nö järsku käivitamisel aja õigeks (vastasel korral võib kuluda päevi kuni kellaaeg tasakesi korrigeeritakse)
# ntpd -s
Logisse ilmub samal ajal
# tail -f /var/log/daemon ... Jun 8 00:21:05 cpq ntpd[14069]: listening on 127.0.0.1 Jun 8 00:21:05 cpq ntpd[14069]: ntp engine ready Jun 8 00:21:05 cpq ntpd[10430]: set local clock to Mon Jun 8 00:21:05 EEST 2009 (offset -0.000471s) Jun 8 00:21:26 cpq ntpd[14069]: peer 194.204.30.8 now valid
Kui lisada järele võti -d on võimalik jälgida aja sünkroniseerimise protsessi
# ntpd -d # ntpd -d ntp engine ready reply from 81.20.144.33: offset -0.044867 delay 0.000408, next query 7s reply from 81.20.150.42: offset -0.049221 delay 0.000622, next query 5s reply from 193.40.133.142: offset -0.046872 delay 0.003714, next query 8s reply from 193.40.5.113: offset -0.046573 delay 0.003994, next query 8s reply from 84.50.81.46: offset -0.045684 delay 0.045518, next query 9s
Kuna süsteemis puudub ntptrace laadne utiliit, siis sedasi on sobiv jälgida ntpd toimimist, nt kas tal õnnestub pääseda läbi eemaloleva tulemüüri välja vajalike ajaserveriteni.
-s võtme lisades on pilt selline
# ntpd -d -s ntp engine ready reply from 81.20.144.33: offset -11050.410252 delay 0.000351, next query 6s set local clock to Sat Aug 16 23:51:20 EEST 2008 (offset -11050.410252s)
Kui soovida seda arvutit kasutada kohaliku ajaserverina tuleb lisada seadistusfaili rida
listen on 192.168.11.254
Sellise teenuse käest saab pärida aega näiteks selliselt
# rdate -p 192.168.11.254 Sat Aug 16 23:49:12 EEST 200
OpenBSD OpenNTPD tarkvarale on iseloomulik, et temalt ei saa Debiani ntp paketist pärit ntptrace kliendiga läbi, aga kliendi sünkroniseerituse kontrolliks sobib öelda ka ntpq -p, tärn rea algul tähendab praktiliselt seda, et klient on ennast ära sünkroniseerinud
# ntpq -p remote refid st t when poll reach delay offset jitter ===================================================================================== *ntp.loomaaed.tartu.ee 194.204.30.8 3 u 9 64 77 0.278 -13.143 19.441
Squid
OpenBSD 4.5 versioonis saab paketiga squid-2.7.STABLE6 pidada transparent proxit. Esmalt paigaldada pakett
# pkg_add squid-2.7.STABLE6 squid-2.7.STABLE6: complete --- squid-2.7.STABLE6 ------------------- NOTES ON OpenBSD POST-INSTALLATION OF SQUID 2.7 The local (OpenBSD) differences are: configuration files are in /etc/squid sample configuration files are in /usr/local/share/examples/squid error message files are in /usr/local/share/squid/errors sample error message files are in /usr/local/share/examples/squid/errors icons are in /usr/local/share/squid/icons sample icons are in /usr/local/share/examples/squid/icons the cache is in /var/squid/cache logs are stored in /var/squid/logs the ugid squid runs as is _squid:_squid Please remember to initialize the cache by running "squid -z" before trying to run Squid for the first time. You can also edit /etc/rc.local so that Squid is started automatically: if [ -x /usr/local/sbin/squid ]; then echo -n ' squid'; /usr/local/sbin/squid fi
Seejärel kasutada nt sellist seadistusfaili, kohendage vastavalt vajadusele, ennekõike acl nimekirju
http_port 192.168.1.254:3128 transparent http_port 192.168.10.254:3128 transparent dns_nameservers localhost hierarchy_stoplist cgi-bin ? acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY acl all src 192.168.1.0/24 192.168.10.0/24 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 acl Safe_ports port 80 acl purge method PURGE acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access allow localhost http_access allow all http_access deny all cache_access_log /var/squid/logs/access.log
TFTP
TFTP serveri kasutamiseks tuleb kasutada inetd superserveri seadistusfailis /etc/inetd.conf nt sellist rida
tftp dgram udp wait root /usr/libexec/tftpd tftpd -s /tftpboot
kusjuures andmeid hoitakse traditsiooniliselt kataloogis /tftpboot, aga tingimata ei pea.
TFTP kliendi kasutamiseks tuleb öelda
$ tftp 192.168.10.210 tftp> get failinimi Received 2000 bytes in 0.0 seconds tftp> quit
TFTP kasutamisel koos tulemüüriga peab arvestama, et TFTP kasutab udp protokolli, kusjuures va esimesel kliendi serveri poole pöördumisel porti 69 kasutatakse suvalisi porte. Nt ühel juhul toimus sellise andmevahetus
# tcpdump -nttti ne3 udp tcpdump: listening on ne3, link-type EN10MB Jan 25 22:39:01.456920 192.168.10.101.56454 > 192.168.10.210.69: 16 RRQ "failinimi" (DF) Jan 25 22:39:01.476531 192.168.10.210.40977 > 192.168.10.101.56454: udp 516 Jan 25 22:39:01.476675 192.168.10.101.56454 > 192.168.10.210.40977: udp 4 (DF) Jan 25 22:39:01.477007 192.168.10.210.40977 > 192.168.10.101.56454: udp 516 Jan 25 22:39:01.477147 192.168.10.101.56454 > 192.168.10.210.40977: udp 4 (DF) Jan 25 22:39:01.477243 192.168.10.210.40977 > 192.168.10.101.56454: udp 516 Jan 25 22:39:01.477352 192.168.10.101.56454 > 192.168.10.210.40977: udp 4 (DF) Jan 25 22:39:01.477434 192.168.10.210.40977 > 192.168.10.101.56454: udp 468 Jan 25 22:39:01.477612 192.168.10.101.36085 > 192.168.10.210.40977: udp 4 (DF) Jan 25 22:39:06.481241 192.168.10.210.40977 > 192.168.10.101.56454: udp 468
Kui TFTP kliendi ja serveri vahel asub OpenBSD tulemüür, sobib kasutada tftp-proxy programmi.
RCS versioonihaldussüsteem
OpenBSD RCS (Revision Control System) tarkvara kuulub OpenBSD nn baastarkvara koosseisu ja võimaldab sarnaselt tuntud CVS või Subversion tarkvarale korraldada tekstide versioonihaldust.
Lokaalseks süsteemi kasutamiseks võiks moodustada sobiva nimega töökataloogi, nt
$ mkdir rcs $ cd rcs
ning sinna moodustada failid, millega asutakse tööle, näiteks (vaikimisi pole küll /etc/pf.conf selliselt kasutajana kopeeritav)
$ cp /etc/pf.conf .
RCS kasutamine algab spetsiaalse RCS kataloogi tekitamisega ja failide versioonihalduse alla lisamisega, 'end of file' sisestamine toimub valides klaviatuurilt Ctrl+D
$ mkdir RCS $ ci pf.conf RCS/pf.conf,v <-- pf.conf enter description, terminated with single '.' or end of file: NOTE: This is NOT the log message! >> paketifiltri seadistusfail >> initial revision: 1.1 done
Tulemusena on kustutatud pf.conf fail kõnealusest kataloogist ning ta esineb RCS kataloogis. Et failiga töötada, tuleb esmalt teha versioonihaldusest selle faili väljavõte
$ co -l pf.conf RCS/pf.conf,v --> pf.conf revision 1.1 (locked) done
Tulemus on selline
$ find . -ls 1225724 4 drwxr-xr-x 3 mart mart 512 Apr 29 20:21 . 1225732 4 drwxr-xr-x 2 mart mart 512 Apr 29 20:21 ./RCS 1225735 20 -r--r--r-- 1 mart mart 9447 Apr 29 20:21 ./RCS/pf.conf,v 1225734 20 -rw-r--r-- 1 mart mart 9233 Apr 29 20:21 ./pf.conf
Versioonihalduse all oleva faili omaduste vaatamiseks sobib kasutada rlog programmi
$ rlog pf.conf RCS file: RCS/pf.conf,v Working file: pf.conf head: 1.1 branch: locks: strict mart: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description: paketifiltri seadistusfail ---------------------------- revision 1.1 locked by: mart; date: 2009/04/29 17:20:45; author: mart; state: Exp; Initial revision =============================================================================
NFS
NFS serveri tööd juhib seadistusfail /etc/exports, mille sisu võiks olla nt selline
# cat /etc/exports /var/nfs/root -maproot=root -alldirs 10.0.6.170 10.0.6.237
Käivitamiseks sobib öelda
# /usr/sbin/portmap # echo -n >/var/db/mountdtab # /sbin/mountd # /sbin/nfsd -tun 4
Selleks, et NFS server käivituks arvuti alglaadimise käigus tuleb kasutada /etc/rc.conf.local failis direktiive
portmap=YES nfs_server=YES
Python
OpenBSD 4.5 i386 platvormil sisaldab kolme Pyhtoni keele versiooni
# pkg_add python Ambiguous: python could be python-2.4.6 python-2.5.4 python-2.6.1
Tundub, et 2.5 on optimaalne selles mõttes, et ta on suhteliselt uus ja samas on muid pythoni teeke, mis sellega sobivad
# pkg_add python-2.5.4 bzip2-1.0.5: complete sqlite3-3.6.10: complete python-2.5.4: complete --- python-2.5.4 ------------------- If you want to use this package as your default system python, as root create symbolic links like so (overwriting any previous default): ln -sf /usr/local/bin/python2.5 /usr/local/bin/python ln -sf /usr/local/bin/python2.5-config /usr/local/bin/python-config ln -sf /usr/local/bin/pydoc2.5 /usr/local/bin/pydoc
OpenLDAP kliendi kasutamine
Kliendi tarkvara paigaldamiseks tuleb öelda
# pkg_add openldap-client
LDAP kliendi seadistusfailid asuvad kataloogis /etc/openldap, seadistamine ja kasutamine toimub sarnaselt nagu nt Debiani http://kuutorvaja.eenet.ee/wiki/OpenLDAP_kasutamine_Debianiga.