{{Předmět|Administrace Unixu|Leo Galamboš|SWI106}} Category:Informatika

Odkazy

*Stránka předmětu *Ovládání editoru VI

*Príručka systémového administrátora Přihlašování do administrace

*Potemkin *Bogatyr

*Gromoboj *Navarin

Přednášky

  • jednou týdně

Cvičení LS 2007/2008

Budem sa snazit v priebehu semestra poskytovat info o cvikach + pripadne postupy, ktore nemusia byt vzdy spravne.

1. cviko

Instalacia OBSD

V tomto bode je asi najlepsie naraz nainstalovat jeden zo setov servrov t.j. kazdy server v danom sete. <BR> Sety:

  • 23, 23x22, 22, 22x51, 51

  • 50, 50x20, 20, 20x21, 21

  • 56, 56x26, 26, 26x27, 27

  • 25, 25x24, 24, 24x55, 55

Pre rychlu instalaciu nedoporucujem konfigurovat siet hned pri instalacii ale za po instalacii v /etc/hostname.rozhranie (/etc/hostname.pcn0)

Pokial neexistuje treba vytvorit subor s timto nazvom.

  • pre konfiguraciu ako DHCP klient

dhcp NONE NONE NONE

  • Alebo ako staticka IP

# x.x.x.x - IP stroja # y.y.y.y - maska

# z.z.z.z - broadcast inet x.x.x.x y.y.y.y z.z.z.z

Instalacia pomerne jednoducha naviac na strankach predmetu je podrobny navod. (1. prednaska)

Just do me a favor and keep writing such trenchant analyess, OK?

2. cviko

  • Hovorilo sa o starte BSD a o patricnych rc.* filesoch.

  • Pomerne cele cviko sa nieslo v duchu revizii ci/co, rci/rco, RCS, CVS.

  • Ulohou bolo napisat verziovaci skript vid cvika z minuleho roku.

  • Za zmienku stoji zmena prav pre konkretny subor ulozeny pod verzovanim. Prava sa nemenia priamo na konkretnom subore (xxx) ale v adresari RCS na joho "mirrore" (xxx,v).

  • dalsou ulohou bolo implementovat "linuxovske" init.d v /usr/local/etc/init.d

    • vytvorit skript pre start, stop, restart a status sshd demona

    • umiestnit do /usr/local/etc/init.d

    • vytvorit /usr/local/etc/init.d/rc.3 a umiestnit sem symlinky K00sshd a S00sshd na sshd skript

    • implementovat FOR pre spustanie (S*) a zastavovanie (K*) demonov v rc.local

Extremely hpelufl article, please write more.

4. cviko

5. cviko

6. cviko

(streda, u tej slecny... :-))

Siet: stroj{ZZZ} 51) ---- 51x22 ---- (22 stroj{ROUTER}, stroj{MAIL}

Nastavenie:

  1. vypnut NAT => ip forwarding

  2. MAIL - sekundarny DNS

  3. ROUTER - proxy DNS

  4. vytvorit novu zonu pre stroje z 51 a pridat ich dio zaznamov DNS serverov

  5. ZZZ - cache DNS

MAIL,ROUTER,ZZZ - sami sebe ako DNS (resolv.conf)

Potom:

vypneme primarny DNS

  • sekundarny ... v

  • proxy ... x

  • cache v ... x (udrzovanie cache ... 3 min)

7. cviko

  1. nainstalovat postfix

  2. zapnut logovanie ( /etc/rc.conf.local pridat >>> syslogd_flags="-a /var/spool/postfix/dev/log" <<<

    • restart syslogd (HUP)

  3. konfiguracia postfixu (/etc/postfix/main.cf) - nastavit (je tam napoveda ;-)):

    • myhostname

    • mydomain

    • myorigin

    • mydestination

  4. logovanie mailu

    • /etc/syslogd.conf

      • + mail.err /dev/console

      • + mail.debug /var/log/maillog

    • ... restart syslogd

#sendmail nahradime postfixom

  • mkdir /etc/aliases; newaliases

  • /etc/rc.conf.local += >>> sendmail_flags="-bd" <<<

  • z cronu root-a odstranime riadok (pod) "sendmail clientmqueue runner"

    • crontab -u root -e

  • /usr/local/sbin/postfix-enable

  • /usr/local/sbin/sendmail -bd

  1. postfix check; postfix start (mozno netreba)

  2. upravit DNS zaznamy

    • pridat zaznam >>> IN MX 10 stroj <<< (resp. "MX 10 stroj" ?)

    • restartovat named

  3. testy....

    • telnet localhost 25 :-)

    • mail root@<nazov_stroja>

    • mail root@<nazov_domeny> ....dorucenie podla MX zaznamu =)

8. cviko

NFS+YP/NIS

...filtrovanie posty bude neskor :-)

NFS

  • /etc/exports

**Server:

  1. Zapneme:

    • portmap

    • nfs_server (.../etc/rc.conf.local portmap=YES + nfs_server=YES)

  2. mkdir /test

  3. /etc/exports: /test -alldirs -ro -network=192.168.26 -mask=255.255.255.0

  4. nakoniec:

    • /usr/sbin/portmap

    • echo -n >/var/db/mounttab

    • /sbin/mountd

    • /sbin/nfsd -tun 4

**Klient:

  1. mount -t nfs stroj:/test /mnt/dir

    • alebo: /etc/fstab stroj:/test /mnt nfs ro 0 0

  • rpcinfo -p stroj

  • restart serveru: kill -HUP .....

YP/NIS

  1. NFS server -> YP/NIS server (master)

  2. +ostatni klienti

  3. klienti si nacitaju mapy zo servera

AMD...

9. cviko

  • nejake ukoly :o)

    1. zakazat ssh login pre roota (nie je ale zla vec mat nejakeho usera v groupe 'wheel' ;o))

    2. rozchodit ssh pripojenie bez hesla (ssh-key...)

    3. ftp server (=zalozit usera 'ftp', nazdielat kopiu suboru /etc/passwd)

    4. zalohovanie /var/log/messages (cron: 1/hod - vyrobit .tz a poslat na iny stroj)

  • CARP - zalohovanie, no more info :-)

Gosh, I wish I would have had that information elairer!

Zapoctova uloha

*az to bude hotove, poslat maila s cislom uctu a heslami na roota na stroje...

zadanie: 4 stroje ( [51] dns, mail ) -- [51x22] server -- ( [22] ext

  • dns: primarny DNS pre domenu 51 (lubovolny nazov domeny) + YP/NIS klient

  • server: YP/NIS server

  • mail: mail server pre domenu 51 + YP/NIS klient

  • ext: dostupny z 51

Cvičení

Pozor: některé postupy uvedené dále jsou také jen pro OpenBSD, takže by měly být přesunuty na stránku OpenBSD.

1. cvičení

*přihlášení na VMware a vytvoření strojů (rozhraní na adrese https://server.ms.mff.cuni.cz/vm/gsxmgr)

Je potreba nainštalovať si VPC (Virtual PC). Galamboš odporúča OpenBSD, ja som si zvolil Gentoo. *instalace OpenBSD (celkem bez problémů až na chybu broken mbr - při vytváření oblasti je nutné zapsat MBR kód (příkaz u v fdisku)

2. cvičení

  • zprovoznění routování a BINDu

Tipy a triky

  • VMware klient v linux labu potřebuje mít nastavenou proměnnou DISPLAY, proto spusťte klienta takto:

DISPLAY=localhost:0 vmware-server-console

  • SSH tunel do ms labu:

    • na virtuálním stroji pusťte:

ssh -R 3000:localhost:22 login@u1-1.ms.mff.cuni.cz cat -

  • na zadaném počítači (u1-1.…) se připojíte ke stroji na VMwaru pomocí:

ssh -p 3000 root@localhost

  • když se Vám konzola bude zdát málo barevná (ls, vim, ...), tak si nastavte stejný terminál i na u1-1.… (např. TERM=wsvt25)

  • Barevný ls (nutno nainstalovat colorls)

colorls -GCF

  • Nastaveni bash jako defaultni shell pro uzivatele root (bash je ale nutne nejdriv nainstalovat)

usermod -s `which bash` root

  • Pokud chcete, aby vim zobrazoval ve status baru aktuální mód (např.: --INSERT-- ) použijte příkaz:

set showcmd

  • Dotazování OBSD3.9 na typ terminálu lze zarazit zakomentováním následujících řádků v souboru /root/.profile:

if [ -x /usr/bin/tset ]; then eval `/usr/bin/tset -sQ \?$TERM`

fi

Skriptik na RCS

  • "/usr/local/bin/bash" pripadne zmente na `which bash`

  • ked si ho pomenujete edit, tak sa pouziva nasledovne

    • edit subor.txt (checkoutne RCS, varuje pred prepisanim, po edite commitne a lockne subor)

    • edit (po zavreti editoru si vypyta meno suboru a potom ho commitne)

#! /usr/local/bin/bash

# create missing RCS directory

if [ ! -d "RCS" ]; then mkdir "RCS"

fi

if [ $# -gt 0 ]; then # if exists

if [ -f "$1" ]; then # check out last version

if ! co -l "$1"; then # take under version controll

ci -l "-t${1}" "$1" fi

fi # open in editor

$EDITOR "$1" # check in (commit) after edit

ci -u "$1" else

# open editor $EDITOR

# read the filename read -p "Filename : " filename

# if not empty commit if [ -n "$filename" ]; then

ci -u "-t${filename}" "$filename" fi

fi

Postfix

  • Instalace

mount /dev/cd0a /mnt cd /mnt/3.9/packages/i386

pkg_add postfix-2.2.8p1

  • You still need to edit myorigin/mydestination/mynetworks parameter settings in /etc/postfix/main.cf.

  • BTW: Check your /etc/aliases file and be sure to set up aliases that send mail for root and postmaster to a real person, then run /usr/local/sbin/newaliases.

cp /etc/mail/aliases /etc/aliases alebo

cp /etc/postfix/aliases /etc/aliases

newaliases

  • Urobit

echo 'syslogd_flags="-a /var/spool/postfix/dev/log"' >> /etc/rc.conf.local a restartovat syslogd.

  • Prepisat sendmail postfixom

/usr/local/sbin/postfix-enable

  • Vyhodit sendmailove vyprazdnovanie fronty

crontab -e zakomentovat alebo zmazat riadky

# sendmail clientmqueue runner */30 * * * * /usr/sbin/sendmail -L sm-msp-queue -Ac -q

Zadani ukolu

  1. smazat (DISCARD) zpravy, ktere obsahuji .exe

  2. odmitat (REJECT) emaily od cronu

  3. odmitat sifrovane emaily

  4. odmitnout email, kdyz neobsahuje subject

No complaints on this end, smilpy a good piece.

Sledovani site

pri instalovani mrtg je potreba mit par X-kovych veci, staci rozbalit do / baliky xbase a xfont z CD.

Zkoušky

30.1.2007

Galambos na zacatku nakresil maly schematko: 1

| * ----2

| 3

| *

| 4

Takze * jsou huby, cislicka kompy, uloha byla nasledujici:

  • na 1 zprovoznit master DNS nejake domeny

  • na 2 oddelegovat nejakou subdomenu

  • na 3 zprovoznit sekundar k oddelegovane subdomene

  • na 4 yp/nfs server s exportem map uzivatelu, bez uzivatele root

  • 1,2,3 meli byt klienti yp, pripadne si neco mountit pres to nfs

  • "oplechovat" komp 4 co nejlip to jde

Bylo na to neco malo pres dve hodiny.

Hodi se mit ty kompy uz nejak pripravene a +/- rozchozene ( routovani , dns, ... ) a nestavet to na "zelene louce". Na druhou stranu pokud mate pripravenou sit k zapoctu tak je dobre to odevzdat pred zkouskou ( a ziskat zapocet ) abyste ji potom v prubehu zkousky mohli "narychlo" a bez obav predelat.

5. 6. 2007

Takže zadanie bolo asi takéto:

Image:UnixAdminExam.png

Napísať skript, ktorý na servri (S) založí uživateľa, tento uživateľ sa bude môcť na klientovi CN prihlásiť a poslať mail inému uživateľovi, vytvorenom pomocou toho istého scriptu.

24. 1. 2008