Linux PPP HOWTO Robert Hart <hartr@interweft.com.au>, prevedel Borut Mrak <borutm@bigfoot.com> v3.0, 31. marec 1997, prevod 7. avgust 1998 Ta dokument opisuje, kako se z va¹im osebnim raèunalnikom, na katerem teèe Linux, povezati s PPP stre¾nikom, kako uporabiti PPP za povezavo dveh lokalnih omre¾ij in podaja eno metodo uporabe va¹ega raèunalnika kot PPP stre¾nik. Poleg tega dokument ponuja tudi pomoè pri usposab ljanju nedelujoèih PPP povezav. ______________________________________________________________________ Kazalo 1. Predstavitev 1.1 Odjemalci in stre¾niki 1.2 Razlike med distribucijami Linuxa 1.3 Distribucijam specifièna orodja za konfiguracijo PPP-ja 2. ©tevilke za IP 3. Cilji tega dokumenta 3.1 Postavljanje PPP odjemalca 3.2 Povezovanje dveh omre¾ij ali omre¾ja in Interneta s PPP-jem 3.3 Postavljanje PPP stre¾nika 3.4 Uporaba PPP-ja preko neposredne kabelske (,,null modem``) povezave 3.5 Ta dokument NE pokriva... 4. Pokrite verzije programja 5. Ostali uporabni/pomembni viri 5.1 Uporabni po¹tni seznami o Linuxu 6. Pregled kaj mora biti storjeno za delovanje PPP-ja kot odjemalca 6.1 Pridobivanje/name¹èanje programja 6.2 Vkljuèevanje podpore za PPP v jedro 6.3 Pridobivanje podatkov od va¹ega PIS-a 6.4 Konfiguracija modema in zaporednih vrat 6.5 Konfiguriranje DNS-a 6.6 PPP in administratorske pravice 6.7 Preverjanje PPP datotek va¹e distribucije in prilagajanje PPP opcij 6.8 Èe va¹ PPP stre¾nik uporablja PAP (Password Authentication Protocol) 6.9 Roèno povezovanje s PPP stre¾nikom 6.10 Avtomatizacija PPP povezave 6.11 Prekinitev povezave 6.12 Èe imate te¾ave 6.13 Ko se povezava vzpostavi 6.14 Te¾ave s standardnimi IP servisi na PPP povezavi z dinamièno dodeljenimi IP ¹tevilkami 7. Konfiguriranje jedra va¹ega Linuxa 7.1 Namestitev izvorne kode jedra 7.2 Poznavanje va¹e strojne opreme 7.3 Prevajanje jedra - jedro Linux 1.2.13 7.4 Prevajanje jedra - jedra Linux 1.3.x in 2.0.x 7.5 Opomba o PPP-2.2 in /proc/net/dev 7.6 Na kaj moramo paziti pri konfiguraciji PPP v jedru 8. Pridobivanje podatkov o PPP stre¾niku 9. Konfiguriranje modema in serijskih vrat 9.1 Opomba o serijskih vratih in hitrostih 9.2 Imena serijskih vrat 9.3 Nastavljanje modema 9.4 Opomba o nadzoru pretoka 9.5 Preizku¹anje modema za klicanje 10. Vzpostavljanje razre¹evanja imen v naslove (DNS) 10.1 Datoteka /etc/resolv.conf 10.2 Datoteka /etc/host.conf 11. Uporaba PPP-ja in root pravice 12. Priprava datotek za PPP povezavo 12.1 Datoteka options.tpl 12.2 Katere mo¾nosti naj uporabim? (Brez PAP/CHAP) 13. Èe va¹ PPP stre¾nik uporablja PAP (Password Authentication Protocol) 13.1 Uporaba MSCHAP-a 13.2 PAP/CHAP secrets datoteka 13.3 Datoteka PAP secrets 13.4 Datoteka CHAP secrets 13.5 Veè povezav s PAP avtentikacijo 14. Roèna vzpostavitev PPP povezave 15. Avtomatizacija povezav - priprava povezovalnih skript 15.1 Skripte za uporabni¹ko ime/geslo avtentikacijo 15.2 skripta ppp-on 15.3 Urejanje priskrbljenih PPP zagonskih skript 15.3.1 Skripta ppp-on 15.3.2 ppp-on-dialer skripta 15.4 Kaj Chat skripta pomeni... 15.4.1 Zagon PPP-ja na stre¾niku 15.5 Chat skripta za PAP/CHAP povezave 15.6 Pppd opciji debug in file option_file 16. Preizkus va¹e povezovalne skripte 17. Prekinitev PPP povezave 18. Odpravljanje te¾av 18.1 V jedro sem vkljuèil PPP podporo vendar... 18.1.1 Ali ste zagnali raèunalnik s pravim jedrom? 18.1.2 Ali ste vkljuèili ppp podporo kot modul? 18.1.3 Ali uporabljate pravo verzijo PPP-ja za va¹e jedro? 18.1.4 Ali poganjate pppd kot root? 18.2 Moj modem se pove¾e, toda ppp se nikoli ne za¾ene 18.3 Sistemski dnevnik pravi: ,,serial line is not 8 bit clean...`` 18.3.1 Na stre¾nik se ne prijavljate pravilno 18.3.2 Na stre¾niku ne zaganjate PPP-ja 18.3.3 Oddaljeni PPP proces se poèasi za¾ene 18.4 Privzeta pot ni nastavljena 18.5 Ostale te¾ave 19. Kam po pomoè, ko se popolnoma zatakne 20. Pogoste te¾ave, ko povezava deluje 20.1 Ne vidim dlje kot do PPP stre¾nika 20.2 Lahko po¹iljam elektronsko po¹to, toda ne morem je sprejemati 20.3 Zakaj ljudje ne morejo uporabljati finger, WWW, gopher, talk ipd. na mojem raèunalniku? 21. Uporaba storitev Interneta z dinamiènimi IP ¹tevilkami 21.1 Nastavljanje elektronske po¹te 21.2 Postavljanje lokalnega imenskega stre¾nika 22. Povezava dveh omre¾ij z uporabo PPP-ja 22.1 Nastavljanje IP ¹tevilk 22.2 Nastavitev usmerjanja 22.3 Omre¾na varnost 23. Ko se povezava vzpostavi - /etc/ppp/ip-up skripta 23.1 Posebno usmerjanje 23.2 Ravnanje s po¹tnimi vrstami 23.3 Vzorèna /etc/ppp/ip-up skripta 23.4 Ravnanje z elektronsko po¹to 24. Uporaba /etc/ppp/ip-down 25. Usmerjevalne zadeve na lokalnem omre¾ju 25.1 Opomba o varnosti 26. Postavitev PPP stre¾nika 26.1 Prevajanje jedra 26.2 Pregled stre¾ni¹kega sistema 26.3 Zbiranje programja 26.4 postavitev standardnega (lupinskega) klicnega dostopa 26.5 Priprava PPP options datotek 26.6 nastavitev pppd-ja, da ga lahko uporabniki (uspe¹no) za¾enejo 26.7 Nastavitev drugega imena za pppd 27. Uporaba PPP-ja preko null modem (direktne serijske) povezave 28. Administrativne zadeve 28.1 Licenca 28.2 Raz¹irjanje 28.3 Obvestila ______________________________________________________________________ 1. Predstavitev PPP (Point to Point Protocol - protokol od toèke do toèke) je protokol za ustvarjanje in poganjanje IP (Internet Protocol) in drugih omre¾nih protokolov na serijskih povezavah - naj bo to direktna serijska povezava (z uporabo null-modem kabla), zveza vzpostavljena preko telneta ali povezava z modemi in telefonskimi linijami (in seveda digitalnimi linijami kot je ISDN). Z uporabo PPP-ja lahko pove¾ete va¹ Linux PC s PPP stre¾nikom in uporabljate vire na omre¾ju na katerega je prikljuèen stre¾nik skoraj kot da bi bili direktno povezani s tem omre¾jem. Svoj Linux PC lahko uporabite tudi kot PPP stre¾nik, s katerim lahko zvezo vzpostavijo drugi raèunalniki in uporabljajo vire na va¹em raèunalniku in/ali mre¾i. Ker je PPP istole¾en sistem (tipa enak-z-enakim), lahko uporabite dva raèunalnika z Linuxom za povezavo dveh omre¾ij ali lokalnega omre¾ja z Internetom. Tako se ustvari WAN (Wide Area Network - omre¾je ¹irokega dosega). Najveèja razlika med PPP in povezavo Ethernet je seveda v hitrosti. Standardni ethernet deluje na 10 Mbps (mega - milijonov bitov na sekundo) maksimalnega teoretiènega pretoka, medtem ko analogni modemi dose¾ejo hitrosti do 56 kbps (kilo - tisoè bitov na sekundo). Glede na tip povezave PPP lahko obstajajo tudi nekatere omejitve v uporabi nekaterih aplikacij in servisov. 1.1. Odjemalci in stre¾niki PPP je strogo istole¾en protokol (tipa enak-z-enakim). Tehnièno gledano ni nobene razlike med raèunalnikom, ki vzpostavlja zvezo in raèunalnikom, s katerim jo vzpostavlja. Zavoljo jasnosti pa je dobro razmi¹ljati o stre¾nikih in odjemalcih. Kadar vi vzpostavljate povezavo PPP (klièete), ste odjemalec. Raèunalnik s katerim se povezujete je stre¾nik. Kadar pripravljate raèunalnik z Linuxom za sprejem povezav PPP, pripravljate stre¾nik za PPP. Vsak raèunalnik z Linuxom je lahko tako PPP stre¾nik kot odjemalec - celo istoèasno, èe imate veè serijskih vrat (in po potrebi modemov). Ko je povezava sklenjena, ni nobene razlike med odjemalcem in stre¾nikom, vsaj kar se PPP-ja tièe. Ta dokument govori o raèunalniku, ki zvezo vzpostavlja, kot ODJEMALCU, medtem ko je raèunalnik, ki odgovori na klic, preveri identiteto klicatelja (z uporabo uporabni¹kih imen, gesel in drugih mehanizmov) STRE®NIK. Uporaba PPP-ja za povezavo enega ali veè raèunalnikov z Internetom verjetno zanima najveè ljudi - to je uporaba njihovega raèunalnika z Linuxom kot odjemalca. Postopek opisan v tem dokumentu vam bo pomagal vzpostaviti in avtomatizirati vzpostavljanje povezave z Internetom. Ta dokument vas bo tudi vodil pri postavljanju va¹ega raèunalnika z Linuxom kot stre¾nika za PPP in pri povezavi dveh lokalnih omre¾ij (s popolnim usmerjanjem) z uporabo PPP-ja (tako ustvarimo WAN - omre¾je ¹irokega dosega). 1.2. Razlike med distribucijami Linuxa Med mnogimi distribucijami Linuxa ima vsaka svoje kaprice in naèine za opravljanje stvari. Natanèneje, obstajata dva naèina, kako se raèunalnik z Linuxom (ali Unixom) za¾ene, konfigurira itd. To sta inicializacija sistema po BSD in inicializacija sistema po System V. Èe se poglobite v nekatere Unixovske novièarske skupine, boste obèasno naleteli na ,,svete vojne`` med zagovorniki teh dveh sistemov. Èe vas tovrstne stvari zabavajo, u¾ivajte pri kurjenju omre¾nega pretoka in se pridru¾ite. Verjetno najpogostej¹e distribucije so: * Slackware ki uporablja BSD-jevsko inicializacijo sistema * Red Hat (in njegov biv¹i dru¾abnik Caldera) ki uporabljata inicializacijo SysV (èeprav v rahlo spremenjeni obliki) * Debian ki uporablja inicializacijo sistema po SysV BSD stil inicializacije obièajno hrani svoje inicializacijske datoteke v imeniku /etc/... in te so: ______________________________________________________________________ /etc/rc /etc/rc.local /etc/rc.serial (in mogoèe ¹e druge datoteke) ______________________________________________________________________ Od nedavnega nekatere BSD inicializacijske sheme uporabljajo imenik /etc/rc.d/... za shranjevanje zagonskih datotek raje kot da bi vse postavili v /etc. System V inicializacija hrani svoje inicializacijske datoteke v imenikih pod /etc/... ali /etc/rc.d/... in v ¹tevilnih podimenikih: ______________________________________________________________________ drwxr-xr-x 2 root root 1024 Jul 6 15:12 init.d -rwxr-xr-x 1 root root 1776 Feb 9 05:01 rc -rwxr-xr-x 1 root root 820 Jan 2 1996 rc.local -rwxr-xr-x 1 root root 2567 Jul 5 20:30 rc.sysinit drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc0.d drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc1.d drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc2.d drwxr-xr-x 2 root root 1024 Jul 18 18:07 rc3.d drwxr-xr-x 2 root root 1024 May 27 1995 rc4.d drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc5.d drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc6.d ______________________________________________________________________ Èe posku¹ate odkriti kje so dejansko konfigurirani va¹ vmesnik Ethernet in pripadajoèe omre¾ne poti, morate pregledati te datoteke in najti ukaze, ki to naredijo. 1.3. Distribucijam specifièna orodja za konfiguracijo PPP-ja Na nekaterih distribucijah (na primer Red Hat in Caldera) obstajajo orodja v X window za konfiguracijo PPP-ja. Ta HOWTO ne pokriva teh orodij, specifiènih distribucijam. Èe imate te¾ave z njimi, stopite v stik z distributerji! Za uporabnike Red Hat 4.x je na voljo Red Hat PPP-TIP <http://www.interweft.com.au> v obmoèju ,,Linux resources`` in Red Hat Software <http://www.redhat.com> v ,,Support area``. 2. ©tevilke za IP Vsaka naprava, ki se pove¾e z Internetom, mora imeti svojo lastno ¹tevilko za IP. Le-te dodeljuje poobla¹èena organizacija za vsako dr¾avo. Èe povezujete lokalno omre¾je (LAN) z Internetom, MORATE uporabiti IP ¹tevilko iz va¹ega dodeljenega obmoèja naslovnega prostora za vse raèunalnike in naprave na va¹em omre¾ju. IP ¹tevilk NE SMETE privleèi kar za lase in jih uporabiti pri povezavi z drugim omre¾jem (kaj ¹ele z Internetom). V najslab¹em primeru bo to povzroèilo popolno opusto¹enje, saj se bojo va¹e ,,ukradene`` IP ¹tevilke zaèele vme¹avati v komunikacijo drugega raèunalnika, ki ¾e uporablja IP ¹tevilko, ki ste si jo izmislili. Zapomnite si, da so ¹tevilke za IP, uporabljene v tem dokumentu (z redkimi izjemami), iz serije ,,nepovezanih omre¾nih ¹tevilk``, ki so rezervirane za uporabo na omre¾jih ki niso (nikoli) povezana z Internetom. Obstajajo IP ¹tevilke, ki so namenjene lokalnim omre¾jem, ki se ne povezujejo z Internetom. Nizi teh IP ¹tevilk so: * One A Class Network Address 10.0.0.0 (netmask 255.0.0.0) * 16 B Class Network Addresses 172.16.0.0 - 172.31.0.0 (netmask 255.255.0.0) * 256 C Class Network Addresses 192.168.0.0 - 192.168.255.0 (netmask 255.255.255.0) Èe imate lokalno omre¾je, za katerega vam poobla¹èena organizacija v va¹i de¾eli ni dodelila IP ¹tevilk, za va¹e raèunalnike uporabite ¹tevilke iz zgornjih nizov. Te ¹tevilke ne bi smele biti nikoli uporabljene na Internetu. Kljub temu jih lahko uporabljate za lokalni Ethetnet na raèunalniku, ki je povezan z Internetom. To je mo¾no zato, ker se IP ¹tevilke dodelijo omre¾nemu vmesniku, ne raèunalniku. Medtem ko va¹ Ethernet vmesnik uporablja npr. 10.0.0.1, se lahko pove¾ete z Internetom z uporabo PPP-ja in va¹emu PPP vmesniku bo stre¾nik dodelil drugo (veljavno) IP ¹tevilko. Va¹ PC bo povezan z Internetom, ostale naprave na mre¾i pa ne. Vseeno pa lahko z uporabo Linuxa, njegove sposobnosti IP Masquerade (znane tudi kot NAT - Network Address Translation) in programja ipfwadm pove¾ete va¹e omre¾je z Internetom (z omejitvijo uporabe nekaterih storitev), èeprav nimate veljavnih IP ¹tevilk za raèunalnike na va¹i mre¾i. Za veè informacij o tem si oglejte Linux IP Masquerade mini HOWTO <http://sunsite.unc.edu/mdw/HOWTO/mini/IP-Masquerade>. Za veèino uporabnikov, ki povezujejo en raèunalnik z Internetom preko ponudnika dostopa s PPP-jem, pridobivanje IP ¹tevilke ne bo potrebno. Èe ¾elite povezati manj¹e omre¾je z Internetom, vam bo mnogo ponudnikov Internet storitev oskrbelo namenski ,,subnet`` (doloèen niz IP ¹tevilk) iz njihovega obstojeèega omre¾nega obsega. Alternativa: IP Masquerading Za uporabnike, ki povezujejo en raèunalnik z Internetom, veèina PIS-ov (ponudnikov internetnih storitev) uporablja dinamièno dodeljevanje IP ¹tevilk. Kot del povezovanja vam bo PPP stre¾nik posredoval IP ¹tevilko, ki bo dodeljena PPP vmesniku med trenutno povezavo. Ta ¹tevilka ne bo ob vsaki povezavi ista. Z dinamiènimi IP ¹tevilkami nimate enake ¹tevilke vsakiè, ko se pove¾ete. To pomeni zaplete za stre¾ni¹ke programe, ki jih poganjate na va¹em raèunalniku z Linuxom. To so naprimer sendmail, ftpd, httpd itd. Te storitve so zasnovane na predpostavki, da je raèunalnik, ki ponuja storitev, ves èas dosegljiv na isti IP ¹tevilki (ali vsaj na istem polnem imenu domene - fully qualified domain name - in da je prevedba imena z DNS v ¹tevilko za IP). Omejitve storitev zaradi dinamiènega dodeljevanja IP ¹tevilk (in naèini za odpravo te¾av, kjer je to mo¾no) so opisane pozneje v tem dokumentu. 3. Cilji tega dokumenta 3.1. Postavljanje PPP odjemalca Ta dokument ponuja vodstvo ljudem, ki ¾elijo uporabljati Linux in PPP za klicanje PPP stre¾nika in vzpostavitev IP povezave s PPP-jem. Domneva, da je PPP ¾e preveden in name¹èen na va¹em raèunalniku z Linuxom (toda be¾no pokriva tudi konfiguracijo/prevajanje va¹ega jedra za vkljuèitev PPP podpore). Medtem ko je DIP (standarden naèin za vzpostavljanje SLIP povezave) lahko uporabljen za vzpostavitev PPP povezave, so DIP skripte zelo kompleksne. Zaradi tega ta dokument NE pokriva uporabe DIP-a za vzpostavljanje PPP povezave. Namesto tega ta dokument opisuje standardno Linux programje (chat/pppd). 3.2. Povezovanje dveh omre¾ij ali omre¾ja in Interneta s PPP-jem Ta dokument ponuja (osnovne) informacije o povezovanju dveh lokalnih omre¾ij ali lokalnega omre¾ja in Interneta z uporabo PPP-ja. 3.3. Postavljanje PPP stre¾nika Ta dokument ponuja vodstvo pri konfiguraciji va¹ega raèunalnika z Linuxom kot PPP stre¾nika (da lahko drugi ljudje klièejo va¹ Linux PC in vzpostavijo PPP povezavo). Zapomniti si morate, da je (skoraj) ne¹teto mo¾nosti postavitve Linuxa kot stre¾nika za PPP. Ta dokument ponuja eno izmed metod, ki jo uporablja avtor za veè majhnih PPP stre¾nikov (vsak s po 16 modemi). Ta metoda deluje dobro. Vseeno pa ni nujno najbolj¹a. 3.4. Uporaba PPP-ja preko neposredne kabelske (,,null modem``) povezave Ta dokument ponuja kratek pregled uporabe PPP-ja za povezavo dveh raèunalnikov z Linuxom preko ,,null modem`` kabla. Na ta naèin je mogoèe Linux povezati tudi z drugimi operacijskimi sistemi. Za kaj takega boste morali pregledati navodila sistema, ki vas zanima. 3.5. Ta dokument NE pokriva... * Prevajanja PPP daemon programja Poglejte dokumentacijo, ki je prilo¾ena verziji pppd-ja, ki ga uporabljate. * Povezovanja in konfiguriranja modema z Linux-om (natanèno) Oglejte si Serial-HOWTO, in Modem Setup Information <http://www.in.net/info/modems/index.html> za informacije, ki vam lahko pomagajo konfigurirati va¹ modem. * Uporabe DIP-a za vzpostavljanje PPP povezave Raje uporabite chat. * Uporabe socks-ov ali IP Masquerade Ta dva paketa ¾e pokrivajo drugi odlièni dokumenti. * Uporabe diald-ja za avtomatsko povezovanje Za to si oglejte diald dokumentacijo. * Uporabe EQL-ja za zdru¾itev dveh modemov v eno PPP povezavo. * Distribucijam specifiènih metod PPP povezovanja (kot npr. Red Hat 4.x network configuration tool). Glejte dokumetnacijo distribucije za uporabljene metode. * nara¹èajoèega ¹tevila orodij za avtomatizacijo postavljanja PPP-ja Glejte primerno dokumentacijo. 4. Pokrite verzije programja Ta HOWTO domneva, da uporabljate Linux z jedrom 1.2.x in programjem PPP 2.1.2 ali Linux 1.3.x/2.0.x in PPP 2.2. Ob èasu pisanja je bila zadnja uradna verzija PPP za Linux ppp-2.2f. Nova verzija (ppp-2.3) je ¹e beta (o. p.: v juliju 1998 je ¾e na voljo ppp-2.3.5). PPP 2.2.0 je mo¾no uporabljati z jedrom 1.2.13. Za to potrebujete popravke jedra. Priporoèljivo je, da uporabniki jedra 1.2.13 nadgradijo PPP na ppp-2.2, saj ta vsebuje veliko popravkov in izbolj¹av. Vedeti morate tudi, da ne morete uporabljati programja PPP 2.1.2 z jedri verzij 2.0.x. Zapomnite si, da ta dokument NE pokriva problemov nastalih z uporabo nalagalnih modulov v jedrih 2.0.x. Oglejte si kerneld mini-HOWTO in kernel/module 2.0.x dokumentacijo (v izvorni kodi Linuxa 2.0.x so v imenikih /usr/src/linux/Documentation/...). Ta dokument je namenjen za pomoè novim uporabnikom. Moèno priporoèljivo je, da uporabite verzijo Linuxovega jedra in primerno verzijo PPP-ja, ki sta skupaj stabilni. 5. Ostali uporabni/pomembni viri Uporabnikom svetujem, da preberejo : * dokumentacijo PPP paketa; * pppd in chat man strani; (uporabite man chat in man pppd za ogled) * Linux Network Administration Guide (NAG); glejte The Network Administrators' Guide <http://sunsite.unc.edu/mdw/LDP-books/nag-1.0/nag.html> * Net-2/3 HOWTO; glejte Linux NET-2/3-HOWTO <http://sunsite.unc.edu/mdw/HOWTO/NET-2-HOWTO.html> * Dokumentacijo Linux-ovega jedra, ki je v /usr/src/linux/Documentation kadar namestite Linux-ovo izvorno kodo; * Spletno stran o nastavitvi modemov - glejte Modem Setup Information <http://www.in.net/info/modems/index.html>. * Odliène knjige o Unixu/Linuxu, ki jih izdaja zalo¾ba O'Reilly and Associates. Glejte O'Reilly and Associates On-Line Catalogue < http://www.ora.com/>. Èe nimate izku¹enj z Unixom/Linuxom, ne hodite ampak tecite do va¹e najbli¾je knjigarne z raèunalni¹ko literaturo in jih nemudoma nekaj kupite! * PPP-FAQ, ki ga vzdr¾uje Al Longyear, dostopen na Linux PPP-FAQ <ftp://sunsite.unc.edu/pub/Linux/docs/faqs>. Ta vsebuje veliko koristnih informacij v obliki vpra¹anje/odgovor, ki je zelo uporaben kadar ugotavljate zakaj PPP ne deluje (pravilno). * Nara¹èajoèe ¹tevilo knjig o Linuxu raznih avtorjev in zalo¾b; Prosim vas, da preverite kvaliteto teh knjig. Linux in distribucije se hitro razvijajo, medtem ko so popravki knjig (navadno) dosti poèasnej¹i. Nakup odliène knjige (in takih je dosti), ki je zastarela, bo novim uporabnikom povzroèil veliko zmede in razoèaranja. Najbolj¹a izhodi¹èna toèka za Linuxovo dokumentacijo je The Linux Documentation Project Home Page <http://sunsite.unc.edu/mdw/>. HOWTO- ji se precej redno popravljajo. Medtem ko lahko uporabite ta dokument za vzpostavitev va¹e PPP povezave brez branja kateregakoli teh dokumentov, boste z branjem dosegli veliko bolj¹e razumevanje dogajanja! Tako boste tudi samo sposobni najti probleme (ali vsaj zastavljati bolj inteligentna vpra¹anja v novièarskih skupinah comp.os.linux... ali po¹tnih seznamih). Ti dokumenti (kot tudi razni drugi, vkljuèujoè pomembne RFC-je) ponujajo dodatno in bolj podrobno razlago kot je mo¾na v tem HOWTO-ju. Èe povezujete LAN z Internetom z uporabo PPP-ja, boste morali vedeti dosti o TCP/IP omre¾jih. Poleg zgornjih dokumentov vam bosta zelo koristili O'Reilly-jevi knjigi ,,TCP/IP Network Administration`` in ,,Building Internet Firewalls``! 5.1. Uporabni po¹tni seznami o Linuxu Obstaja veliko po¹tnih seznamov o Linuxu, ki delujejo kot sredstvo komunikacije med uporabniki razliènih sposobnosti. Vsekakor se naroèite na tiste, ki vas zanimajo in prispevajte svoje strokovno znanje in poglede. Nasvet zaèetnikom: Nekateri seznami so namenjeni izku¹enim uporabnikom ali doloèenim predmetom. Èeprav se ne bo nihèe prito¾eval èe boste le ,,pre¾ali`` (boste naroèeni na seznam a ne boste po¹iljali sporoèil), je zelo verjetno , da boste prejeli ¾olène kritike (èe ne celo izbruhe jeze - ,,flames``), èe boste po¹iljali ,,zaèetni¹ka`` vpra¹anja na neprimerne sezname. To se ne dogaja zato, ker bi ,,guruji`` sovra¾ili nove uporabnike, temveè zato ker so ti seznami namenjeni obravnavi specifiènih vpra¹anj na posebnih te¾avnostnih stopnjah. Vsekakor se prijavite na sezname ki ponujajo prijave, vendar se dr¾ite predmeta razprave. Dobra izhodi¹èna toèka za po¹tne sezname o Linuxu je Linux Mailing List Directory <http://summer.snu.ac.kr/~djshin/linux/mail- list/index.shtml>. V Sloveniji imamo po¹tne sezname Dru¹tva uporabnikov Linuxa Slovenije. Kako se naroèite na njih, zveste, èe po¹ljete na naslov majordomo@lugos.si v telesu sporoèila help, ali, èe pogledate na spletno stran <http://www.lugos.si/delo/mailinglista.html>. 6. Pregled kaj mora biti storjeno za delovanje PPP-ja kot odjemalca Ta dokument vsebuje veliko informacij - njihovo ¹tevilo se z vsako izdajo veèa! Ta razdelek podaja jedrnat pregled stvari, ki jih boste morali narediti, da bi svoj Linux povezali s PPP stre¾nikom. 6.1. Pridobivanje/name¹èanje programja Èe va¹a distribucija ne vsebuje PPP programja, ga boste morali dobiti: the Linux PPP daemon <ftp://sunsite.unc.edu/pub/Linux/system/Network/serial/ppp/ppp-2.2.0f.tar.gz>. To je zadnje uradna verzija ob èasu pisanja. Vsekakor pa izberite zadnjo stabilno verzijo s tega mesta (ppp-2.3 je sedaj v beta stanju in bo kmalu dostopen). PPP paket vsebuje navodila za prevajanje in name¹èanje programja zato jih ta HOWTO ne! 6.2. Vkljuèevanje podpore za PPP v jedro Linuxov PPP je sestavljen iz dveh delov * zgoraj omenjenega PPP daemona * podpore za PPP v jedru Mnogo distibucij ponuja podporo za PPP v privzetem namestitvenem jedru, a nekatere je ne. Èe ob zaganjanju jedro izpi¹e nekaj takega kot ______________________________________________________________________ PPP Dynamic channel allocation code copyright 1995 Caldera, Inc. PPP line discipline registered. ______________________________________________________________________ va¹e jedro vsebuje PPP podporo. Kljub temu boste verjetno ¾eleli prevesti svoje jedro, katerokoli distribucijo ¾e imate, da bi èimbolje porabili svoje sistemske vire in strojno opremo. Vredno si je zapomniti, da se delujoèega jedra ne da prenesti na disk in ima majhno jedro prednosti na raèunalniku z malo spomina. Ta dokument ponuja kratka navodila za ponovno prevajanje jedra v razdelku ,,Konfiguriranje jedra va¹ega Linuxa``. Za podrobnosti si oglejte prevod spisa Kernel HOWTO <http://www.lugos.si/delo/slo/HOWTO-sl/Kernel-HOWTO-sl.html>. 6.3. Pridobivanje podatkov od va¹ega PIS-a Obstaja majhno morje mo¾nosti konfiguriracije PPP stre¾nika. Da bi se povezali z va¹im PIS-om (ali slu¾benim PPP stre¾nikom za dostop do intraneta), boste morali dobiti nekaj informacij o tem, kako ta PPP stre¾nik deluje. Ker uporabljate Linux, boste morda imeli te¾ave z nekaterimi PIS-i (ali slu¾benimi PPP stre¾niki), ki poznajo samo odjemalce za MS Windows. Kljub temu pa vedno veè PIS-ov uporablja Linux za njihove storitve. Linux prodira tudi v velika podjetja, zato boste mogoèe vseeno imeli sreèo, tudi èe naletite na te¾ave. Razdelek ,,Pridobivanje podatkov o PPP stre¾niku`` vam pove, kaj morate vedeti o PPP stre¾niku s katerim se nameravate povezati in kako najti podatke, ki jih potrebujete. 6.4. Konfiguracija modema in zaporednih vrat Da bi se povezali s PPP stre¾nikom in imeli èimbolj¹o hitrost prenosa podatkov, morate pravilno konfigurirati va¹ modem. Ravno tako morajo biti pravilno konfigurirana serijska vrata na modemu in raèunalniku. Navodila za to daje razdelek ,,Konfiguriranje modema in serijskih vrat``. 6.5. Konfiguriranje DNS-a Poleg datotek, ki po¾enejo PPP in skrbijo za samodejno prijavo na PPP stre¾nik, je potrebno preveriti ¹e nekaj datotek, da bi bilo mo¾no prevajanje imen kot www.interveft.com.au v IP naslove, ki jih dejansko uporabljamo za vzpostavitev stika s tem raèunalnikom. Ti dve datoteki sta: * /etc/resolv.conf * /etc/host.conf Za podrobnosti o tem glejte razdelek ,,Vzpostavljanje razre¹evanja imen v naslove (DNS)``. Na va¹em Linux raèunalniku vam NI treba poganjati DNS stre¾nika, da bi se povezali z Internetom (èeprav bi to mogoèe ¾eleli). Vse kar morate vedeti, je IP ¹tevilka vsaj enega takega stre¾nika (Po no¾nosti pri va¹em PIS-u). 6.6. PPP in administratorske pravice Ker vzpostavljanje PPP povezave med va¹im Linux raèunalnikom in PPP stre¾nikom zahteva upravljanje z mre¾nimi sredstvi (PPP vmesnik je mre¾no sredstvo) in usmerjevalno tabelo, PPP potrebuje administratorske (root) pravice. Za podrobnosti o temu glejte razdelek ,,Uporaba PPP-ja in root pravice``. 6.7. Preverjanje PPP datotek va¹e distribucije in prilagajanje PPP opcij Da bi usposobili PPP, je treba preveriti nekaj konfiguracijskih datotek. V PPP paketu so primeri le-teh. Imeti bi morali te datoteke: ______________________________________________________________________ /etc/ppp/options /etc/ppp/scripts/ppp-on /etc/ppp/scripts/ppp-on-dialer /etc/ppp/options.tpl ______________________________________________________________________ Glede na va¹e ¾elje, kaj toèno ¾elite doseèi s PPP-jem, boste morda morali ustvariti dodatne datoteke: ______________________________________________________________________ /etc/ppp/options.ttyXX /etc/ppp/ip-up /etc/ppp/pap-secrets /etc/ppp/chap-secrets ______________________________________________________________________ Poleg tega lahko PPP daemon uporabi veliko opcij iz ukazne vrstice. Pomembno je, da uporabite prave. Ta razdelek vam pojasni pomen standardnih PPP opcij in vam pomaga pri odloèitvi, katere uporabiti. Oglejte si razdelek ,,Priprava datotek za PPP povezavo``. 6.8. Èe va¹ PPP stre¾nik uporablja PAP (Password Authentication Protocol) Dosti PIS-ov uporablja PAP. Èe va¹ stre¾nik ne zahteva njegove uporabe (èe vas stre¾nik tekstovno vpra¹a za uporabni¹ko ime in geslo), lahko ta razdelek mirno preskoèite. PPP stre¾nik, ki uporablja PAP, ne zahteva tekstovne prijave. Namesto tega se informacije o istovetnosti uporabnika izmenjajo kot del LCP-ja (link control protocol - protokol za kontrolo povezave), ki je prvi del vzpostavitve PPP povezave. Razdelek ,,Èe va¹ PPP stre¾nik uporablja PAP (Password Authentication Protocol)`` podaja informacije o datotekah ki jih morate nastaviti za vzpostavitev PPP povezave s PAP-om. 6.9. Roèno povezovanje s PPP stre¾nikom Ko ste uredili osnovne datoteke, bi bilo dobro, da bi jih preverili s povezavo (z uporabo minicom-a ali seyon-a) in roèno pognali PPP na va¹em Linux raèunalniku. Oglejte si razdelek ,,Roèna vzpostavitev PPP povezave`` za podrobnosti o tem. 6.10. Avtomatizacija PPP povezave Ko ste se sposobni roèno povezati, lahko nastavite nekaj skript, ki bodo avtomatizirale vzpostavitev PPP povezave. Razdelek ,,Avtomatizacija povezav - priprava povezovalnih skript`` pokriva pripravo potrebnih skript. Posebno pozornost posveèa chat-u in avtomatizaciji prijave na PPP stre¾nik. Ta razdelek razpravlja tako o skriptah za ime/geslo avtentikacijo, kot tudi o skriptah za PAP/CHAP avtentikacijo. 6.11. Prekinitev povezave Ko povezava deluje, jo morate biti sposobni prekiniti. Za to skrbi razdelek ,,Prekinitev PPP povezave``. 6.12. Èe imate te¾ave Mnogo ljudi ima na zaèetku te¾ave pri vzpostavljanju PPP povezave. Razlike med PPP stre¾niki in naèini avtentikacije so ogromne. Ravno tako ima PPP ogromno opcij. Nekatere od kombinacij paè ne delujejo skupaj. Nikoli. Ne samo s prijavljanjem in zaèetkom storitev PPP, tudi z modemi in resniènimi telefonskimi linijami so te¾ave! Razdelek ,,Odpravljanje te¾av`` podaja nekaj osnovnih informacij o pogostih napakah, navodila za odkritje in popravljanje. Razdelek NI namenjen veè kot osnovam. Al Longyear skrbi za PPP-FAQ, ki vsebuje dosti veè informacij o tej temi. 6.13. Ko se povezava vzpostavi Ko je PPP povezava uporabna (natanèneje, ko je uporaben IP sloj), lahko pppd samodejno (kot uporabnik root) za¾ene skripto, ki opravi katerokoli funkcijo, ki jo skripta zmore. Razdelek ,,Ko se povezava vzpostavi`` pove veè o /etc/ppp/ip-up skripti, parametrih ki jih sprejme od pppd-ja in kako jo uporabiti za stvari kot pobiranje po¹te iz va¹ega raèuna pri PIS-u, po¹iljanje po¹te, ki èaka na prenos na va¹em raèunalniku itd. 6.14. Te¾ave s standardnimi IP servisi na PPP povezavi z dinamièno dodeljenimi IP ¹tevilkami Kot je ¾e bilo omenjeno v uvodu, dinamiène IP ¹tevilke omejujejo sposobnost va¹ega PC-ja z Linuxom, da deluje kot stre¾nik na Internetu. Razdelek ,,Uporaba servisov Interneta z dinamiènimi IP ¹tevilkami`` ponuja informacije o (glavnih) prizadetih servisih in kaj lahko storite (èe sploh kaj) za premaganje te¾av. 7. Konfiguriranje jedra va¹ega Linuxa Da bi uporabljali PPP, mora va¹e jedro vsebovati podporo za PPP. Èe je ¹e nimate, morate dobiti izvorno kodo jedra. Na standardnem Linux sistemu je v /usr/src/linux. Preverite ta imenik. Mnogo distribucij Linuxa namesti izvorno drevo (datoteke in poddirektorije) kot del namestitvenega procesa. Ob zagonu va¹e jedro izpi¹e veliko podatkov. Med temi so tudi podatki o PPP podpori, èe je vkljuèena v jedro. Da bi jih pregledali, si oglejte syslog datoteko ali uporabite dmesg | more. Èe je PPP podpora v jedru, boste videli nekaj takega: ______________________________________________________________________ PPP Dynamic channel allocation code copyright 1995 Caldera, Inc. PPP line discipline registered. ______________________________________________________________________ (Za jedra Linuxa serije 2.0.x). Izvorno kodo jedra Linuxa lahko dobite s ftp-jem na sunsite.unc.edu ali njegovih zrcalnih mestih. 7.1. Namestitev izvorne kode jedra To so kratka navodila za pridobitev in namestitev izvorne kode jedra Linuxa. Popolna navodila lahko dobite v prevodu spisa Kernel HOWTO <http://www.lugos.si/delo/slo/HOWTO-sl/Kernel-HOWTO-sl.html> ali angle¹kem izvirniku <http://sunsite.unc.edu/mdw/HOWTO/Kernel- HOWTO.html> Da bi namestili in prevedli jedro, morate biti prijavljeni kot root. 1. Premaknite se v imenik /usr/src cd /usr/src 2. Preverite /usr/src/linux èe imate izvorno kodo ¾e name¹èeno. 3. Èe je nimate, jo dobite na imeniku izvorne kode jedra za Linux <ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0> ali na najbli¾jem zrcalnem stre¾niku. Èe potrebujete starej¹o izdajo jedra (kot npr. 1.2.x), jo najdete na imeniku izvorne kode starih jeder <ftp://sunsite.unc.edu/pub/Linux/kernel/old>. 4. Izberite primerno jedro - navadno i¹èete najnovej¹e. Snemite ga in premaknite tar datoteko z izvorno kodo v /usr/src. Opomba: datoteka tar je arhiv - po mo¾nosti skrèen (kot so datoteke tar z izvorno kodo Linuxa), ki vsebuje mnogo datotek in imenikov. Je Linuxov ekvivalent DOS-ove datoteke zip z veè imeniki. 5. Èe imate jedro ¾e name¹èeno in ga nadgrajujete, morate najprej odstraniti staro izvorno kodo. Uporabite ukaz rm -rf /usr/src/linux 6. Sedaj raz¹irite in izvlecite izvorno kodo z ukazom tar xzf linux-2.0.XX.tar.gz 7. Sedaj cd /usr/src/linux in preberite datoteko README, ki vsebuje odlièno razlago o konfiguriranju in prevajanju jedra. Dobro bi bilo tudi, da si jo natisnete in jo imate pri roki, dokler se pri prevajanju ne znajdete brez nje. 7.2. Poznavanje va¹e strojne opreme Èe nameravate prevajati va¹e jedro, MORATE vedeti katere kartice/naprave imate v va¹em raèunalniku!!! Za nekatere naprave (npr. zvoène kartice) boste morali vedeti tudi razne nastavitve (kot so IRQ- ji, I/O naslovi in podobno). 7.3. Prevajanje jedra - jedro Linux 1.2.13 Da bi zaèeli konfiguriranje, sledite navodilom v datoteki README, da boste pravilno namestili izvorno kodo. Konfiguracijo zaènete z make config Za uporabo PPP-ja morate v jedro vkljuèiti podporo za PPP (PPP potrebuje OBOJE - pppd IN podporo za PPP v jedru). ______________________________________________________________________ PPP (point-to-point) support (CONFIG_PPP) [n] y ______________________________________________________________________ Na druga vpra¹anja odgovorite glede na ,,¾eleznino``, ki jo imate v raèunalniku, in lastnosti operacijskega sistema Linux, ki jih potrebujete. Potem nadaljujte z branjem datoteke README za prevajanje in namestitev novega jedra. Jedro 1.2.13 ustvari le 4 naprave za PPP. Za veèvratne serijske kartice (ki potrebujejo veè vrat) boste morali popraviti izvorno kodo jedra. (Oglejte si datoteko README.linux, ki je prilo¾ena distribuciji PPP 2.1.2 za navodila o enostavnih popravkih, ki jih morate narediti). Opomba: konfiguracijska skripta za jedro 1.2.13 NE dovoli popravljanja - èe naredite napako pri odgovarjanju na eno od vpra¹anj v make config, pritisnite CTRL C in zaènite znova. 7.4. Prevajanje jedra - jedra Linux 1.3.x in 2.0.x Za Linux 1.3.x in 2.0.x lahko uporabite podobno pot kot za Linux 1.2.13. Sledite navodilom v datoteki README za pravilno namestitev izvorne kode. Konfiguracijo po¾enite z make config Poleg tega imate na izbiro tudi make menuconfig Ta ukaz ponuja konfiguracijski sistem z menuji in sprotno pomoèjo, poleg tega pa vam dovoli popravljanje napak. Obstaja tudi zelo priporoèan konfiguracijski vmesnik baziran na sistemu X window: make xconfig PPP podporo lahko vkljuèite naravnost v jedro ali kot nalagalni modul. Èe uporabljate PPP le obèasno, je priporoèena uporaba podpore za PPP kot nalagalni modul. Z uporabo ,kerneld` bo va¹e jedro samodejno nalo¾ilo module, potrebne za PPP podporo, ko boste zaèeli povezovanje. To bo prihranili dragoceni pomnilni¹ki prostor. Noben del jedra ne more biti preneèen na disk, nalagalni moduli pa so samodejno odstranjeni, èe jih ne potrebujemo. Za to morate omogoèiti podporo za nalagalne module: ______________________________________________________________________ Enable loadable module support (CONFIG_MODULES) [Y/n/?] y ______________________________________________________________________ Za PPP podporo odgovorite na naslednje vpra¹anje: ______________________________________________________________________ PPP (point-to-point) support (CONFIG_PPP) [M/n/y/?] ______________________________________________________________________ Za uporabo nalagalnih modulov za PPP odgovorite M, sicer pa Y. Za razliko od jedra 1.2.13, ustvarja jedro PPP naprave po potrebi. Za poveèanje ¹tevila PPP naprav ni potrebno popravljati jedra. 7.5. Opomba o PPP-2.2 in /proc/net/dev Èe uporabljate PPP-2.2, boste ugotovili, da je stranski uèinek ustvarjanja PPP naprav ,,po potrebi`` ta, da v /proc/net ni videti nobenih PPP naprav, dokler jih ne ustvarimo z zagonom pppd-ja: ______________________________________________________________________ [hartr@archenland hartr]$ cat /proc/net/dev Inter-| Receive | Transmit face |packets errs drop fifo frame|packets errs drop fifo colls carrier lo: 92792 0 0 0 0 92792 0 0 0 0 0 eth0: 621737 13 13 0 23 501621 0 0 0 1309 0 ______________________________________________________________________ Ko imate pognan en (ali veè) ppp servis, boste videli vnose kot je ta (na ppp stre¾niku): ______________________________________________________________________ [root@kepler /root]# cat /proc/net/dev Inter-| Receive | Transmit face |packets errs drop fifo frame|packets errs drop fifo colls carrier lo: 428021 0 0 0 0 428021 0 0 0 0 0 eth0:4788257 648 648 319 650 1423836 0 0 0 4623 5 ppp0: 2103 3 3 0 0 2017 0 0 0 0 0 ppp1: 10008 0 0 0 0 8782 0 0 0 0 0 ppp2: 305 0 0 0 0 297 0 0 0 0 0 ppp3: 6720 7 7 0 0 7498 0 0 0 0 0 ppp4: 118231 725 725 0 0 117791 0 0 0 0 0 ppp5: 38915 5 5 0 0 28309 0 0 0 0 0 ______________________________________________________________________ 7.6. Na kaj moramo paziti pri konfiguraciji PPP v jedru Èe postavljate va¹ raèunalnik kot PPP stre¾nik, morate vkljuèiti podporo za IP forwarding. To je potrebno tudi, èe ga boste uporabili za povezavo dveh omre¾ij ali omre¾ja in Interneta. Èe povezujete omre¾je z Internetom (ali dve omre¾ji), morate paziti na varnost. Vkljuèitev podpore za po¾arni zid (IP firewalls) je skoraj NUJNA! To boste potrebovali tudi za uporabo IP masquerade za povezavo omre¾ja, ki uporablja katero od zgoraj navedenih ,,nepovezanih`` IP ¹tevilk. Za IP Masquerade in IP firewalling MORATE odgovoriti yes na prvo vpra¹anje v make config : ______________________________________________________________________ Prompt for development and/or incomplete code/drivers (CONFIG_EXPERIMENTAL)? ______________________________________________________________________ Medtem, ko se zdi to novim uporabnikom nekoliko zaskrbljujoèe, mnogo uporabnikov brez te¾av uporablja lastnosti IP Masquerade in IP firewalling jedra Linux 2.0.XX. Ko ste namestili novo jedro in znova pognali raèunalnik, lahko zaènete konfigurirati in preizku¹ati PPP povezavo(e). 8. Pridobivanje podatkov o PPP stre¾niku Preden lahko vzpostavite PPP povezavo s stre¾nikom, morate dobiti nekaj podatkov (ima jih administrator ali slu¾ba za podporo pri PPP stre¾niku): * Telefonsko ¹tevilko(e), na kateri je stre¾nik Èe imate avtomatsko hi¹no centralo, potrebujete tudi ¹tevilko, ki vam da dostop do zunanjega telefonskega omre¾ja. To sta pogosto ¹tevilki 0 ali 9. * Ali stre¾nik uporablja DINAMIÈNE ali STATIÈNE IP ¹tevilke? Èe stre¾nik uporablja statiène IP ¹tevilke, morate mogoèe vedeti, katero ¹tevilko uporabiti za va¹ konec PPP povezave. Èe vas PIS oskrbi s ,,subnetom`` veljavnih IP ¹tevilk, boste morali vedeti IP ¹tevilke, ki jih lahko uporabite in omre¾no masko (netmask). Veèina PIS-ov uporablja DINAMIÈNE IP ¹tevilke. Kot je omenjeno zgoraj, ima to nekatere posledice na servise, ki jih lahko uporabljate. Èeprav uporabljate STATIÈNE IP ¹tevilke, vam veèina PPP stre¾nikov kot odjemalcu nikoli ne bo pustila doloèiti IP ¹tevilko, ker to predstavlja varnostno tveganje. Vseeno pa morate vedeti ta podatek! * Katere so IP ¹tevilke PIS-ovih DNS stre¾nikov? Morali bi biti vsaj dve, èeprav je ena dovolj. To bi znal biti problem. MS Windows 95 dovoljujejo, da so DNS naslovi posredovani odjemalcu kot del povezovalnega procesa. Torej vam bo PIS mogoèe povedal, da tega podatka ne potrebujete. Za Linux POTREBUJETE naslov vsaj enega DNS stre¾nika. Linux izvedba PPP-ja ne dovoli nastavitve IP ¹tevilk DNS stre¾nikov dinamièno ob povezavi - in verjetno tudi nikoli ne bo. Opomba: medtem ko Linux (kot PPP odjemalec) ne more sprejeti DNS naslova od stre¾nika, zna (kot stre¾nik) poslati ta podatek odjemalcem z uporabo dns-addr pppd opcije. * Ali stre¾nik zahteva uporabo PAP/CHAP? V tem primeru morate vedeti ,,id`` in ,,secret``, ki ju potrebujete za povezavo. (To sta verjetno va¹e uporabni¹ko ime in geslo). * Ali stre¾nik avtomatsko za¾ene PPP ali morate uporabiti kak¹en ukaz za zagon PPP-ja na stre¾niku, ko se prijavite? Kateri je ta ukaz? * Ali na stre¾niku teèejo Microsoft Windows NT? Èe je tako, ali stre¾nik uporablja MS PAP/CHAP? Mnogo slu¾benih omre¾ij uporablja MS Windows NT na tak naèin za poveèano varnost. Zapi¹ite si te podatke, ker jih boste potrebovali! 9. Konfiguriranje modema in serijskih vrat Preprièajte se, da je modem pravilno name¹èen in da veste na katerih serijskih vratih je name¹èen. Pomnite: * DOS com1: = Linux /dev/cua0 (in /dev/ttyS0) * DOS com2: = Linux /dev/cua1 (in /dev/ttyS1) in tako dalje Dobro si je tudi zapomniti, da èe imate 4 serijska vrata, je navadno PC nastavljen tako, da si com1 in com3 delita IRQ4, com2 in com4 pa IRQ3. Èe imate na standardnih serijskih vratih naprave, ki si delijo IRQ z va¹im modemom, boste imeli probleme. Modem mora imeti svoj nedeljen IRQ. Mnogo modernih serijskih kartic (in kvalitetnej¹ih osnovnih plo¹è) vam omogoèa spreminjanje IRQ-jev. Èe uporabljate jedro Linux 2.0.x, lahko preverite IRQ-je v uporabi z cat /proc/interrupts, ki bo pokazal nekaj takega: ______________________________________________________________________ 0: 6766283 timer 1: 91545 keyboard 2: 0 cascade 4: 156944 + serial 7: 101764 WD8013 10: 134365 + BusLogic BT-958 13: 1 math error 15: 3671702 + serial ______________________________________________________________________ Tukaj so serijska vrata na IRQ4 (mi¹ka) in serijska vrata na IRQ15 (trajne modemska povezava z Internetom). Na raèunalniku so tudi serijska vrata com2 na IRQ3 in com4 na IRQ14, vendar nista v uporabi, zato nista prikazana. Pozor - vedeti morate kaj poènete, èe se boste igrali z IRQ-ji! Ne samo da morate odpreti raèunalnik, izvleèi kartice in premikati mostièke, vedeti morate tudi kaj je na katerem IRQ-ju. V mojem primeru imam v raèunalniku samo SCSI diske, zato lahko onemogoèim IDE vmesnik na osnovni plo¹èi, ki navadno uporablja IRQ14 in 15! Zapomnite si tudi, da èe imate na raèunalniku druge operacijske sisteme, se ti mogoèe ne bodo pravilno zagnali - èe sploh! Èe premaknete zaporedna vrata na nestandardne IRQ-je, morate Linuxu povedati, katere IRQ-je uporabljajo. To naredite s setserial, najraje kot del zagona sistema v rc.local ali rc.serial, ki je klican iz rc.local ali kot del SysV inicializacije. Za zgornji raèunalnik so uporabljeni ukazi ______________________________________________________________________ /bin/setserial -b /dev/ttyS2 IRQ 14 /bin/setserial -b /dev/ttyS3 IRQ 15 ______________________________________________________________________ Èe uporabljate zaporedno podporo kot nalagalne module in jih dinamièno nalagate z uporabo kerneld-ja, IRQ-jev ne morete nastaviti ob zagonu in pozabiti nanje. To se zgodi zaradi tega, ker Linux ob izkljuèitvi modula iz jedra pozabi posebne nastavitve. Tako boste morali ob uporabi nalagalnih modulov popraviti IRQ-je vsakiè, ko bo modul nalo¾en. 9.1. Opomba o serijskih vratih in hitrostih Èe uporabljate hiter (zunanji) modem (14.400 bps ali hitrej¹i), morajo va¹a zaporedna vrata biti sposobna spustiti skozi promet, ki ga naredi tak modem, ¹e posebej ko modem stiska podatke. Za to morajo va¹a serijska vrata uporabljati moderen UART (Universal Asynchronous Receiver Transmitter - univerzalni asinhroni sprejemnik/oddajnik) kot je 16550(A). Èe uporabljate star raèunalnik /ali staro serijsko kartico), je va¹ UART mogoèe 8250 UART, ki vam bo povzroèil precej¹nje te¾ave pri uporabi hitrih modemov. Uporabite ukaz setserial -a /dev/ttySx da vam Linux sporoèi, kak¹en UART imate. Èe va¹ UART ni tipa 16550A, si preskrbite novo serijsko kartico (stane le kak¹nega tisoèaka). Pred nakupom se preprièajte, da na njej lahko nastavljate IRQ-je! Opomba: prve verzije èipov UART 16550 so imele napake. To je bilo hitro odkrito in na trg je pri¹la nove razlièica - UART 16550A. Sorazmerno majhno ¹tevilo pokvarjenih èipov pa je vseeno pri¹lo v obtok. Verjetnost, da bi naleteli na tak èip, je zelo majhna, kljub temu pa bi vam zgornji ukaz moral vrniti 16550A, ¹e posebej na karticah z ,,rodovnikom``. 9.2. Imena serijskih vrat Linux je uporabljal naprave cuaX za klicanje in naprave ttySx za sprejemanje klicev. Koda v jedru, ki je to zahtevala, se je v jedrih 2.0.x spremenila in zdaj bi morali uporabljati ttySx za oboje. Sli¹ati je, da bodo naprave cuaX v bodoèih izdajah jedra izginile. 9.3. Nastavljanje modema Va¹ modem boste morali pravilno nastaviti za PPP - PREBERITE NAVODILA VA©EGA MODEMA! Veèina modemov ima normalno tovarni¹ko nastavitev, ki izbere opcije, potrebne za PPP. Minimalna nastavitev je: * Strojni nadzor pretoka (Hardware flow control - RTS/CTS) (&K3 na mnogo modemih Hayes) Ostale nastavitve (v standardnih ukazih Hayes), ki jih morate preveriti: * E1 Command Echo ON (potrebna za delovanje chat-a) * Q0 Report result codes (potrebna za delovanje chat-a) * S0=0 Auto Answer OFF (razen èe hoèete, da modem ob klicu odgovori) * &C1 Carrier Detect ON samo po povezavi * &S0 Data Set Ready (DSR) vedno ON * (razlièno) Data Terminal Ready Podatke za vedno veè razliènih modemov in izdelovalcev najdete na Modem setup information <http://www.in.net/info/modems/index.html>. Vredno je tudi raziskati, kako deluje zaporedni vmesnik med modemom in va¹im raèunalnikom. Veèina sodobnih modemov vam dovoli poganjati zaporedni vmesnik pri FIKSNI hitrosti, medtem ko se hitrost telefonske linije spreminja glede na to kaj zmoreta modema. To je znano kot delovanje pri razliènih hitrostih (split speed operation). Èe ga va¹ modem podpira, nastavite serijski vmesnik na najvi¹jo mo¾no hitrost (navadno 115.200 bps, toda mogoèe 38.400 bps za 14.400 bps modeme). Uporabite va¹e komunikacijsko programje (npr. minicom ali seyon), da ugotovite nastavitve va¹ega modema in ga nastavite za PPP. Mnogo modemov sporoèi svoje trenutne nastavitve v odgovor na AT&V, toda poglejte v va¹a navodila. Èe popolnoma zame¹ate nastavitve, jih (navadno) lahko povrnete z AT&F - vrnitev na tovarni¹ke nastavitve. (Za veèino modemov tovarni¹ke nastavitve vsebujejo vse potrebno za PPP, vendar vseeno preverite). Ko enkrat odkrijete potreben nastavitveni ukaz, ga zapi¹ite. Sedaj imate na izbiro: te nastavitve lahko shranite v modemov obstojni pomnilnik, tako da jih naslednjiè priklièete s primernim ukazom AT. Lahko pa jih posredujete modemu kot del klicnega procesa. Èe modem uporabljate samo za klicanje va¹ega PIS-a ali slu¾benega PPP stre¾nika, bi bilo najbolje shraniti nastavitve v modemov obstojni pomnilnik. Po drugi strani pa modem uporabljajo drugi programi in operacijski sistemi, zato je najbolje posredovati nastavitve modemu ob vsakem klicu, tako da bo modem gotovo v dobrem stanju. (Druga dobra stran tega je, da imamo nekje zapisan nastavitveni ukaz, èe modem zgubi vsebino svojega NVRAM-a, kar se lahko res zgodi). 9.4. Opomba o nadzoru pretoka Ko podatki potujejo po zaporednih linijah, se lahko zgodi, da podatki prihajajo hitreje, kot jih raèunalnik lahko sprejema (raèunalnik lahko dela kaj drugega - Linux je veèuporabni¹ki in veèopravilni operacijski sistem). Da se podatki ne bi izgubili (podatki se ne zapi¹ejo v vmesni pomnilnik in se tako izgubijo), je potrebna neka vrsta kontrole pretoka. Na zaporednih linijah sta dve vrsti kontrole pretoka: * Uporaba strojnih signalov (Clear To Send/Request to Send - CTS/RTS) * Uporaba programskih signalov (control-S in control-Q, znana tudi kot XON/XOFF). Medtem ko je zadnja uporabna za terminalsko (tekstovno) povezavo, potrebujejo podatki na PPP liniji 8 bitov - in kaj verjetno je, da bo med podatki nekaj, kar se bo prevedlo kot control S in control Q. Èe torej modem uporablja programsko kontrolo pretoka, lahko stvari hitro ponorijo! Za hitre povezave z uporabo PPP-ja (ki uporablja vseh 8 bitov podatkov), je strojni nadzor pretoka ¾ivljenjskega pomena in ga je zato treba uporabljati. 9.5. Preizku¹anje modema za klicanje Sedaj ko ste uredili nastavitve zaporednih vrat in modema bi se bilo s klicanjem va¹ega PIS-a dobro preprièati, da te nastavitve zares delujejo in videti, èe se lahko pove¾ete. Z uporabo va¹ega komunikacijskega paketa (npr. minicoma), nastavite inicializacijo modema, potrebno za PPP, in poklièite PPP stre¾nik, s katerim se ¾elite povezati. (Opomba: na tej stopnji NE posku¹amo vzpostaviti PPP povezave - preprièujemo se, èe imamo pravo telefonsko ¹tevilko in kaj toèno nam stre¾nik po¹ilja, da bi se povezali in pognali PPP). Med tem procesom ulovite (shranite v datoteko) celoten proces prijave ali si pazljivo (zelo pazljivo) zapi¹ite toèno kak¹en poziv vam da stre¾nik za vpis uporabni¹kega imena in gesla (in drugih ukazov za zagom PPP-ja). Èe va¹ stre¾nik uporablja PAP, ne bi smeli videti poziva za prijavo, ampak (tekstovno predstavitev) protokola za nadzor povezave (link control protocol) (ki izgleda kot smeti) na va¹em zaslonu. Nekaj opozoril: * nekateri stre¾niki so dokaj inteligentni: lahko se prijavite z uporabni¹kim imenom in geslom, ALI s PAP-om. Èe torej va¹ PIS ali slu¾beni PPP stre¾nik uporablja PAP in smeti ne vidite takoj, niste nujno naredili napake. * nekateri stre¾niki zahtevajo, da najprej nekaj vpi¹ete in ¹ele nato zaènejo PAP zaporedje. * Nekateri PPP stre¾niki so pasivni - preprosto èakajo in niè ne po¹ljejo, dokler jim odjemalec ne po¹lje lcp paketa. Èe PPP stre¾nik, s katerim se povezujete, deluje tako, ne boste nikoli videli smeti! * Nekateri PPP stre¾niki ne za¾enejo PPP-ja, dokler ne pritisnete ENTER - vredno je poskusiti, èe se pravilno prijavite in ne vidite smeti! Splaèa se klicati vsaj dvakrat. Nekateri stre¾niki spreminjajo njihove pozive (naprimer glede na èas!) vsakiè ko se prijavite. Dva pomembna poziva, ki jih Linux potrebuje sta: * poziv za vpis va¹ega uporabni¹kega imena; * poziv za vpis va¹ega gesla; Èe morate vnesti ukaz za zagon PPP-ja na stre¾niku, boste morali ugotoviti tudi obliko poziva za vnos tega ukaza. Èe va¹ stre¾nik samodejno za¾ene PPP, ko ste enkrat prijavljeni, boste zagledali na zaslonu smeti. To je PPP stre¾nik, ki po¹ilja va¹emu raèunalniku podatke za zagon in konfiguracijo PPP povezave. To bi moralo izgledati nekako takole: ______________________________________________________________________ ~y}#.!}!}!} }8}!}$}%U}"}&} } } } }%}& ...}'}"}(}"} .~~y} ______________________________________________________________________ (in ¹e kar prihaja!!!) Na nekaterih sistemih mora biti PPP roèno zagnan na stre¾niku. To je ponavadi zaradi tega, ker je stre¾nik nastavljen za PPP in tekstovne prijave z uporabo istega uporabni¹kega imena/gesla. Èe je tako, po prijavi vnesite ta ukaz. Znova boste videli smeti, ko se na stre¾niku za¾ene PPP. Èe tega ne vidite takoj po povezavi (in prijavi in po potrebi zagonu PPP-ja), pritisnite Enter, da bi videli, èe to za¾ene PPP stre¾nik... Sedaj lahko prekinete povezavo (navadno hitro vtipkate +++ in nato, ko modem odvrne OK, vtipkate ¹e ukaz ATH0). Èe va¹ega modema ne morete pripraviti do dela, preberite modemov uporabni¹ki priroènik, man strani komunikacijskega programa in Serial HOWTO! Ko razre¹ite to, nadaljujte kot zgoraj. 10. Vzpostavljanje razre¹evanja imen v naslove (DNS) Medtem ko ljudje radi dajemo stvarem imena, imajo raèunalniki raje ¹tevilke. Na TCP/IP mre¾i (kar Internet je), imenujemo raèunalnike po doloèenih imenih in vsak raèunalnik ¾ivi v doloèeni ,,domeni``. Moja delovna postaja z Linuxom se imenuje archenland in prebiva v domeni interweft.com.au. Njegov ,,èlove¹ki`` naslov je torej archenland.interweft.com.au (kar je znano kot FQDN - fully qualified domain name - polno ime domene). Da pa bi ga na¹li drugi raèunalniki na Internetu, je znan tudi po svoji IP ¹tevilki, ki jo uporablja za komunikacijo z drugimi raèunalniki na Internetu. Prevajanje (tolmaèenje) imen raèunalnikov (in domen) v ¹tevilke, ki so v uporabi na Internetu je delo raèunalnikov, ki ponujajo Domain Name Service (DNS). Zgodi se to: * va¹ raèunalnik rabi IP ¹tevilko doloèenega raèunalnika. Program, ki potrebuje ta podatek, zanj povpra¹a ,tolmaèa` (resolver) na va¹em raèunalniku z Linuxom; * tolmaè pregleda lokalno host datoteko /etc/hosts in/ali DNS stre¾nike, katere pozna (toèno vedenje tolmaèa je doloèeno v datoteki /etc/host.conf); * èe je odgovor v datoteki host, ga tolmaè vrne programu; * èe je doloèen stre¾nik DNS, ga va¹ PC povpra¹a: * Èe stre¾nik DNS ¾e pozna IP ¹tevilko, jo vrne. Èe je ne, povpra¹a druge stre¾nike DNS na Internetu. Stre¾nik nato vrne ta podatek tolmaèu, ki ga posreduje programu. Ko ustvarite PPP povezavo, morate va¹emu raèunalniku z Linuxom povedati, kje lahko najde podatke o imenih raèunalnikov in IP ¹tevilkah (prevajanje naslovov), da lahko vi uporabljate imena raèunalnikov, va¹ raèunalnik pa jih lahko pretvori v IP ¹tevilke, ki jih potrebuje za delovanje. En naèin je, da vpi¹ete vse gostitelje s katerimi ¾elite govoriti v datoteko /etc/hosts (kar je povsem nemogoèe, èe se povezujete z Internetom); drugi je, da uporabljate namesto imen IP ¹tevilke (nemogoèa spominska naloga za vse mre¾e, razen najmanj¹ih). Najbolj¹i naèin je, da poveste Linuxu, kam naj gre iskat te podatke - avtomatsko. To storitev ponuja sistem imenskih stre¾nikov (DNS). Vse, kar je potrebno je, da vpi¹ete IP ¹tevilko imenskih stre¾nikov v datoteko /etc/resolv.conf. 10.1. Datoteka /etc/resolv.conf Administrator va¹ega PPP stre¾nika (oz. slu¾ba za podporo uporabnikov) bi vam morali dati dve IP ¹tevilki DNS stre¾nikov (potrebna je samo ena, vendar sta navadno dve zaradi mo¾nosti okvar). Kot reèeno, Linux ne more nastaviti IP ¹tevilk DNS stre¾nikov kot MS Windows 95. Torej morate (vljudno) vztrajati, da vam PIS da ti ¹tevilki! Va¹a datoteka /etc/resolv.conf bi morala izgledati nekako takole: ______________________________________________________________________ domain domena.va¹ega.pis-a.si nameserver 10.25.0.1 nameserver 10.25.1.2 ______________________________________________________________________ Uredite to datoteko (po potrebi jo ustvarite) da bo odra¾ala podatke, ki vam jih je posredoval va¹ PIS. Morala bi imeti sledeèe lastni¹tvo in dovoljenja: -rw-r--r-- 1 root root 73 Feb 19 01:46 /etc/resolv.conf Èe ste ¾e uredili /etc/resolv.conf, ker ste na mre¾i, enostavno dodajte IP ¹tevilke DNS stre¾nikov za PPP. 10.2. Datoteka /etc/host.conf Preveriti bi morali tudi datoteko /etc/host.conf. Izgledati bi morala nekako takole ______________________________________________________________________ order hosts,bind multi on ______________________________________________________________________ To pove tolmaèu, naj uporabi podatke iz datoteke hosts preden po¹lje poizvedbo DNS stre¾niku, 11. Uporaba PPP-ja in root pravice Ker mora PPP postaviti mre¾ne naprave, spremeniti usmerjevalno tabelo v jedru in tako naprej, potrebuje pravice administratorja (root). Èe bodo PPP povezavo vzpostavljali tudi drugi uporabniki, bi moral biti program pppd ,,setuid root``: -rwsr-xr-x 1 root root 95225 Jul 11 00:27 /usr/sbin/pppd Èe /usr/sbin/pppd ni tako nastavljen, potem kot root vnesite ukaz: chmod u+s /usr/sbin/pppd To povzroèi, da bo pppd imel administratorske pravice, èetudi ga bo pognal navaden uporabnik. To dovoljuje navadnemu uporabniku, da za¾ene pppd s potrebnimi pravicami za nastavitev omre¾nih vmesnikov in usmerjevalne tabele v jedru. Programi, ki so pognani ,set uid root` so potencialne varnostne luknje in morali bi biti zelo previdni pri nastavljanju programov ,suid root`. Nekaj programov (med njimi pppd) je bilo skrbno napisanih, da bi zmanj¹ali nevarnost takega poganjanja, zato bi morali biti s tem varni (toda brez kakr¹negakoli jamstva). Glede na to kako hoèete, da sistem deluje - natanèneje èe hoèete, da bo lahko KATERIKOLI uporabnik vzpostavil PPP povezavo, bi morali nastaviti skripti ppp-on/off na javno branje/izvr¹evanje. (To je verjetno v redu, èe va¹ PC uporabljate SAMO vi). Èe pa tega NOÈETE (èe imajo naprimer va¹i otroci dostop do raèunalnika in noèete, da bi se povezali z Internetom brez va¹e vednosti), boste morali narediti skupino PPP (kot root uredite datoteko /etc/group) in: * Naredite pppd ,suid root`, last uporabnika root in skupine PPP, z ,ostalimi` pravicami praznimi. Datoteka bi morala izgledati takole: -rwsr-x--- 1 root PPP 95225 Jul 11 00:27 /usr/sbin/pppd * Naredite skripti ppp-on/off last uporabnika root in skupine PPP * Naredite skripti ppp-on/off berljivi/izvr¹ljivi za skupino PPP -rwxr-x--- 1 root PPP 587 Mar 14 1995 /usr/sbin/ppp-on -rwxr-x--- 1 root PPP 631 Mar 14 1995 /usr/sbin/ppp-off * Naredite ostale pravice za ppp-on/off ,prazne`. * dodajte uporabnike, ki bodo uporabljali PPP, v skupino PPP v datoteki /etc/group Èetudi to naredite, navadni uporabniki ¹e vedno ne bodo mogli programsko prekiniti povezave! Poganjanje ppp-off skripte zahteva pravice root-a. Kljub temu lahko enostavno izkljuèijo modem ali telefonski kabel. Alternativna (in bolj¹a) metoda je uporaba programa sudo. Ta ponuja odlièno varnost in vam omogoèa urediti stvari tako, da lahko vsak (poobla¹èen) uporabnik vzpostavi/prekine ppp povezavo z uporabo skript. Uporaba programa sudo bo dovolila poobla¹èenemu uporabniku vzpostavitev/prekinitev PPP povezave èisto in varno. 12. Priprava datotek za PPP povezavo Sedaj morate biti prijavljeni kot root, da bi ustvarili imenike in uredili datoteke potrebne za postavitev PPP-ja, èetudi hoèete, da bo PPP dostopen vsem uporabnikom. PPP uporablja veliko datotek za povezavo in vzpostavitev PPP povezave. Te se med PPP 2.1.2 in PPP 2.2 razlikujejo po imenih in polo¾aju. Za PPP 2.1.2 so to datoteke: ______________________________________________________________________ /usr/sbin/pppd # PPP program /usr/sbin/ppp-on # skripta za klicanje/povezavo /usr/sbin/ppp-off # skripta za prekinitev povezave /etc/ppp/options # mo¾nosti, ki jih uporablja pppd za vse povezave /etc/ppp/options.ttyXX # mo¾nosti posebej za povezavo na doloèenih vratih ______________________________________________________________________ Za PPP 2.2 so to: ______________________________________________________________________ /usr/sbin/pppd # PPP program /etc/ppp/scripts/ppp-on # skripta za klicanje/povezavo /etc/ppp/scripts/ppp-on-dialer # prvi del skripte za klicanje (chat skripta) /etc/ppp/scripts/ppp-off # skripta za prekinitev povezave /etc/ppp/options # splo¹ne mo¾nosti /etc/ppp/options.ttyXX # mo¾nosti za doloèena vrata ______________________________________________________________________ Uporabnikom Red Hat Linuxa standardna Red Hat 4.X namestitev namesti te skripte v /usr/doc/ppp-2.2.0f-2/scripts. V va¹em imeniku /etc bi moral bit imenik ppp: drwxrwxr-x 2 root root 1024 Oct 9 11:01 ppp Èe ne obstaja, ga ustvarite s temi lastniki in pravicami. Èe direktorij ¾e obstaja, bi moral vsebovati ¹ablono za datoteko z mo¾nostmi imenovano options.tpl. Èe je ni, je vkljuèena spodaj. Natisnite si jo, ker vsebuje razlago skoraj vseh PPP mo¾nosti (to je zelo uporabno branje v povezavi s pppd man stranmi). Medtem ko jo lahko uporabite kot osnovo za va¹o /etc/ppp/options datoteko, je verjetno bolje, èe si ustvarite lastno datoteko z mo¾nostmi, ki ne vsebuje vseh opomb iz ¹ablone. Tako bo mnogo kraj¹a in bolj jasna. Èe imate veè zaporednih linij/modemov (navadno pri PPP stre¾nikih), ustvarite splo¹no datoteko /etc/ppp/options, ki vsebuje le mo¾nosti skupne vsem serijskim vratom, na katerih uporabljate klicanje/sprejemanje klicev, in posamezne datoteke za vsako zaporedno linijo z nastavitvami za vsaka vrata. Te posamezne datoteke se imenujejo options.ttyx1, options.ttyx2 in tako naprej (kjer je x primerna èrka za va¹a serijska vrata). Za eno samo PPP povezavo lahko veselo uporabite datoteko /etc/ppp/options. Vse mo¾nosti lahko podate tudi kot argumente pppd- ju. La¾je je vzdr¾evati postavitev, ki uporablja datoteke /etc/ppp/options.ttySx. Èe uporabljate PPP za povezavo z razliènimi mesti, lahko pripravite datoteko z mo¾nostmi za vsako mesto v /etc/ppp/options.mesto in potem posredujete ime datoteke kot parameter pppd-ju ko se povezujete (uporabite parameter file option-file v ukazni vrstici). 12.1. Datoteka options.tpl Nekatere distribucije PPP-ja so oèitno izgubile datoteko options.tpl, zato je tu v celoti. Predlagam, da je NE urejate, da bi dobili svojo datoteko /etc/ppp/options. Raje si to datoteko skopirajte v novo datoteko in urejajte tisto. Èe boste zme¹ali va¹e popravke, lahko zaènete znova z originalom. ______________________________________________________________________ # /etc/ppp/options -*- sh -*- splo¹ne opcije za pppd # created 13-Jul-1995 jmk # autodate: 01-Aug-1995 # autotime: 19:45 # Uporabi izvr¹ilno datoteko ali lupinsko skripto za nastavitev serijske # linije. Ta skripta navadno uporabi ,,chat`` za klicanje z modemom in zagon # PPP-ja na oddaljenem raèunalniku. #connect "echo Nastaviti morate ukaz za povezovanje." # Po¾ene izvr¹ilno datoteko ali lupinsko skripto, kadar pppd prekine # povezavo. Ta skripta bi lahko modemu poslala ukaz za prekinitev, èe # strojna kontrola modema ni na voljo. #disconnect "chat -- \d+++\d\c OK ath0 OK" # async character map -- 32-bit hex; vsak bit je znak, ki mora biti # ,ube¾an`, da ga pppd lahko sprejme. 0x00000001 predstavlja ,\x01`, # 0x80000000 pa ,\x1f`. #asyncmap 0 # Zahteva, da se drugi konec predstavi, preden se paketi lahko zaènejo # sprejemati ali oddajati. #auth # Uporabljaj strojno kontrolo pretoka (RTS/CTS) za kontrolo pretoka podatkov # na serijskih vratih. #crtscts # Uporabljaj programsko kontrolo pretoka (XON/XOFF) za kontrolo pretoka # podatkov na serijskih vratih. #xonxoff # Dodaj privzeto pot v sistemske usmerjevalne tabele z uporabo drugega konca # povezave kot vozla, ko je IPCP dogovarjanje uspe¹no konèano. Ta vnos bo # umaknjen, ko se povezava prekine. #defaultroute # Doloèa, da bojo nekateri znaki pri prenosu ,ube¾ani` (ne glede na to, èe # drugi konec to zahteva z async control tabelo znakov). Znaki so doloèeni # kot niz ¹estnajsti¹kih ¹tevilk, loèenih z vejico. Pomnite, da je lahko tu # doloèen skoraj vsak znak, ne kot pri opciji asyncmap, ki dovoljuje le # kontrolne znake. Znaki, ki ne morejo biti ube¾ani so tisti z vrednostmi # 0x20 - 0x3f ali 0x5e. #escape 11,13,ff # Ne uporabljaj linij za nadzor modema. #local # Doloèa, naj pppd zaklene serijsko napravo z kljuèem UUCP stila za # ekskluziven dostop do naprave. #lock # Uporabi linije za nadzor modema. Na Ultrixu ta opcija vkljuèuje strojno # kontrolo pretoka, kot opcija crtscst. (Ta opcija ni popolnoma # implementirana.) #modem # Nastavi vrednost MRU [Maximum Receive Unit] za pogajanje na <n> . Pppd bo # od drugega konca zahteval, da ne po¹ilja veèjih paketov. Najmanj¹a # vrednost je 128. Privzeta vrednost je 1500. Za poèasne povezave je # priporoèena vrednost 296 (40 bytov za TCP/IP glavo in 256 bytov # podatkov). #mru 542 # Nastavi vmesnikovo omre¾no masko na <n>, ki je 32-bitna maska v zapisu # ,,decimal dot`` (npr. 255.255.255.0) #netmask 255.255.255.0 # Razveljavi privzeto obna¹anje, ko ni doloèen noben lokalni IP naslov, ki # je, da ga posku¹a (èe je mogoèe) dobiti iz gostiteljskega imena. S to opcijo # bo drugi konec moral podati lokalni IP naslov med IPCP pogajanjem (razen èe # je doloèen v ukazni vrstici ali v datoteki options). #noipdefault # Omogoèi ,pasivno` opcijo v LCP. S to opcijo bo pppd posku¹al ustvariti # povezavo. Èe ne bo prejel nobenega odgovora, bo èakal na veljaven LCP # paket od drugega konca, namesto da bi se (brez te opcije) prekinil. #passive # S to opcijo pppd ne bo oddal nobenega LCP paketa, dokler ne bo dobil # veljavnega LCP paketa od drugega konca (kot ,passive` opcija pri starej¹ih # verzijah pppd-ja). #silent # Ne zahtevaj ali dovoli pogajanja o kakr¹nihkoli LCP in IPCP opcijah # (uporabi privzete vrednosti). #-all # Onemogoèi pogajanje o Address/Control stiskanju (uporabi privzete # vrednosti, t.j. brez address/control polja). #-ac # Onemogoèi pogajanje asyncmap-a (uporabi privzetega, t.j. ubeg vseh # kontrolnoh znakov). #-am # Ne razcepi se in pojdi v ozadje (sicer bo pppd naredil tako, èe je # doloèena serijska naprava). #-detach # Onemogoèi pogajanje o IP naslovu (s to opcijo mora biti oddaljen IP naslov # podan v ukazni vrstici ali datoteki options). #-ip # Onemogoèi dogovarjanje magiène ¹tevilke. S to opcijo pppd ne more zaznati, # èe je linija zanka. #-mn # Onemogoèi dogovarjanje MRU [Maximum Receive Unit] (uporabi privzeto, 1500). #-mru # Onemogoèi kompresijo protokolnega polja. (uporabi privzeto, brez # kompresije) #-pc # Zahtevaj od drugega konca, da se predstavi z uporabo PAP-a. To zahteva # DVOSMERNO avtentikacijo - NE uporabljajte tega, ko se povezujete s PIS-om, # ker bo zahtevalo od PIS-ovega raèunalnika, da se vam predstavi (in tega ne # bo mogel). #+pap # Ne pristani na PAP avtentikacijo. #-pap # Zahtevaj od drugega konca, da se predstavi s CHAP-om. [Cryptographic # Handshake Authentication Protocol]. # To zahteva DVOSMERNO avtentikacijo - NE uporabljajte tega pri povezovanju # s PIS-om, ker bo zahtevalo od njegovega raèunalnika, da se predstavi vam. #+chap # Ne pristani na CHAP avtentikacijo. #-chap # Onemogoèi pogajanje o Van Jacobsonovem kompresiranju IP glave (uporabi # privzeto, brez kompresije). #-vj # Poveèaj razhro¹èevalni nivo (isto kot -d). Èe je ta opcija podana, bo pppd # zapisal vsebino vseh kontrolnih paketov, ki jih sprejme, v berljivi # obliki. Paketi bodo zapisani v sistemski dnevnik. Te informacije lahko # spravite doloèeno v datoteko, preberite man 5 syslog.conf. #debug # Pripni ime domene <d> lokalnemu gostiteljskemu imenu zaradi avtentikacije. # Èe vam, naprimer, funkcija gethostname() vrne porsche, polno ime domene pa # je porsche.Quotron.COM, uporabite to opcijo s parametrom Quotron.COM. #domain <d> # Omogoèi razhro¹èevalno kodo v PPP gonilniku v jedru. Parameter n je # ¹tevilka, sestavljena iz vsote sledeèih vrednosti: # 1 - splo¹na razhro¹èevalna sporoèila # 2 - izpisala se bo vsebina prispelih paketov # 4 - izpisala se bo vsebina oddanih paketov #kdebug n # Nastavi vrednost MTU [Maximum Transfer Unit] na <n>. Razen èe drugi konec # zahteva manj¹e pakete med MRU pogajanjem, bo pppd zahteval, da jedro # po¹ilja najveè n-bajtne pakete èez ppp vmesnik. #mtu <n> # Nastavi ime lokalnega sistema za avtentikacijo na <n>. Za PAP/CHAP bo to # moralo verjetno biti nastavljeno na va¹e uporabni¹ko ime. #name <n> # Nastavi uporabni¹ko ime za avtentikacijo s PAP-om na <u>. # NE uporabljajte tega, èe uporabljate name. #user <u> # Prisili uporabo lokalnega gostiteljskega imena kot imena za avtentikacijo # (povozi opcijo name). #usehostname # Nastavi ime oddaljenega sistema za avtentikacijo na <n> #remotename <n> # dodaj vnos IP ¹tevilko drugega konca in lokalnim Ethernet naslovom v ARP # [Address Resolution Protocol] tabelo tega sistema. #proxyarp # Uporabi sistemsko bazo gesel za PAP avtentikacijo. #login # S to opcijo bo pppd poslal LCP zahtevo ,echo` vsakih n sekund. Pod Linuxom # je zahteva echo poslana, ko drugi konec n sekund ne po¹lje nièesar. Normalno # mora oddaljeni konec poslati odgovor ,echo`. Ta opcija se lahko uporabi v # povezavi z lcp-echo-failure opcijo za zaznavanje, da drugi konec ni veè # povezan. #lcp-echo-interval <n> # S to opcijo bo pppd predvideval, da je drugi konec mrtev, èe po n echo # zahtevah ni dobil LCP echo odgovora. Èe se to zgodi, bo prekinil povezavo. # Uporaba te opcije zahteva nenièelni parameter lcp-echo-interval. Ta opcija # se lahko uporabi za prekinitev povezave, ko je bila fizièno prekinjena # (naprimer ko modem prekine linijo) v primerih, ko strojni nadzor modema ni # mo¾en. #lcp-echo-failure <n> # Nastavi LCP restart interval (èas po katerem se paket znova po¹lje) na <n> # sekund. (privzeto 3) #lcp-restart <n> # Nastavi najveèje ¹tevilo LCP terminate zahtev na <n> (privzeto 3). #lcp-max-terminate <n> # Nastavi najveèje ¹tevilo LCP configure zahtev na <n> (privzeto 10). # Nekateri PPP stre¾niki se poèasi za¾enejo. Mogoèe boste morali to vrednost # poveèati, èe dobivate sporoèila ,serial line looped back` in ste # PREPRIÈANI, da ste se pravilno prijavili na PPP stre¾nik. #lcp-max-configure <n> # Nastavi najveèje ¹tevilo vrnjenih LCP configure-NAK-ov preden zaène¹ # po¹iljati configure-Reject na <n> (privzeto 10) #lcp-max-failure <n> # Nastavi IPCP restart interval na <n> sekund (privzeto 3). #ipcp-restart <n> # Nastavi najveèje ¹tevilo IPCP terminate zahtev na <n> (privzeto 3). #ipcp-max-terminate <n> # Nastavi najveèje ¹tevilo IPCP cobfigure zahtev na <n> (privzeto 10). #ipcp-max-configure <n> # Nastavi najveèje ¹tevilo vrnjenih IPCP configure-NAK-ov preden zaène¹ # po¹iljati configure-Rejecte na <n> (privzeto 10). #ipcp-max-failure <n> # Nastavi PAP restart interval na <n> sekund (privzeto 3). #pap-restart <n> # Nastavi najveèje ¹tevilo PAP authenticate zahtev na <n> (privzeto 10). #pap-max-authreq <n> # Nastavi CHAP restart interval na <n> sekund (privzeto 3). #chap-restart <n> # Nastavi najveèje ¹tevilo CHAP zahtev na <n> (privzeto 10). #chap-max-challenge <n> # S to opcijo bo pppd zahteval CHAP avtentikacijo vsakih <n> sekund. #chap-interval <n> # S to opcijo bo pppd sprejel idejo oddaljenega konca o lokalni IP ¹tevilki, # èeprav je bila lokalna ¹tevilka podana kot opcija. #ipcp-accept-local # S to opcijo bo pppd sprejel oddaljeno IP ¹tevilko, ki jo bo podal # oddaljeni konec, èeprav je bila ta podana kot opcija. #ipcp-accept-remote ______________________________________________________________________ 12.2. Katere mo¾nosti naj uporabim? (Brez PAP/CHAP) Kot vedno je to odvisno :-]. Navedene mo¾nosti bi morale delovati z veèino stre¾nikov. Èe to NE deluje, preberite datoteko s ¹ablono (/etc/ppp/options.tpl) in man strani za pppd in se pogovorite z administratorjem/slu¾bo za podporo uporabnikov ki skrbijo za stre¾nik, s katerim se povezujete. Vedeti morate tudi, da te skripte za povezovanje uporabljajo nekatere mo¾nosti v ukazni vrstici, da bi bile stvari bolj jasne in enostavne za spreminjanje. ______________________________________________________________________ # /etc/ppp/options (BREZ PAP/CHAP) # # Prepreèi pppd-ju, da bi se podvojil v ozadje -detach # # uporabljaj linije za nadzor modema modem # uporabi uucp zaklepanje za izkljuèen dostop do serijske naprave lock # uporabi strojni nadzor pretoka crtscts # ustvari privzeto pot v usmerjevalni tabeli defaultroute # NE nastavi nobenih ,ube¾nih` kontrolnih sekvenc asyncmap 0 # po¹iljaj pakete z najveè 552 bajti mtu 552 # sprejemaj pakete z najveè 552 bajti mru 552 # #-------KONEC VZORÈNE DATOTEKE /etc/ppp/options (brez PAP/CHAP) ______________________________________________________________________ 13. Èe va¹ PPP stre¾nik uporablja PAP (Password Authentication Protocol) Èe stre¾nik, s katerim se povezujete, zahteva avtentikacijo PAP ali CHAP, imate malenkost veè dela. Zgornji datoteki z mo¾nostmi dodajte sledeèe vrstice ______________________________________________________________________ # # prisili pppd, da uporabi uporabni¹ko pri PIS-u kot ,gostiteljsko ime` med # avtentikacijo name <va¹e uporabni¹ko ime pri PIS-u> # to vrstico morate spremeniti # # Èe imate PPP stre¾nik in morate prisiliti uporabo PAP/CHAP, odstranite # znak ,#` pred pravo opcijo. NE uporabljajte tega, èe se povezujete s PPP # stre¾nikom. #+chap #+pap # # Èe uporabljate ©IFRIRANA gesla v datoteki /etc/ppp/pap-secrets, odstranite # znak ,#` na zaèetku sledeèe vrste. # Opomba: to NI isto kot MS ¹ifrirana gesla, ki se jih da nastaviti v MS # RAS-u na Windows NT. #+papcrypt ______________________________________________________________________ 13.1. Uporaba MSCHAP-a Microsoft Windows NT RAS lahko uporablja variacijo CHAP-a (Challenge/Handshake Authentication Protocol). V datoteki tar z izvorno kodo PPP-ja boste na¹li datoteko README.MSCHAP80, ki obravnava to. Ali stre¾nik zahteva avtentikacijo s tem protokolom boste ugotovili z omogoèenjem odkrivanja napak (,,razhro¹èevanje``) v pppd-ju. Èe stre¾nik zahteva tako avtentikacijo, boste videli take vrstice ______________________________________________________________________ rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <auth chap 80> <magic 0x46a3>] ______________________________________________________________________ Pomemben podatek je auth chap 80. Da bi uporabljali MS CHAP, morate prevesti pppd, da bo to podpiral. Oglejte si datoteko README.MSCHAP80 za navodila za prevajanje in uporabo te variacije. Trenutno to omogoèa le povezavo Linux PPP odjemalca z MS Windows NT stre¾nikom. NE podpira uporabe MSCHAP80 avtentikacije na Linux stre¾niku. 13.2. PAP/CHAP secrets datoteka Èe uporabljate pap ali chap avtentikacijo, morate ustvariti datoteki s ,,skrivnostmi``. To sta: ______________________________________________________________________ /etc/ppp/pap-secrets /etc/ppp/chap-secrets ______________________________________________________________________ Biti morata last uporabnika root, skupine root in imeti pravice 740 zaradi varnosti. Najprej morate o PAP-u in CHAP-u vedeti to, da sta zasnovana za avtentikacijo raèunalni¹kih sistemov, ne uporabnikov. ,,Huh? Kak¹na je razlika?`` vas sli¹im spra¹evati. Ko je va¹ raèunalnik ustvaril PPP povezavo s stre¾nikom, jo lahko uporablja VSAK uporabnik na va¹em sistemu, ne samo vi. Zato lahko z uporabo PPP-ja ustvarite povezavo dveh lokalnih omre¾ij v omre¾je ¹irokega dosega (WAN). PAP lahko (in CHAP to tudi NAREDI) zahteva dvosmerno avtentikacijo - veljavno ime in geslo je potrebno na obeh vpletenih straneh. Kljub temu pa to NI naèin na katerega veèina PPP stre¾nikov ponuja klicne povezave s PAP avtentikacijo. Va¹ PIS vam bo verjetno dal uporabni¹ko ime in geslo da bi se povezali z njegovim sistemom. Va¹ega PIS-a sploh ne zanima ime va¹ega raèunalnika, zato boste verjetno morali uporabiti va¹e uporabni¹ko ime kot ime va¹ega raèunalnika. To boste dosegli z uporabo pppd opcije name uporabni¹ko ime. Da bi uporabili uporabni¹ko ime, katerega vam je dodelil va¹ PIS, dodajte vrstico ______________________________________________________________________ name va¹e_uporabni¹ko_ime_pri_PISu ______________________________________________________________________ v va¹o datoteko /etc/ppp/options. Naèeloma bi morali za PAP uporabiti opcijo user va¹e_uporabni¹ko_ime_pri_PISu, vendar je pppd dovolj pameten, da uporabi name kot user, kadar mora uporabiti PAP. Prednost uporabe name je v tem, da je na voljo tudi za CHAP. Ker se PAP uporablja za avtentikacijo raèunalnikov, bi morali doloèiti tudi ime raèunalnika na drugi strani linije. Ker pa ima veèina ljudi samo enega PIS-a, lahko uporabite zvezdico (*) za ime oddaljenega raèunalnika v datoteki secrets. Potrebno je tudi omeniti, da mnogo PIS-ov upravlja veè terminalskih stre¾nikov, na katere so prikljuèeni modemi - vsakega z drugim imenom, toda dosegljivih prek ISTE telefonske ¹tevilke. V takih primerih je zelo te¾ko vnaprej vedeti, kako bo ime raèunalniku, na katerega se bomo prikljuèili. 13.3. Datoteka PAP secrets Datoteka /etc/ppp/pap-secrets izgleda takole ______________________________________________________________________ # Gesla za avtentikacijo z uporabo PAP-a # odjem. stre¾n. geslo sprejemljivi lokalni IP naslovi ______________________________________________________________________ ©tiri polja so loèena s tabulatorjem, zadnje je lahko prazno (kar hoèete za povezavo z dinamiènimi in verjetno tudi statiènimi IP ¹tevilkami). Recimo da vam je PIS dodelil uporabni¹ko ime fred in geslo flintstone. V datoteki /etc/ppp/options[.ttySx] nastavite opcijo name fred in nastavite datoteko /etc/ppp/pap-secrets: ______________________________________________________________________ # Gesla za avtentikacijo z uporabo PAP-a # odjem. stre¾n. geslo sprejemljivi lokalni IP naslovi fred * flintstone ______________________________________________________________________ To pove pppd-ju, naj za ime raèunalnika uporabi fred (èeprav ni pravo ime raèunalnika) in za VSAK stre¾nik uporabi geslo flintstone. Ni vam treba vpisati lokalnega IP naslova, razen èe morate VSILITI doloèen lokalni statièni IP naslov. Èetudi to posku¹ate, verjetno ne bo delovalo, ker veèina PPP stre¾nikov (iz varnostnih razlogov) ne dovoli oddaljenemu sistemu nastaviti IP ¹tevilke. 13.4. Datoteka CHAP secrets To zahteva da imate vzajemne avtentikacijske metode - kar pomeni da morate dovoliti da se va¹ raèunalnik predstavi stre¾niku IN da se stre¾nik predstavi va¹emu raèunalniku. Èe je va¹ raèunalnik fred in oddaljeni barney, bi va¹ raèunalnik imel name fred remotename barney, oddaljeni pa name barney remotename fred v datoteki /etc/ppp/options.ttySx. Fredova datoteka /etc/chap-secrets bi izgledala takole, ______________________________________________________________________ # gesla za avtentikacijo z uporabo CHAP-a # odjem. stre¾n. geslo sprejemljivi lokalni IP naslovi fred barney flintstone barney fred wilma ______________________________________________________________________ takole pa barneyeva ______________________________________________________________________ # gesla za avtentikacijo z uporabo CHAP-a # odjem. stre¾n. geslo sprejemljivi lokalni IP naslovi barney fred flintstone fred barney wilma ______________________________________________________________________ Zapomnite si, da morata oba raèunalnika imeti vnose za dvosmerno avtentikacijo. To dovoli, da se lokalni raèunalnik predstavi oddaljenemu IN oddaljeni lokalnemu. 13.5. Veè povezav s PAP avtentikacijo Nekateri uporabniki se povezujejo z veè kot enim stre¾nikom z uporabo PAP-a. Èe imajo na vsakem drugo uporabni¹ko ime, to sploh ni problem. Nekateri uporabniki pa imajo na dveh (ali celo veè) stre¾nikih enako uporabni¹ko ime. To ustvari problem izbire pravilne vrstice iz datoteke /etc/ppp/pap-secrets. Kot verjetno prièakujete, PPP ponuja mehanizem za premaganje te te¾ave. PPP vam dovoli, da nastavite ,,domnevno ime`` za oddaljeni raèunalnik z uporabo pppd opcije remotename. Recimo da imate uporabni¹ko ime fred na dveh stre¾nikih. V datoteko /etc/ppp/pap-secrets vpi¹ete nekaj takega: ______________________________________________________________________ fred pppserver1 barney fred pppserver2 wilma ______________________________________________________________________ Za povezavo s stre¾nikom pppserver1 uporabite name fred remotename pppserver1 v va¹i datoteki options, za stre¾nik pppserver2 name fred remotename pppserver2. Ker lahko izberete datoteko s ppp opcijami z uporabo opcije file filename, lahko napi¹ete skripto za povezavo z vsakim va¹im PPP stre¾nikom, ki bo izbrala pravilno remotename opcijo. 14. Roèna vzpostavitev PPP povezave Ko ste uredili datoteki /etc/ppp/options in /etc/resolv.conf (in po potrebi tudi /etc/ppp/pap|chap-secrets), lahko preizkusite nastavitve z roèno vzpostavitvijo PPP povezave. (Ko bo PPP povezava delovala, bomo proces avtomatizirali). Za ta preizkus mora biti va¹ komunikacijski program sposoben izhoda BREZ resetiranja modema. Minicom to lahko naredi - ALT Q (ali v starej¹ih verzijah CTRL A Q) Preprièajte se, da ste prijavljeni kot root. Za¾enite komunikacijski program (naprimer minicom), poklièite PPP stre¾nik in se prijavite kot navadno. Èe morate za zagon PPP-ja na stre¾niku vpisati ukaz, ga vpi¹ite. Sedaj boste kot prej videli smeti. Èe uporabljate pap ali chap, bi morali takoj po povezavi - brez prijavljanja - z oddaljenim raèunalnikom videti smeti (èeprav se to na nekaterih stre¾nikih ne zgodi. Poskusite pritisniti Enter in poglejte èe se zaènejo nabirati smeti). Sedaj zapustite komunikacijski program brez resetiranja modema (ALT Q ali CTRL A Q v minicomu) in na Linuxovem pozivu (kot root) vtipkajte ______________________________________________________________________ pppd -d -detach /dev/ttySx 38400 & ______________________________________________________________________ Opcija -d vkljuèi razhro¹èevanje - pogovor za vzpostavitev ppp povezave se bo vpisal v sistemski dnevnik - kar je uporabno, èe boste imeli te¾ave. Luèke na va¹em modemu bi morale utripati medtem ko se vzpostavlja povezava PPP. Da se vzpostavi bo trajalo nekaj èasa. Na tej toèki lahko pogledate vmesnik za PPP z ukazom ______________________________________________________________________ ifconfig ______________________________________________________________________ Kot dodatek k Ethernet in loop back napravam, ki jih imate, bi morali videti nekaj takega: ______________________________________________________________________ ppp0 Link encap:Point-Point Protocol inet addr:10.144.153.104 P-t-P:10.144.153.51 Mask:255.255.255.0 UP POINTOPOINT RUNNING MTU:552 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0 ______________________________________________________________________ Kjer je * inet addr:10.144.153.10 IP ¹tevilka na va¹i strani povezave, * P-t-P:10.144.153.5 STRE®NIKOVA IP ¹tevilka. (Seveda ifconfig ne bo izpisal teh ¹tevilk, ampak tiste, ki jih uporablja va¹ PPP stre¾nik.) Opomba: ifconfig vam pove tudi, da je povezava VZPOSTAVLJENA in TEÈE! Èe ne dobite nobenih ppp naprav ali nekaj takega ______________________________________________________________________ ppp0 Link encap:Point-Point Protocol inet addr:0.0.0.0 P-t-P:0.0.0.0 Mask:0.0.0.0 POINTOPOINT MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0 ______________________________________________________________________ Va¹a PPP povezava ni bila vzpostavljena... oglejte si poznej¹i razdelek za razhro¹èevanje! Morali bi videti tudi pot do oddaljenega gostitelja (in naprej). Za to uporabite ukaz ______________________________________________________________________ route -n ______________________________________________________________________ Morali bi videti nekaj takega: ______________________________________________________________________ Kernel routing table Destination Gateway Genmask Flags MSS Window Use Iface 10.144.153.3 * 255.255.255.255 UH 1500 0 1 ppp0 127.0.0.0 * 255.0.0.0 U 3584 0 11 lo 10.0.0.0 * 255.0.0.0 U 1500 0 35 eth0 default 10.144.153.3 * UG 1500 0 5 ppp0 ______________________________________________________________________ Posebno pomembno je, da vidite DVA vnosa, ki ka¾eta na na¹ ppp vmesnik. Prvi je pot do GOSTITELJA (na katero opozarja zastavica H) in nam omogoèa videti gostitelja, na katerega smo prikljuèeni - toda niè dlje. Druga je privzeta pot (ustvarjena z uporabo izbire pppd-ja defaultroute). To je pot, ki pove na¹emu raèunalniku z Linuxom, naj po¹lje vse pakete, ki NISO namenjeni na lokalni Ethernet(-e) - za katere imamo specifiène omre¾ne poti - PPP stre¾niku samemu. Nato je PPP stre¾nik odgovoren za usmerjanje paketov v Interet in usmerjanje povratnih paketov nazaj k nam. Èe ne vidite usmerjevalne tabele z dvema vnosoma, je nekaj narobe. Èe va¹ sistemski dnevnik poka¾e sporoèilo, da pppd ni zamenjal obstojeèe privzete poti, potem privzeta pot ka¾e na va¹ Ethernet vmesnik - ki MORA biti zamenjana z specifièno omre¾no potjo: IMATE LAHKO SAMO ENO PRIVZETO POT!!! Morali boste preiskati va¹e inicializacijske datoteke, da najdete mesto, kjer je nastavljena privzeta pot (uporabljen bo ukaz route add default...). Spremenite to v nekaj takega kot route add net.... Sedaj preizkusite povezavo s ,,pinganjem`` stre¾nika na njegovi IP ¹tevilki, kot jo poroèa ifconfig, npr. ______________________________________________________________________ ping 10.144.153.51 ______________________________________________________________________ Prejeti bi morali nekaj takega: ______________________________________________________________________ PING 10.144.153.51 (10.144.153.51): 56 data bytes 64 bytes from 10.144.153.51: icmp_seq=0 ttl=255 time=328.3 ms 64 bytes from 10.144.153.51: icmp_seq=1 ttl=255 time=190.5 ms 64 bytes from 10.144.153.51: icmp_seq=2 ttl=255 time=187.5 ms 64 bytes from 10.144.153.51: icmp_seq=3 ttl=255 time=170.7 ms ______________________________________________________________________ Ta izpis se bo nadaljeval v neskonènost - za ustavitev pritisnite CTRL C, takrat boste dobili nekaj informacij: ______________________________________________________________________ --- 10.144.153.51 ping statistics --- 4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max = 170.7/219.2/328.3 ms ______________________________________________________________________ Zaenkrat vse dobro. Sedaj posku¹ajte ,,pingat`` gostitelja po imenu (ne ime samega PPP stre¾nika, ampak nekega drugega stre¾nika, za katerega veste, da bo verjetno tekel...). Naprimer: ______________________________________________________________________ ping sunsite.unc.edu ______________________________________________________________________ Tokrat bo nekaj presledka, ko bo Linux iskal IP ¹tevilko za polno ime domene, katero ,,pingate``, od DNS-a, ki ste ga vpisali v /etc/resolv.conf - torej ne skrbite (videli pa boste utripanje modemovih luèk). Kmalu boste videli podoben izpis: ______________________________________________________________________ PING sunsite.unc.edu (152.2.254.81): 56 data bytes 64 bytes from 152.2.254.81: icmp_seq=0 ttl=254 time=190.1 ms 64 bytes from 152.2.254.81: icmp_seq=1 ttl=254 time=180.6 ms 64 bytes from 152.2.254.81: icmp_seq=2 ttl=254 time=169.8 ms 64 bytes from 152.2.254.81: icmp_seq=3 ttl=254 time=170.6 ms 64 bytes from 152.2.254.81: icmp_seq=4 ttl=254 time=170.6 ms ______________________________________________________________________ Znova ustavite itpis s CTRL C in poglejte statistiko... ______________________________________________________________________ --- sunsite.unc.edu ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 169.8/176.3/190.1 ms ______________________________________________________________________ Èe ne dobite odgovora, poskusite pingati IP naslov DNS stre¾nika pri va¹em PIS-u. Èe dobite odgovor, imate oèitno te¾avo z /etc/resolv.conf. Èe to ne deluje, imate usmerjevalni problem, ali pa ima va¹ PIS probleme z usmerjanjem paketov k vam. Preverite va¹o usmerjevalno tabelo, kot je opisano zgoraj, in èe je ta v redu poklièite va¹ega PIS-a. Dober test PIS-a je uporaba drugega operacijskega sistema za povezavo. Èe lahko pridete mimo PIS-a s tem, potem je napaka na va¹em koncu. Èe vse deluje, prekinite povezavo z ukazom ______________________________________________________________________ ppp-off ______________________________________________________________________ Po kratkem premoru, bi moral modem sprostiti linijo. Èe to ne deluje, izklopite modem ali za¾enite komunikacijski program in prekinite modem z +++ in nato odlo¾ite z ATH0 ko dobite odziv OK. Mogoèe boste morali tudi odstraniti datoteko lock, ki jo ustvari pppd: ______________________________________________________________________ rm -f /var/lock/LCK..ttySx ______________________________________________________________________ 15. Avtomatizacija povezav - priprava povezovalnih skript Medtem ko se lahko nadaljujete prijavljati roèno kot zgoraj, je dosti bolj èedno, da naredite nekaj skript, ki to delo opravijo namesto vas. Skupina skript avtomatizira prijavljanje in zagon PPP-ja, tako da je vse kar morate narediti (kot root ali èlan PPP skupine) za vzpostavitev povezave, vnos enega samega ukaza 15.1. Skripte za uporabni¹ko ime/geslo avtentikacijo Èe va¹ PIS NE zahteva uporabe PAP/CHAP-a, so to skripte za vas! Èe je ppp paket pravilno name¹èen, bi morali imeti dve vzorèni datoteki. Za PPP 2.1.2 sta v /usr/sbin, za PPP 2.2 pa v /etc/ppp/scripts/. Imenujeta se: za PPP-2.1.2 ppp-on ppp-off in za PPP-2.2 ppp-off ppp-on ppp-on-dialer Èe uporabljate PPP 2.1.2, vas rotim, da zbri¹ete vzorèni datoteki. Z njima so mo¾ne te¾ave - in ne govorite mi, da delujeta v redu - tudi jaz sem ju uporabljal dosti èasa (in priporoèal v prvi verziji tega HOWTO-ja)! Za dobro uporabnikov PPP 2.1.2, sta tu BOLJ©A primera, vzeta iz distribucije PPP 2.2. Priporoèam, da skopirate ti skripti namesto starih skript PPP 2.1.2. 15.2. skripta ppp-on To je prva izmed PARA skript, ki dejansko vzpostavita povezavo. ______________________________________________________________________ #!/bin/sh # # Skripta za vzpostavitev PPP povezave. To je prva izmed para skript. # Te skripte niso varne, ker je geslo vidno z uporabo ukaza ,,ps``. # Vsekakor pa sta skripti enostavni. # # To so parametri. Po potrebi jih spremenite. TELEPHONE=555-1212 # Telefonska ¹tevilka ACCOUNT=janez # Uporabni¹ko ime PASSWORD=geselce # Geslo za to uporabni¹ko ime LOCAL_IP=0.0.0.0 # Lokalna IP ¹tevilka, èe je znana, sicer 0.0.0.0 REMOTE_IP=0.0.0.0 # Oddaljena IP ¹tevilka. Navadno 0.0.0.0 NETMASK=255.255.255.0 # Pravilen netmask, èe je potreben # # Izvozimo jih, da bodo na voljo skripti ,,ppp-on-dialer`` export TELEPHONE ACCOUNT PASSWORD # # To je lokacija skripte, ki poklièe in se prijavi. Prosimo uporabljajte # absolutne poti, ker spremenljivke $PATH tu ni. (Kaj takega pri ,,root-u`` # bi bila varnostna luknja, zato ne spra¹ujte.) # DIALER_SCRIPT=/etc/ppp/ppp-on-dialer # # Vzpostavimo povezavo # # exec /usr/sbin/pppd debug /dev/ttySx 38400 \ $LOCAL_IP:$REMOTE_IP \ connect $DIALER_SCRIPT ______________________________________________________________________ Tu je skripta ppp-on-dialer ______________________________________________________________________ #!/bin/sh # # To je drugi del povezovalnih skript. Vzpostavil bo povezavo. # /usr/sbin/chat -v \ TIMEOUT 3 \ ABORT '\nBUSY\r' \ ABORT '\nNO ANSWER\r' \ ABORT '\nRINGING\r\n\r\nRINGING\r' \ '' \rAT \ 'OK-+++\c-OK' ATH0 \ TIMEOUT 30 \ OK ATDT$TELEPHONE \ CONNECT '' \ ogin:--ogin: $ACCOUNT \ assword: $PASSWORD ______________________________________________________________________ Za PPP-2.2, izgleda skripta ppp-off takole: ______________________________________________________________________ #!/bin/sh ###################################################################### # # Ugotovimo napravo, ki jo je treba ,,pokonèati``. # if [ "$1" = "" ]; then DEVICE=ppp0 else DEVICE=$1 fi ###################################################################### # # Èe je ppp0 pid datoteka prisotna, program teèe. Ustavimo ga. if [ -r /var/run/$DEVICE.pid ]; then kill -INT `cat /var/run/$DEVICE.pid` # # Èe ukaz kill ne deluje, na tem pid-u ne teèe noben proces. Lahko pomeni # tudi, da bo lock datoteka ostala. Dobro bi bilo zbrisati tudi lock datoteko. if [ ! "$?" = "0" ]; then rm -f /var/run/$DEVICE.pid echo "NAPAKA: odstranjena stara pid datoteka" exit 1 fi # # Uspeh. Pustimo pppd-ju poèistit lastno svinjarijo. echo "PPP povezava na $DEVICE konèana." exit 0 fi # # na ppp0 ne teèe ppp proces echo "NAPAKA: na $DEVICE ni PPP povezave" exit 1 ______________________________________________________________________ 15.3. Urejanje priskrbljenih PPP zagonskih skript Ker so nove skripte v dveh delih, jih bomo urejali posebej. 15.3.1. Skripta ppp-on Skripto boste morali urediti, da bo odra¾ala VA©E uporabni¹ko ime pri va¹em PIS-u, VA©E geslo pri va¹em PIS-u in telefonsko ¹tevilko va¹ega PIS-a. Vsaka od vrst kot TELEPHONE= dejansko ustvari lupinsko spremenljivko, ki vsebuje podatek desno od znaka ,=` (Seveda brez komentarjev). Uredite vsako od teh vrst, da bo pravilna za va¹ega PIS-a in povezavo. Ker IP ¹tevilko (èe je potrebno) nastavite v /etc/ppp/options/, IZBRI©ITE vrstico ______________________________________________________________________ $LOCAL_IP:$REMOTE_IP \ ______________________________________________________________________ Preverite tudi , da spremenljivka DIALER_SCRIPT ka¾e na polno pot in ime skripte, ki jo boste dejansko uporabljali. Èe ste jo torej premaknili ali preimenovali, popravite ppp-on skripto! 15.3.2. ppp-on-dialer skripta To je druga od skript, ki dejansko vzpostavijo na¹o ppp povezavo. Opomba: chat skripta je navadno v eni vrstici. Leve po¹evnice so uporabljene za nadaljevanje vrstice èez veè fiziènih vrst (za èlove¹ko branje) in ne tvorijo same skripte. Vseeno pa jo je dobro podrobno pogledati, da razumemo kaj naj bi dejansko poèela! 15.4. Kaj Chat skripta pomeni... Chat skripta je zaporedje parov ,,prièakovani niz``, ,,poslani niz``. Zapomnite si, da ZMERAJ nekaj prièakujemo, preden nekaj po¹ljemo. Èe moramo nekaj poslati, ne da bi nekaj prejeli, moramo uporabiti prazen prièakovan niz (viden kot '') in podobno, ko nekaj prièakujemo brez po¹iljanja! Èe niz sestoji iz veè besed (npr. NO CARRIER), moramo niz dati v narekovaje, da ga chat vidi kot celoto. chat vrstica v na¹i skripti je: ______________________________________________________________________ exec /usr/sbin/chat -v ______________________________________________________________________ Ta poklièe chat, -v mu pove, naj ves svoj V/I (vhod/izhod) vpi¹e v sistemski dnevnik (navadno /var/log/messages). Ko skripta chat deluje zanesljivo, zbri¹ite -v, da ne boste imeli nepotrebnega smetja v va¹em dnevniku. ______________________________________________________________________ TIMEOUT 3 ______________________________________________________________________ To nastavi, koliko èasa chat èaka na niz, ki ga prièakuje (v sekun dah). Mogoèe boste morali to poveèati na 5 ali 10 sekund, èe imate res poèasen modem! ______________________________________________________________________ ABORT '\nBUSY\r' ______________________________________________________________________ Èe sprejme niz BUSY, prekine operacijo. ______________________________________________________________________ ABORT '\nNO ANSWER\r' ______________________________________________________________________ Podobno. ______________________________________________________________________ ABORT '\nRINGING\r\n\r\nRINGING\r' ______________________________________________________________________ Èe chat veèkrat sprejme niz RINGING, prekine operacijo. To je zato, ker vas po telefonu nekdo klièe! ______________________________________________________________________ '' \rAT ______________________________________________________________________ Chat ne prièakuje nièesar, in po¹lje niz AT. ______________________________________________________________________ OK-+++\c-OK ATH0 ______________________________________________________________________ Ta niz je nekoliko bolj kompliciran, ker uporablja nekatere chatove mo¾nosti odpravljanja napak. Pravi pa tole... prièakuj OK, èe ga NE sprejme¹ (ker modem ni v ukaznem naèinu), po¹lji +++ (standardni Hayes kompatibilni ukaz, ki modem vrne v ukazni naèin) in prièakuj OK. Potem po¹lji ATH0 (niz za prekinitev linije). To omogoèa, da je skripta kos situaciji, ko modem obtièi na liniji! ______________________________________________________________________ TIMEOUT 30 ______________________________________________________________________ Nastavi èas na 30 sekund za preostanek skripte. Èe imate te¾ave z zakljuèevanjem chat skripte zaradi timeouta, poveèajte vrednost na 45 sekund ali veè. ______________________________________________________________________ OK ATDT$TELEPHONE ______________________________________________________________________ Prièakuj OK (modemov odgovor na ukaz ATH0) in klièi ¹tevilko, ki jo ¾elimo klicati. ______________________________________________________________________ CONNECT '' ______________________________________________________________________ Prièakuj CONNECT (kar modem po¹lje, ko se oddaljeni modem oglasi) in ne po¹lji nièesar. ______________________________________________________________________ ogin:--ogin: $ACCOUNT ______________________________________________________________________ Znova vgrajenega nekaj okrevanja po napakah. Prièakuj login poziv (...ogin:), èe pa ga ne dobi¹ do timeouta, po¹lji return in zopet èakaj na poziv. Ko poziv prejme¹, po¹lji uporabni¹ko ime (shranjeno v lupinski spremenljivki $ACCOUNT). ______________________________________________________________________ assword: $PASSWORD ______________________________________________________________________ Prièakuj poziv za geslo in po¹lji svoje geslo (znova, shranjeno v lupinski spremenljivki). Ta chat skripta vsebuje nekaj sposobnosti okrevanja po napakah. Chat ima ¹e mnogo mo¾nosti, ki tukaj niso prikazane. Za podrobnosti si oglejte man 8 chat. 15.4.1. Zagon PPP-ja na stre¾niku Medtem ko je ppp-on-dialer skripta dobra za stre¾nike, ki samodejno za¾enejo pppd na stre¾niku, ko se prijavite, nekateri stre¾niki zahtevajo ekspliciten zagon PPP-ja na stre¾niku. Èe morate vnesti ukaz za zagon PPP-ja na stre¾niku, MORATE popraviti ppp-on-dialer skripto. Na koncu skripte (po vrstici z geslom) dodajte ¹e en prièakovano poslano par - Ta naj èaka na va¹ ukazni poziv (pazite na znake, ki imajo v Bourneovi lupini poseben pomen - kot so $ in [ ali ] (odprt in zaprt oglati oklepaj). Ko chat sprejme lupinski poziv, mora poslati ukaz za zagon ppp-ja, potreben na PPP stre¾niku va¹ega PIS-a. V mojem primeru, ima PPP stre¾nik standarden Linux Bash poziv ______________________________________________________________________ [hartr@kepler hartr]$ ______________________________________________________________________ in zahteva naj vpi¹em ______________________________________________________________________ ppp ______________________________________________________________________ za zagon PPP-ja na stre¾niku. Tu je dobro dovoliti nekaj okrevanja po napakah, tako da v mojem primeru uporabim ______________________________________________________________________ hartr--hartr ppp ______________________________________________________________________ to pravi naj, èe pred doloèenim èasom ne dobi poziva, chat po¹lje return in znova èaka na poziv. Ko ga sprejme, po¹lje niz ppp. Opomba: ne pozabite dodati \ na konec prej¹nje vrste, da chat misli, da je celotna skripta v eni vrsti! Na ¾alost nekateri stre¾niki producirajo razliène pozive! Mogoèe se boste morali roèno povezati veèkrat, da boste vedeli, kaj se dogaja in izbrali prave prièakovane nize. 15.5. Chat skripta za PAP/CHAP povezave Èe va¹ PIS uporablaj PAP/CHAP, je chat skripta mnogo bolj enostavna. Vse kar mora narediti je, da poklièe ¹tevilko, poèaka na povezavo in prepusti prijavljanje pppd-ju! ______________________________________________________________________ #!/bin/sh # # To je drugi del ppp-on skripte. Izvedel bo povezovanje za ¾eleno povezavo. # exec /usr/sbin/chat -v \ TIMEOUT 3 \ ABORT '\nBUSY\r' \ ABORT '\nNO ANSWER\r' \ ABORT '\nRINGING\r\n\r\nRINGING\r' \ '' \rAT \ 'OK-+++\c-OK' ATH0 \ TIMEOUT 30 \ OK ATDT$TELEPHONE \ CONNECT '' \ ______________________________________________________________________ 15.6. Pppd opciji debug in file option_file Kot smo ¾e videli, lahko vkljuèite izpis razhro¹èevalnih informacij z opcijo -d pppd-ju. Opcija ,debug` je enakovredna. Ker vzpostavljamo novo povezavo z novo skripto, to opcijo zaenkrat pustimo. (pozor: èe imate malo prostora na disku, lahko ta izpis hitro poveèa va¹ sistemski dnevnik in vas spravi v te¾ave - toda za kaj takega se morate poskusiti povezati kar nekajkrat). Ko enkrat vse deluje v redu, lahko to opcijo umaknete. Èe ste va¹o datoteko z mo¾nostmi imenovali drugaèe kot /etc/ppp/options ali /etc/ppp/options.ttySx, imenujte datoteko z uporabo opcije file pppd-ju - naprimer: ______________________________________________________________________ exec /usr/sbin/pppd debug file options.mojpis /dev/ttyS0 38400 \ ______________________________________________________________________ 16. Preizkus va¹e povezovalne skripte Odprite nov Xterm (èe ste v X-ih) ali odprite novo navidezno konzolo in se prijavite kot root. Tukaj vnesite ukaz tail -f /var/log/messages (ali kakorkoli se imenuje va¹ sistemski dnevnik). V prvem oknu (ali navidezni konzoli) vnesite ukaz ppp-on & (ali kakorkoli ste imenovali popravljeno verzijo /usr/sbin/ppp-on). Èe skripte ne po¾enete v ozadju z & na koncu ukaza, ne boste dobili nazaj poziva, dokler povezava ne bo prekinjena. Sedaj preklopite nazaj v okno, kjer se izpisuje va¹ sistemski dnevnik. Videli boste nekaj takega kot sledi (èe ste seveda uporabili opciji -v za chat in -d za pppd)....tu so chat skripta in odgovori vpisani v dnevnik, sledijo jim zagonski podatki pppd-ja: ______________________________________________________________________ Oct 21 16:09:58 hwin chat[19868]: abort on (NO CARRIER) Oct 21 16:09:59 hwin chat[19868]: abort on (BUSY) Oct 21 16:09:59 hwin chat[19868]: send (ATZ^M) Oct 21 16:09:59 hwin chat[19868]: expect (OK) Oct 21 16:10:00 hwin chat[19868]: ATZ^M^M Oct 21 16:10:00 hwin chat[19868]: OK -- got it Oct 21 16:10:00 hwin chat[19868]: send (ATDT722298^M) Oct 21 16:10:00 hwin chat[19868]: expect (CONNECT) Oct 21 16:10:00 hwin chat[19868]: ^M Oct 21 16:10:22 hwin chat[19868]: ATDT722298^M^M Oct 21 16:10:22 hwin chat[19868]: CONNECT -- got it Oct 21 16:10:22 hwin chat[19868]: send (^M) Oct 21 16:10:22 hwin chat[19868]: expect (ogin:) Oct 21 16:10:23 hwin chat[19868]: kepler login: -- got it Oct 21 16:10:23 hwin chat[19868]: send (hartr^M) Oct 21 16:10:23 hwin chat[19868]: expect (ssword:) Oct 21 16:10:23 hwin chat[19868]: hartr^M Oct 21 16:10:23 hwin chat[19868]: Password: -- got it Oct 21 16:10:23 hwin chat[19868]: send (??????^M) Oct 21 16:10:23 hwin chat[19868]: expect (hartr) Oct 21 16:10:24 hwin chat[19868]: [hartr -- got it Oct 21 16:10:24 hwin chat[19868]: send (ppp^M) Oct 21 16:10:27 hwin pppd[19872]: pppd 2.1.2 started by root, uid 0 Oct 21 16:10:27 hwin pppd[19873]: Using interface ppp0 Oct 21 16:10:27 hwin pppd[19873]: Connect: ppp0 <--> /dev/cua1 Oct 21 16:10:27 hwin pppd[19873]: fsm_sdata(LCP): Sent code 1, id 1. Oct 21 16:10:27 hwin pppd[19873]: LCP: sending Configure-Request, id 1 Oct 21 16:10:27 hwin pppd[19873]: fsm_rconfreq(LCP): Rcvd id 1. Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd MRU Oct 21 16:10:27 hwin pppd[19873]: (1500) Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd ASYNCMAP Oct 21 16:10:27 hwin pppd[19873]: (0) Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd MAGICNUMBER Oct 21 16:10:27 hwin pppd[19873]: (a098b898) Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd PCOMPRESSION Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: rcvd ACCOMPRESSION Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: lcp_reqci: returning CONFACK. Oct 21 16:10:27 hwin pppd[19873]: fsm_sdata(LCP): Sent code 2, id 1. Oct 21 16:10:27 hwin pppd[19873]: fsm_rconfack(LCP): Rcvd id 1. Oct 21 16:10:27 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 1, id 1. Oct 21 16:10:27 hwin pppd[19873]: IPCP: sending Configure-Request, id 1 Oct 21 16:10:27 hwin pppd[19873]: fsm_rconfreq(IPCP): Rcvd id 1. Oct 21 16:10:27 hwin pppd[19873]: ipcp: received ADDR Oct 21 16:10:27 hwin pppd[19873]: (10.144.153.51) Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: ipcp: received COMPRESSTYPE Oct 21 16:10:27 hwin pppd[19873]: (45) Oct 21 16:10:27 hwin pppd[19873]: (ACK) Oct 21 16:10:27 hwin pppd[19873]: ipcp: returning Configure-ACK Oct 21 16:10:28 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 2, id 1. Oct 21 16:10:30 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 1, id 1. Oct 21 16:10:30 hwin pppd[19873]: IPCP: sending Configure-Request, id 1 Oct 21 16:10:30 hwin pppd[19873]: fsm_rconfreq(IPCP): Rcvd id 255. Oct 21 16:10:31 hwin pppd[19873]: ipcp: received ADDR Oct 21 16:10:31 hwin pppd[19873]: (10.144.153.51) Oct 21 16:10:31 hwin pppd[19873]: (ACK) Oct 21 16:10:31 hwin pppd[19873]: ipcp: received COMPRESSTYPE Oct 21 16:10:31 hwin pppd[19873]: (45) Oct 21 16:10:31 hwin pppd[19873]: (ACK) Oct 21 16:10:31 hwin pppd[19873]: ipcp: returning Configure-ACK Oct 21 16:10:31 hwin pppd[19873]: fsm_sdata(IPCP): Sent code 2, id 255. Oct 21 16:10:31 hwin pppd[19873]: fsm_rconfack(IPCP): Rcvd id 1. Oct 21 16:10:31 hwin pppd[19873]: ipcp: up Oct 21 16:10:31 hwin pppd[19873]: local IP address 10.144.153.104 Oct 21 16:10:31 hwin pppd[19873]: remote IP address 10.144.153.51 ______________________________________________________________________ (Opomba: jaz uporabljam statiène IP ¹tevilke, zato je moj raèunalnik poslal te PPP stre¾niku. Èe uporabljate dinamiène IP ¹tevilke, tega ne boste videli.) Ta stre¾nik tudi potrebuje poseben ukaz za zagon ppp-ja na njegovem koncu. To izgleda v redu - kot prej testirajte s ,,pinganjem`` IP ¹tevilk in imen. Za¾enite va¹ spletni brskalnik in surfajte - povezani ste! 17. Prekinitev PPP povezave Ko ste konèali z PPP povezavo, uporabite standardni ppp-off ukaz za prekinitev. (pomnite - biti morate root ali èlan skupine PPP!). V sistemskem dnevniku bo nekaj takega: ______________________________________________________________________ Oct 21 16:10:45 hwin pppd[19873]: Interrupt received: terminating link Oct 21 16:10:45 hwin pppd[19873]: ipcp: down Oct 21 16:10:45 hwin pppd[19873]: default route ioctl(SIOCDELRT): Bad address Oct 21 16:10:45 hwin pppd[19873]: fsm_sdata(LCP): Sent code 5, id 2. Oct 21 16:10:46 hwin pppd[19873]: fsm_rtermack(LCP). Oct 21 16:10:46 hwin pppd[19873]: Connection terminated. Oct 21 16:10:46 hwin pppd[19873]: Exit. ______________________________________________________________________ Ne skrbite zaradi SIOCDELRT - to je le pppd, ki umira, in ni vam treba skrbeti. 18. Odpravljanje te¾av Obstaja morje razlogov, zakaj va¹a povezava ne deluje - chat ni uspel pravilno dokonèati svojega dela, imate motnje na liniji itd. Preglejte sistemski dnevnik za namige. 18.1. V jedro sem vkljuèil PPP podporo vendar... Zelo pogosta te¾ava je, da ljudje vkljuèijo PPP podporo v jedro, in ko posku¹ajo pognati pppd, se jedro prito¾i da ne podpira ppp-ja! Za tak¹no obna¹anje obstajajo razlièni razlogi. 18.1.1. Ali ste zagnali raèunalnik s pravim jedrom? Medtem ko ste prevedli jedro s posporo za ppp, ne poganjate pravega jedra. To se lahko zgodi, èe ne osve¾ite datoteke /etc/lilo.conf in po¾enete lilota. Dober test jedra lahko dobite z ukazom uname -a, ki bi moral izpisati tak¹no vrstico ______________________________________________________________________ Linux archenland 2.0.28 #2 Thu Feb 13 12:31:37 EST 1997 i586 ______________________________________________________________________ To izpi¹e verzijo jedra ter datum, ko je bilo jedro prevedeno - kar bi vam moralo dati kar dober namig, kaj se dogaja. 18.1.2. Ali ste vkljuèili ppp podporo kot modul? Èe ste prevedli podporo za ppp v jedru kot modul, toda niste prevedli modulov in jih namestili, lahko dobite tako napako. Preberite Kernel- HOWTO in datoteko README v /usr/src/linux! ©e ena mo¾nost v povezavi z moduli je, da prièakujete, da bodo potrebni moduli avtomatsko nalo¾eni, vendar ne poganjate kerneld-ja. (ki avtomatsko nalaga in odstranjuje module po potrebi). Preverite kerneld mini-HOWTO za navodila za namestitev kerneld-ja. 18.1.3. Ali uporabljate pravo verzijo PPP-ja za va¹e jedro? Z jedrom 2.0.x morate uporabljati ppp-2.2. Ppp-2.2 lahko uporabljate z jedri 1.2.x (èe popravite jedro), sicer morate uporabljati ppp 2.1.2. 18.1.4. Ali poganjate pppd kot root? Èe pppd-ja ne poganjate kot root (in pppd ni suid root), lahko prejmete to sporoèilo. 18.2. Moj modem se pove¾e, toda ppp se nikoli ne za¾ene Na to temo obstajajo brez¹tevilne variacije (poglejte v comp.os.linux...). ZELO pogosta napaka je, da ste nekaj zatipkali v va¹ih skriptah. Edina stvar, ki jo lahko naredite je, da zapisujete chatov pogovor med va¹im raèunalnikom z Linuxom in stre¾nikom v sistemski dnevnik (/var/log/messages) in greste skozi ta izpis vrsto po vrsto. Mogoèe se boste morali roèno prijaviti na stre¾nik, da stvari spet preverite. Dnevnik morate zelo pazljivo primerjati z dejanskimi pozivi in ves èas misliti, da imamo ljudje navado, da preberemo kar mislimo, da smo napisali, ne pa kar je dejansko napisano! 18.3. Sistemski dnevnik pravi: ,,serial line is not 8 bit clean ...`` Tudi na to obstajajo variacije - kot naprimer serial line looped back ipd., razlog pa je lahko ena (ali zaporedje) od ¹tevilnih stvari. Za razumevanje kaj se dogaja, je nujno nekoliko doumeti, kaj se dogaja ,,za odrom``, kjer nastopa pppd. Ko se pppd za¾ene, po¹lje LCP (link control protocol) pakete oddaljenemu raèunalniku. Èe sprejme veljaven odgovor, gre na naslednjo stopnjo (uporabi IPCP - kontrolne pakete za IP) in ¹ele ko se to pogajanje konèa, se za¾ene dejanski sloj IP, tako da lahko uporabljate PPP povezavo. Èe na drugem koncu ni ppp stre¾nika ko va¹ PC po¹lje lcp pakete, se ti zrcalijo na prijavnem procesu na oddaljenem koncu. Ker ti paketki uporabljajo 8 bitov, odbijanje olupi 8. bit (ASCII je 7-bitna koda). PPP to vidi in se potemtakem prito¾i. Obstaja veè razlogov, da se pripeti to odbijanje. 18.3.1. Na stre¾nik se ne prijavljate pravilno Ko se va¹a chat skripta zakljuèi, se na va¹em raèunalniku za¾ene pppd. Èe niste konèali prijavnega procesa na stre¾niku (vkljuèno s po¹iljanjem ukaza za zagon PPP-ja na stre¾niku), se PPP ne bo zagnal. Torej se lcp paketi odbijejo in dobite to napako. Skrbno morate preveriti ni popraviti (po potrebi) va¹o chat skripto (glejte zgoraj). 18.3.2. Na stre¾niku ne zaganjate PPP-ja Nekateri PPP stre¾niki zahtevajo, da vpi¹ete ukaz in/ali RETURN po zakljuèku prijave, preden oddaljeni raèunalnik za¾ene ppp. Preverite chat skripto (glejte zgoraj). Èe se prijavite roèno in ugotovite, da morate po tem poslati RETURN za zagon PPP-ja, enostavno dodajte prazen prièakuj/po¹lji par na konec va¹e chat skripte (prazen niz dejnsko po¹lje RETURN). 18.3.3. Oddaljeni PPP proces se poèasi za¾ene Ta problem je nekoliko bolj prebrisan! Po privzeti vrednosti va¹ raèunalnik z Linuxom po¹lje najveè 10 lcp konfiguracijskih zahtevkov. Èe je stre¾nik nekoliko poèasen, je lahko vseh 10 poslanih preden je oddaljeni PPP pripravljen za njihov sprejem. Na va¹em raèunalniku vidi pppd vseh 10 zahtev vrnjenih (z osmim bitom odtrganim) in odneha. Obstajata dve re¹itvi: Dodajte lcp-max-configure 30 va¹im ppp mo¾nostim. To poveèa najveèje ¹tevilo lcp konfiguracijskih paketov, ki jih pppd po¹lje preden odneha. Za res poèasen stre¾nik jih boste morda potrebovali ¹e veè. Lahko pa ste prebrisani tudi vi! Mogoèe ste opazili, da ko se prijavite na PPP stre¾nik in po¾enete PPP, je prvi znak od ppp smetja vedno tilda (~). Z uporabo tega podatka lahko dodamo nov prièakuj/po¹lji par na konec chat skripte, ki bo prièakoval tildo ali kaj podobnega. To bi izgledalo takole: ______________________________________________________________________ \~ '' ______________________________________________________________________ Opomba: ker ima tilda v ukazni lupini poseben pomen, ji moramo dodati ube¾ni znak (leva po¹evnica) 18.4. Privzeta pot ni nastavljena Èe pppd noèe nastaviti privzete poti, je to zato, ker (dokaj pravilno) noèe odstraniti oz. zamenjati ¾e obstojeèe privzete omre¾ne poti. Obièajni razlog za to napako je, da v nekaterih distribucijah privzeta pot ka¾e na Ethernet kartico namesto da bi bila to specifièna omre¾na pot. Glejte Linux NAG (Network Administrators Guide) in NET2/3 HOWTO-je za informacije o pravilni nastavitvi Ethernet kartice in pripadajoèih poti. Mo¾no je tudi, da va¹a mre¾a ¾e uporablja ,vozel` (gateway) ali usmerjevalnik in je va¹a usmerjevalna tabela nastavljena, da ka¾e privzeta pot na to. Urejanje te situacije zahteva kar precej znanja o IP omre¾jih in presega namen tega HOWTO-ja. Priporoèljivo je, da dobite nekaj strokovnih nasvetov (v novièarskih skupinah ali èe koga poznate). 18.5. Ostale te¾ave Poleg na¹tetih je ¹e precej drugih razlogov, da se ppp ne pove¾e oz. deluje pravilno. Poglejte v PPP-FAQ (ki je niz vpra¹anj in odgovorov). To je zelo ob¹iren dokument, in odgovori SO v njem! Iz mojih (¾alostnih) izku¹enj lahko povem, da èe odgovora ni tam, te¾ava ni na strani PPP-ja! V mojem primeru sem uporabljal ELF jedro, programja za module pa nisem nadgradil. Zapravil sem samo 2 dni (in skoraj celo noè) preklinjajoè tisto, kar je bil predtem odlièen PPP stre¾nik! 19. Kam po pomoè, ko se popolnoma zatakne Èe va¹e PPP povezave ne morete pripraviti do delovanja, ¹e enkrat preberite ta dokument in vse preverite - v povezavi s tistim, kar vam povesta ,,chat -v...`` in ,,pppd -d``. Preglejte tudi dokumentacijo PPP-ja in FAQ ter ostale omenjene dokumente! Èe ¹e vedno niste re¹ili te¾av, poskusite v novièarskih skupinah comp.os.linux.misc in comp.os.linux.networking, katere dokaj redno pregledujejo ljudje, ki vam lahko pomagajo pri PPP-ju, prav tako kot comp.protocols.ppp. Lahko mi po¹ljete elektronsko po¹to, toda imam slu¾bo (in ¾ivljenje), zato ne zagotavljam hitrega odgovora (èe sploh). ker je to odvisno od moje obremenitve in zasebnega ¾ivljenja! ©e posebej pomembno je da NE PO©ILJATE RAZHRO©ÈEVALNEGA IZHODA V NOVIÈARSKE SKUPINE, NITI MENI OSEBNO - prvo zapravlja velike kolièine omre¾nega pretoka, drugo pa bo romalo v /dev/null (razen, èe sem vas prosil za tak izpis). 20. Pogoste te¾ave, ko povezava deluje Ena je, da boste na¹li mnogo PIS-ov, ki podpirajo samo povezovalno programje, ki ga sami razdeljujejo novim uporabnikom, to pa je (navadno) za Microsoft Windows :-( - in mnogo slu¾b za pomoè uporabnikom ne ve niè o Unixu (ali Linuxu). Zatorej bodite od njih pripravljeni na zelo omejeno pomoè! Lahko pa boste tem ljudem seveda naredili uslugo in jih izobrazili o Linuxu (vsak zaposleni pri PIS-ovi slu¾bi za pomoè uporabnikom bi moral biti dokaj seznanjen z Internetnimi termini in to pomeni, da bi moral imeti doma raèunalnik z Linuxom - seveda)! 20.1. Ne vidim dlje kot do PPP stre¾nika Va¹a PPP povezava je pokonci in deluje in lahko ,,pingate`` PPP stre¾nik z njegovo IP ¹tevilko (drugo ali ,,remote`` IP ¹tevilko, ki jo izpi¹e ifconfig ppp0), toda ne morete nikamor dlje. Najprej poskusite ,,pingat`` IP ¹tevilko, ki ste jo vpisali v /etc/resolv.conf kot imenski stre¾nik. Èe to deluje, lahko pridete mimo PPP stre¾nika (razen èe imata isto PPP ¹tevilko). Zato sedaj ,,pingajte`` polno ime va¹ega ponudnika: ping moj.ponudnik.si Èe to NE deluje, imate problem z razre¹evanjem imen. Verjetno ste se zatipkali pri vnosu v /etc/resolv.conf. To datoteko natanèno preglejte in primerjajte s podatki, ki vam jih je posredoval va¹ PIS. Èe povezava ©E VEDNO ne deluje (in je va¹ ponudnik potrdil, da njegovi imenski stre¾niki delujejo), imate te¾avo nekje drugje. Priporoèam, da pregledate svojo namestitev Linuxa (posebej pazite na dovoljenja datotek). Èe ©E VEDNO ne morete ,,pingat`` imenskega stre¾nika va¹ega ponudnika z IP ¹tevilko, je imenski stre¾nik ustavljen (poklièite ponudnika in preverite) ali pa ima ponudnik problem z usmerjanjem. Znova ga poklièite in preverite. Ena mo¾nost je, da je ,,oddaljeni konec`` Linux PPP stre¾nik, ki v jedru nima opcije IP forwarding! Dober splo¹ni test je, da se poskusite povezati s ponudnikovim PPP stre¾nikom z uporabo (gulp) Microsoft Windows. Èe v drugem operacijskem sistemu vse deluje z istim uporabni¹kim imenom, potem je problem v Linuxu in NE pri va¹em ponudniku. 20.2. Lahko po¹iljam elektronsko po¹to, toda ne morem je sprejemati Èe uporabljate dinamiène IP ¹tevilke, je to popolnoma normalno. Oglejte si razdelek ,,Uporaba storitev Interneta z dinamiènimi IP ¹tevilkami``. 20.3. Zakaj ljudje ne morejo uporabljati finger, WWW, gopher, talk ipd. na mojem raèunalniku? Znova, èe uporabljate dinamiène IP ¹tevilke, je to popolnoma normalno. Oglejte si razdelek ,,Uporaba storitev Interneta z dinamiènimi IP ¹tevilkami``. 21. Uporaba storitev Interneta z dinamiènimi IP ¹tevilkami Èe uporabljate dinamiène IP ¹tevilke (in mnogo ponudnikov vam bo dodelilo le dinamièno ¹tevilko, razen èe boste plaèali bistveno veè), boste morali spoznati omejitve, ki jih to postavlja. Najprej, zunanji servisi bodo delovali èisto normalno. Lahko boste po¹iljali elektronsko po¹to s sendmailom (èe ste ga seveda pravilno nastavili), prena¹ali datoteke z oddaljenih mest, uporabljali finger na uporabnikih drugje, uporabljali splet itd. Na elektronsko po¹to boste lahko odgovarjali, ko ne boste povezani. Po¹ta bo èakala v vrsti, dokler se ne boste znova povezali. Va¹ raèunalnik pa NI povezan 24 ur na dan, niti nima iste IP ¹tevilke vsakiè, ko se pove¾ete. Zato ne morete sprejemati elektronske po¹te naravnost na va¹ raèunalnik, zelo te¾ko je tudi nastaviti ftp ali spletni stre¾nik, ki bi ga va¹i prijatelji lahko uporabljali! Kar se tièe Interneta, va¹ raèunalnik ne obstaja kot en stalno povezan raèunalnik, ker nima svoje stalne IP ¹tevilke (pomnite, drugi raèunalniki bodo lahko uporabljali isto IP ¹tevilko, ko se bodo povezali). Èe postavite spletni (ali kak¹en drug) stre¾nik, je popolnoma neznan ostalim uporabnikom na internetu, razen èe vejo da je prikljuèen IN njegovo trenutno IP ¹tevilko. Obstaja mnogo naèinov, da dobijo te podatke, od tega da jim telefonirate, po¹ljete elektronsko sporoèilo do zvite uporabe datoteke .plan na lupinskem raèunu pri va¹em PIS-u (èe vam le-ta dovoli uporabo finger-ja in lupinski dostop). Za veèino uporabnikov to ni problem. Vse, kar ¾eli veèina ljudi, je po¹iljanje in prejemanje elektronske po¹te (z uporabo raèuna pri njihovem ponudniku), uporaba izhodnih povezav z WWW, ftp in drugimi stre¾niki na Internetu. Èe morate imeti vhodne povezave, bi res morali dobiti statièno IP ¹tevilko. Lahko pa poizkusite tudi z zgornjimi namigi... 21.1. Nastavljanje elektronske po¹te Celo z dinamiènimi IP ¹tevilkami lahko nastavite sendmail, da bo poslal vsa sporoèila, ki jih boste napisali. Nastavljanje sendmaila je lahko nejasno in te¾ko, zato se ga ta dokument ne loteva. Sendmail bi verjetno morali nastaviti, da bi po¹iljal po¹to preko po¹tnega stre¾nika pri va¹em PIS-u (DS opcija v sendmail.cf). Za veè podatkov si oglejte sendmailovo dokumentacijo in m4 konfiguracije, ki so mu dodane. Skoraj gotovo bo tam ena, ki bo ustrezala va¹im potrebam. O sendmailu obstaja tudi nekaj dobrih knjig (¹e posebej O'Reillyjeva ,biblija`), vendar so te skoraj gotovo prezahtevne za veèino uporabnikov! Ko imate sendmail konfiguriran, boste verjetno hoteli, da sendmail po¹lje vsa sporoèila, ki èakajo v izhodni vrsti takoj, ko se vzpostavi povezava. Dodajte ukaz sendmail -q & v va¹o skripto /etc/ppp/ip-up (glejte spodaj). Vhodna po¹ta je pri dinamiènih IP ¹tevilkah problem. Lahko jo sposobite takole: * konfigurirajte po¹tni program, da ima vsa poslana po¹ta header ,,Reply-To``, ki ka¾e na va¹ naslov pri PIS-u. Èe je mo¾no, tako nastavite tudi header ,,From``. * uporabite popclient ali fetchmail za prenos po¹te od va¹ega ponudnika. Èe va¹ PIS uporablja IMAP, uporabite po¹tni program, ki podpira IMAP (naprimer Pine). Ta proces lahko avtomatizirate z uporabo skripte /etc/ppp/ip-up (glejte spodaj). 21.2. Postavljanje lokalnega imenskega stre¾nika Medtem ko lahko dokaj veselo uporabljate imenske stre¾nike pri va¹em ponudniku, lahko postavite tudi lokalni predpomnilni (sekundarni) imenski stre¾nik, ki ga za¾enete preko skripte ip-up. Prednost pri poganjanju tak¹nega stre¾nika je, da vam bo pri dolgem priklopu prihranil èas, èe pogosto uporabljate iste stre¾nike. DNS konfiguracija za predpomnilni imenski stre¾nik (ki uporablja vrstico ,,forwarders`` v datoteki named.bootin ka¾e na imenski stre¾nik pri va¹em PIS-u) je preprosta. O'Reillyjeva knjiga DNS and Bind vam razlo¾i vse, kar morate vedeti o tem. Na voljo je tudi DNS-HOWTO. Èe upravljate majhno omre¾je, ki dostopa do Interneta preko va¹ega raèunalnika z Linuxom (naprimer z uporabo IP Masquerade), je verjetno dobro, da imate lokalni imenski stre¾nik. Medtem ko je povezava vzpostavljena, vam bo to prihranilo dosti pretoka in zmanj¹alo zastoje povezane z razre¹evanjem imen. Pravilo omre¾nega bontona: vpra¹ajte va¹ega PIS-a za dovoljenje preden zaènete uporabljati sekundarni, predpomnilni imenski stre¾nik v njegovi domeni. Pravilno konfiguriran imenski stre¾nik ne bo povzroèal te¾av, toda èe ga konfigurirate narobe, jih lahko. 22. Povezava dveh omre¾ij z uporabo PPP-ja V osnovi ni nobene razlike med povezavo enega samega Linuxa s stre¾nikom za PPP in povezavo dveh omre¾ij z uporabo PPP-ja na raèunalniku na obeh mre¾ah. Zapomnite si, PPP je istole¾ni protokol. DEFINITIVNO pa morate vedeti, kako se ureja usmerjanje. Preberite NET-2 howto in NAG. Zelo uporabna je tudi knjiga ,,TCP/IP Network Administration`` (izdana pri zalo¾bi O'Reilley - ISBN 0-937175-82-X). Èe boste razdelili IP mre¾no ¹tevilko na obe strani povezave (subnetworking), vam bo pomagal osnutek Linux Sub networking mini- HOWTOja <http://www.interweft.com.au/other/>. Da bi povezali dve mre¾i, morate uporabiti drugaène IP mre¾ne ¹tevilke (ali dva subneta na isti omre¾ni ¹tevilki). Morali boste tudi uporabljati statiène IP ¹tevilke ali IP masquerade. Za slednje poglejte navodila v IP masquerade mini-howto. 22.1. Nastavljanje IP ¹tevilk Z administratorjem omre¾ja na drugi strani se dogovorite za IP ¹tevilke, ki jih boste uporabljali za vsak konec vmesnika PPP. Èe uporabljate statiène IP ¹tevilke, boste verjetno morali klicati na posebno telefonsko ¹tevilko. Sedaj uredite primerno datoteko /etc/ppp/options[.ttyXX]. Dobro je, da imate na va¹em koncu doloèen modem in vrata za to povezavo. Mogoèe boste morali spremeniti tudi datoteko /etc/ppp/options in ustvariti primerne datoteke options.ttyXX za ostale povezave. Doloèite IP ¹tevilke za va¹ konec PPP povezave v primerni options datoteki ravno tako kot je prikazano zgoraj za statiène IP ¹tevilke. 22.2. Nastavitev usmerjanja Va¹ raèunalnik morate prirediti, da bodo paketi na va¹em omre¾ju usmerjeni èez vmesnik, ki ga ustvari PPP povezava. To je dvostopenjski proces. Najprej morate ustvariti pot od raèunalnika, na katerem teèe povezava, do omre¾ja(-ij) za oddaljenim koncem povezave. Èe je to povezava z Internetom, lahok to uredite z privzeto potjo, ki jo ustvari pppd z opcijo ,defaultroute`. Èe pa je povezava le med dvema omre¾jema, morate ustvariti specifièno omre¾no pot za vsako omre¾je, ki je dosegljivo èez povezavo. To naredite z ukazom ,route` za vsako mre¾o v skripti /etc/ppp/ip-up (za navodila glejte razdelek ,,Ko se povezava vzpostavi``). Druga stvar je, da raèunalnikom na va¹i mre¾i poveste, da je va¹ raèunalnik z Linuxom ,,vozel`` (gateway) za omre¾ja na drugem koncu PPP povezave. Seveda mora vse to narediti tudi upravitelj omre¾ja na drugi strani! Ker pa bo on usmerjal pakete v va¹e specifiène mre¾e, bo moral ustvariti specifièno omre¾no pot, ne pa privzeto pot (razen èe bo preko vas povezan v Internet). 22.3. Omre¾na varnost Èe povezujete va¹e omre¾je z Internetom z uporabo PPP-ja (ali le s ,tujim` omre¾jem), morate razmi¹ljati o varnosti. Spodbujam vas, da postavite po¾arni zid! Morali bi tudi govoriti s skrbnikom va¹ega omre¾ja PREDEN se zaènete na ta naèin povezovati z drugimi omre¾ji ali Internetom. Èe tega ne storite, se morda ne bo zgodilo niè, lahko pa si naprtite velike te¾ave! 23. Ko se povezava vzpostavi - /etc/ppp/ip-up skripta Ko se povezava vzpostavi, pppd poi¹èe datoteko /etc/ppp/ip-up. Èe ta obstaja in je izvr¹ilna, jo pppd izvr¹i. To vam omogoèa, da avtomatizirate vse posebne usmerjevalne ukaze, ki so morda potrebni, in ostale stvari, katere hoèete izvr¹iti vsakiè, ko se povezava vzpostavi. To je le lupinska skripta in lahko naredi karkoli, kar lahko taka skripta naredi (praktièno karkoli). Sendmail lahko naprimer odpremi vsa sporoèila, ki èakajo v izhodni vrsti. Podobno lahko v to skripto dodate ukaze za prenos po¹te, ki èaka pri va¹em PIS-u, k vam. Za /etc/ppp/ip-up pa obstajajo nekatere omejitve: * Zaradi poveèane varnosti teèe v premi¹ljeno omejenem okolju. To pomeni, da morate podati polne poti do datotek ipd. * Tehnièno gledano je /etc/ppp/ip-up program, ne skripta. To pomeni, da je lahko direktno izvr¹ena in zato potrebuje na zaèetku prve vrste (#!/bin/bash) in mora imeti prava dovoljenja (branje in izvr¹evanje od roota). 23.1. Posebno usmerjanje Èe povezujete dve omre¾ji, boste morali urediti specifiène poti do ,tujih` omre¾ij. To je enostavno narediti z uporabo skripte /etc/ppp/ip-up. Edina te¾ava nastane, èe mora va¹ raèunalnik obvladovati veè PPP povezav. To je zato, ker je skripta /etc/ppp/ip-up izvr¹ena za VSAKO ppp povezavo, ki se vzpostavi, zato morate previdno izvr¹iti prave usmerjevalne ukaze za vsako povezavo in ne ko se vzpostavi kak¹na druga povezava! 23.2. Ravnanje s po¹tnimi vrstami Ko se vzpostavi povezava med dvema omre¾jema, se hoèete verjetno preprièati, da je vsa èakajoèa po¹ta izplaknjena - poslana na svojo pot. To naredite s primernim klicem sendmaila. Z uporabo basheve izjave ,case` na primernem parametru, ki ga pppd poda skripti, se da to urediti. To je skripta /etc/ppp/ip-up, ki jo uporabljam za na¹e WAN povezave in povezavo z mojim domaèim Ethernetom (na istem ppp stre¾niku). 23.3. Vzorèna /etc/ppp/ip-up skripta Spodnji primer podaja razliène primere uporabe. ______________________________________________________________________ #!/bin/bash # # Skripta, ki poskrbi za pppd-jeve usmerjevalne potrebe. # Potrebuje jo le povezava z Newmanom. # # Ko se povezava vzpostavi, se ta skripta za¾ene s sledeèimi parametri # $1 ime vmesnika (npr. ppp3) # $2 ime naprave tty # $3 hitrost naprave tty # $4 lokalni IP naslov za vmesnik # $5 oddaljeni IP naslov # $6 parameter doloØen z ,ipparam opcijo pppd-ju. # case "$5" in # Poskrbi za usmerjanje do stre¾nika Newman Campus 202.12.126.1) /sbin/route add -net 202.12.126.0 gw 202.12.126.1 # in izplakni po¹tno vrsto, da pride po¹ta èimprej tja! /usr/sbin/sendmail -q & ;; 139.130.177.2) # Na¹a povezava v Internet # Ko se vzpostavi, za¾eni èasovni stre¾nik in sinhroniziraj uro. if [ ! -f /var/lock/subsys/xntpd ]; then /etc/rc.d/init.d/xntpd.init start & fi # Za¾eni novièarski stre¾nik if [ ! -f /var/lock/subsys/news ]; then /etc/rc.d/init.d/news start & fi ;; 203.18.8.104) # Po¹lji po¹to na moj domaèi raèunalnik takoj ko se povezava vzpostavi. # Ne potrebujemo nobenega usmerjanja, ker za moj domaèi Ethernet skrbi # IP Masquerade in proxyarp. /usr/sbin/sendmail -q & ;; *) esac exit 0 ______________________________________________________________________ Kot rezultat vzpostavitve povezave z na¹im Newman Campusom in te skripte, imamo sledeèo usmerjevalno tabelo (ta raèunalnik je na¹ vstopni PPP stre¾nik IN skrbi za na¹o povezavo z Internetom). V izhod sem dodal komentarje za bolj¹e razumevanje. ______________________________________________________________________ [root@kepler /root]# route -n Kernel routing table Destination Gateway Genmask Flags MSS Window Use Iface # GOSTITELJSKA (HOST) pot do na¹ega oddaljenega internetnega ,vozla` 139.130.177.2 * 255.255.255.255 UH 1500 0 134 ppp4 # GOSTITELJSKA pot do Newman campus stre¾nika 202.12.126.1 * 255.255.255.255 UH 1500 0 82 ppp5 # GOSTITELJSKA pot do mojega domaèega etherneta 203.18.8.104 * 255.255.255.255 UH 1500 0 74 ppp3 # dve na¹i dostopni liniji 203.18.8.64 * 255.255.255.255 UH 552 0 0 ppp2 203.18.8.62 * 255.255.255.255 UH 552 0 1 ppp1 # specifièna omre¾na pot do omre¾ja v Newman campusu 202.12.126.0 202.12.126.1 255.255.255.0 UG 1500 0 0 ppp5 # pot do lokalnega Etherneta 203.18.8.0 * 255.255.254.0 U 1500 0 1683 eth0 # pot do loopback naprave 127.0.0.0 * 255.0.0.0 U 3584 0 483 lo # privzeta pot v Internet default 139.130.177.2 * UG 1500 0 3633 ppp4 ______________________________________________________________________ 23.4. Ravnanje z elektronsko po¹to Prej¹nji razdelek je pokazal kako ravnati z izhodno po¹to - enostavno z izplakovanjem izhodne vrste ko se vzpostavi povezava. Èe imate WAN povezavo, se lahko z skrbnikom oddaljenega omre¾ja dogovorite, da naredi popolnoma isto stvar. V Newman campusu, na drugem koncu povezave, je /etc/ppp/ip-up skripta taka: ______________________________________________________________________ #!/bin/bash # # Skripta, ki obvladuje usmerjevalne zadeve. # Potrebuje jo le povezava s Hedlandom. # # Ko se povezava vzpostavi, se ta skripta za¾ene s sledeèimi parametri # $1 ime vmesnika (npr. ppp3) # $2 ime naprave tty # $3 hitrost naprave tty # $4 lokalni IP naslov za vmesnik # $5 oddaljeni IP naslov # $6 parameter doloèen z ,ipparam` opcijo pppd-ju. # case "$5" in 203.18.8.4) /usr/sbin/sendmail -q ;; *) esac exit 0 ______________________________________________________________________ Èe pa imate samo dinamièno povezavo z va¹im PIS-om, morate dobiti va¹o po¹to z uporabo POP (Post Office Protocola). To lahko uredite s programom popclient, ip-up skripta pa vam lahko to avtomatizira! (op.prev.: uporabite lahko tudi novej¹i program fetchmail) Enostavno ustvarite /etc/ppp/ip-up skripto, ki vsebuje primeren klic popclienta. Za moj prenosnik, na katerem teèe Red Hat Linux (in ga nosim na vsa potovanja), je to ______________________________________________________________________ popclient -3 -c -u hartr -p <password> kepler.hedland.edu.au |formail -s procmail ______________________________________________________________________ Za novice bi lahko uporabili slurp ali kaj drugega, itd. Pomnite, ip- up je le standardna bash skripta in jo lahko uporabite za VSAKO stvar, ki jo hoèete narediti vsakiè, ko vzpostavite PPP povezavo. 24. Uporaba /etc/ppp/ip-down Ustvarite lahko tudi skripto, ki se bo izvr¹ila, ko se povezava prekine. Imenuje se /etc/ppp/ip-down. Z njo lahko razveljavite vse posebne stvari, ki ste jih naredili v skripti /etc/ppp/ip-up. 25. Usmerjevalne zadeve na lokalnem omre¾ju Èe ste povezani v omre¾je, toda bi ¹e vedno radi uporabljali PPP na va¹em Linux raèunalniku, morate urediti nekaj stvari v zvezi s potmi, ki jih morajo paketi ubrati, da bi pri¹li z va¹ega raèunalnika na lokalno omre¾je (èez Ethernet vmesnik) in tudi na PPP stre¾nik in naprej. Ta razdelek vas NE namerava nauèiti o usmerjanju. Ukvarja se le z enostavnim, posebnim primerom (statiènega) usmerjanja! Toplo vam priporoèam, da preberete Linux Network Administrators Guide (NAG), èe NISTE seznanjeni z usmerjanjem. O'Reilleyeva knjiga ,,TCP/IP Network Administration`` pokriva to temo v zelo razumljivi obliki. Osnovno pravilo statiènega usmerjanja je, da naj bo PRIVZETA pot tista, ki ka¾e na kar NAJVEÈ omre¾nih naslovov. Za druga omre¾ja dodajte specifiène poti v usmerjevalno tabelo. EDINA situacija, ki jo tukaj pokrivam je ta, kjer je va¹ Linux raèunalnik na lokalnem omre¾ju, ki ni povezano v Internet, vi pa se hoèete povezati z Interentom za va¹o osebno rabo medtem ko ste ¹e vedno povezani z omre¾jem. Najprej se preprièajte, da je va¹a Ethernet pot nastavljena na specifiène omre¾ne naslova, ki so na voljo na va¹em lokalnem omre¾ju - Ne kot privzeta pot! To preverite z ukazom route in videti bi morali nekaj takega: [root@hwin /root]# route -n Kernel routing table Destination Gateway Genmask Flags MSS Window Use Iface loopback * 255.255.255.0 U 1936 0 50 lo 10.0.0.0 * 255.255.255.0 U 1436 0 565 eth0 Èe va¹ Ethernet vmesnik (eth0) ka¾e na privzeto pot (v prvem stolpcu vrstice eth0 bo pisalo ,,default``), morate spremeniti va¹e inicializacijske skripte za Ethernet, da bodo kazale na specifiène mre¾ne ¹tevilke namesto na privzeto pot (glejte Net2 HOWTO in NAG). To bo dovolilo pppd-ju nastaviti privzeto pot, kot je prikazano: [root@hwin /root]# route -n Kernel routing table Destination Gateway Genmask Flags MSS Window Use Iface 10.144.153.51 * 255.255.255.255 UH 488 0 0 ppp0 127.0.0.0 * 255.255.255.0 U 1936 0 50 lo 10.1.0.0 * 255.255.255.0 U 1436 0 569 eth0 default 10.144.153.51 * UG 488 0 3 ppp0 Kot vidite, imamo gostiteljsko pot do PPP stre¾nika (10.144.153.51) èez ppp0 in tudi privzeto omre¾no pot, ki uporablja PPP stre¾nik kot svoj vozel. Èe so va¹e usmerjevalne potrebe bolj kompleksne, preberite ¾e omenjene dokumente in se posvetujte s strokovnjakom pri vas. Èe va¹e lokalno omre¾je ¾e ima usmerjevalnike, boste ¾e imeli narejene vozle za ¹ir¹a omre¾ja dostopna na va¹em mestu. ©E VEDNO bi morala va¹a privzeta pot kazati na PPP vmesnik, ostale poti pa bi morale biti za specifièna omre¾ja, katerim slu¾ijo. 25.1. Opomba o varnosti Ko nastavite Linux raèunalnik na va¹em lokalnem omre¾ju za povezavo z Internetom, ste celotno omre¾je potencialno odprli Internetu - in tam zunaj ¾ivijo crackerji. Preden to storite, preuèite NAG in va¹o varnostno politiko. Èe bo va¹a PPP povezava z Internetom uporabljena za uspe¹en napad na va¹e omre¾je, si boste prislu¾ili najmanj hudo jezo drugih uporabnikov, mre¾nih in sistemskih skrbnikov. Lahko se boste zna¹li tudi v mnogo huj¹ih te¾avah! Preden pove¾ete omre¾je z Internetom, morate preuèiti mo¾ne varnostne te¾ave celo DINAMIÈNE povezave, zato prej¹nji sklic na O'Reilleyevo knjigo ,,Building Internet Firewalls``. 26. Postavitev PPP stre¾nika Kot je bilo ¾e omenjeno, obstaja mnogo poti za to. Kar je tukaj predstavljeno, je naèin, kako to dose¾em jaz. (z uporabo Cyclades veèvratne serijske kartice) in ,,kro¾nih`` vhodnih telefonskih ¹tevilk - oglasi se prvi prosti modem) Èe vam ta naèin ni v¹eè, naredite to po svoje. Vesel pa bi bil, èe bi v naslednjih izdajah tega HOWTOja lahko vkljuèil druge metode. Zato mi, prosim, po¹ljite va¹e komentarje in ,recepte`! Prosim pomnite, da ta razdelek skrbi samo za nastavitev Linuxa kot PPP stre¾nika. Nikoli ne nameravam vkljuèiti napotkov za postavitev posebnih terminalskih in podobnih stre¾nikov. Poleg tega moram ¹ele eksperimentirati s shadow gesli (ampak bom to enkrat poèel). Trenutni napotki torej NE vkljuèujejo kakr¹nihkoli dodatkov, ki so potrebni za shadow gesla. 26.1. Prevajanje jedra Vsa prej¹nja navodila glede prevajanja jedra in verzij jedra ter pppd- ja veljajo tudi tukaj! Ta razdelek predvideva, da ste dokument brali od zaèetka! Za PPP stre¾nik MORATE v jedro vkljuèiti IP forwarding. Mogoèe ¾elite vkljuèiti tudi druge zmo¾nosti (kot so IP firewalls, accounting ipd.). Èe uporabljate veèvratno serijsko kartico, morate seveda vkljuèiti primerne gonilnike zanjo! 26.2. Pregled stre¾ni¹kega sistema Ponujamo klicne PPP (in SLIP) raèune ter lupinske raèune z uporabo istega uporabni¹kega imena in gesla. Za nas to predstavlja prednost, ker uporabnik lahko uporablja en raèun za vse vrste povezovanja. Ker smo izobra¾evalna organizacija, na¹emu osebju in ¹tudentom ne zaraèunavamo dostopa, zato nam ni treba skrbeti za obraèun stro¹kov. Med nami in Internetom imamo po¾arni zid, kar nekaterim uporabnikom omejuje dostop, ker so klicne linije za na¹im po¾arnim zidom. (zaradi oèitnih razlogov podrobnosti o na¹ih ostalih po¾arnih zidovih tukaj niso predstavljeni in so nepomembni). Kaj mora uporabnik narediti za vzpostavitev PPP povezave (seveda ko ima raèun): * Klicati na na¹o ¹tevilko (to je ena sama ¹tevilka, ki klièe v serijo modemov - prvi prosti modem se oglasi), * Se prijaviti z uporabni¹kim imenom in geslom, * Na lupinskem pozivu mora vnesti ukaz ppp za zagon PPPja na stre¾niku, * Pognati PPP na njihovem raèunalniku (na katerem teèe Linux, Windows, MAC OS ali karkoli drugega - to je njihov problem). Stre¾nik uporablja posamezne datoteke /etc/ppp/options.ttyXX za vsaka vhodna vrata, ki nastavijo IP ¹tevilko za dinamièno dodeljevanje. Stre¾nik uporablja proxyarp usmerjanje k oddaljenim odjemalcem (nastavljeno z uporabo opcije pppd-ju). To obide potrebo po routed ali gated daemonih. Ko uporabnik prekine povezavo, pppd to zazna in modemu uka¾e naj odlo¾i, s tem pa istoèasno prekine PPP povezavo. 26.3. Zbiranje programja Potrebovali boste naslednje programje: * Linux, primerno preveden z vkljuèenimi potrebnimi mo¾nostmi, * Jedru primerno verzijo pppd-ja, * ,getty` program za inteligentno ravnanje z modemom, mi uporabljamo getty_ps2.0.7h, toda razmi¹ljamo o mgettyju. Kot sem razumel, mgetty lahko zazna klic, ki uporablja pap/chap (pap je standard za windows 95) in avtomatièno za¾ene pppd, toda to moram ¹ele raziskati. * Delujoè imenski stre¾nik (DNS), ki je dosegljiv va¹im uporabnikom. Res bi morali imeti svoj DNS stre¾nik, èe je mogoèe... 26.4. postavitev standardnega (lupinskega) klicnega dostopa Preden lahko postavite PPP stre¾nik, mora biti va¹ raèunalnik sposoben obvladovanja standardnega klicnega dostopa. Ta HOWTO tega NE pokriva! Oglejte si dokumentacijo gettyja in Serial- HOWTO. 26.5. Priprava PPP options datotek Nastaviti boste morali skupno datoteko /etc/ppp/options, z mo¾nostmi, ki veljajo za vsa klicna vrata. Mo¾nosti, ki jih uporabljamo mi so: ______________________________________________________________________ asyncmap 0 netmask 255.255.254.0 proxyarp lock crtscts modem ______________________________________________________________________ Opomba: mi NE uporabljamo nobenega (oèitnega) usmerjanja - ¹e posebej nimamo defaultroute mo¾nosti. Razlog za to je, da je vse kar morate (kot PPP stre¾nik) narediti to, da usmerjate pakete od ppp odjemalca na va¹e omre¾je in naprej in jih usmerjate k odjemalcu iz va¹ega omre¾ja. Za to je potrebna le gostiteljaska pot do odjemalèevega raèunalnika in uporaba ,proxyarp` mo¾nosti pppd-ju. Mo¾nost ,proxyarp` nastavi (presenetljivo!) proxy ARP vnos v stre¾nikovo ARP tabelo, ki v bistvu govori ,,po¹lji vse pakete za PPP odjemalca k meni``. To je najla¾ja pot za usmerjanje k enemu samemu PPP odjemalcu, vendar je ne morete uporabiti za usmerjanje med dvema omre¾jema. Za to morate dodati pravilne omre¾ne poti, ki ne morejo uporabljati proxy ARP-ja. Skoraj gotovo boste ¾eleli ponuditi dinamièno dodeljevanje IP ¹tevilk va¹im uporabnikom. To lahko dose¾ete z dodelitvijo IP ¹tevilke vsakim vratom. Sedaj ustvarite datoteko /etc/ppp/options.ttyXX za vsaka vrata. V to enostavno vstavite lokalno (stre¾nikovo) IP ¹tevilko in IP ¹tevilko, ki naj se uporabi za ta vrata. Naprimer: ______________________________________________________________________ kepler:slip01 ______________________________________________________________________ zapomnite si, da lahko v tej datoteki uporabljate veljavna imena (ugotovil sem, da si zapomnim samo IP ¹tevilke najbolj pomembnih raèunalnikov na mre¾i - imena so bolj pomenljiva)! 26.6. nastavitev pppd-ja, da ga lahko uporabniki (uspe¹no) za¾enejo Ker postavitev PPP povezave obsega nastavitev jedrne naprave (omre¾nega vmesnika) in manipulacijo usmerjevalnih tabel, so potrebne posebne pravice - pravzaprav popolne root pravice. Na sreèo je bil pppd ,varno` oblikovan - navaden uporabnik ga lahko poganja z root pravicami. Torej boste morali ______________________________________________________________________ chmod u+s /usr/sbin/pppd ______________________________________________________________________ Ko uporabite ls, bi morala ta datoteka izgledati takole: ______________________________________________________________________ -rwsr-xr-x 1 root root 74224 Apr 28 07:17 /usr/sbin/pppd ______________________________________________________________________ Èe tega ne naredite, uporabniki ne bojo sposobni postaviti PPP povezave. 26.7. Nastavitev drugega imena za pppd Da bi poenostavili stvari za na¹e klicoèe PPP uporabnike, smo ustvarili globalni alias (v /etc/bashrc), da en enostaven ukaz po¾ene pppd na stre¾niku, ko je uporabnik prijavljen. To izgleda kot ______________________________________________________________________ alias ppp="exec /usr/sbin/pppd -detach" ______________________________________________________________________ Kaj to naredi? * exec : to pomeni, da nadomesti delujoèi program (v tem primeru lupino) z programom, ki bo pognan. * pppd -detach : za¾ene pppd in ga NE po¹lje v ozadje. To zagotavlja, da ko bo pppd konèal z delovanjem ne bo ostal noben proces. Ko se uporabnik tako prijavi, ga bo ,w` zaznal kot ______________________________________________________________________ 6:24pm up 3 days, 7:00, 4 users, load average: 0.05, 0.03, 0.00 User tty login@ idle JCPU PCPU what hartr ttyC0 3:05am 9:14 - ______________________________________________________________________ To je to...Povedal sem vam, da je to preprost, osnoven PPP stre¾ni¹ki sistem! 27. Uporaba PPP-ja preko null modem (direktne serijske) povezave To je zelo enostavno - vmes ni modema, zato so stvari mnogo enostavnej¹e. Najprej izberite enega od raèunalnikov za ,stre¾nik`, nastavite getty na serijskih vratih, tako da lahko preverite povezljivost z minicomom na ,odjemalcu`. Ko to deluje, lahko getty odstranite, RAZEN èe ¾elite, da je povezava avtenticirana z uporabo uporabni¹kega imena in gesla kot zaklicne povezave. Ker imate fizièni dostop do obeh raèunalnikov, bom predvideval, da tega NE potrebujete. Sedaj na stre¾niku odstranite getty in se preprièajte, da imate serijska vrata na obeh raèunalnikih pravilno konfigurirana z uporabo ,setserial`. Vse kar morate narediti je, da na obeh raèunalnikih za¾enete pppd. Predvideval bom, da povezava na obeh raèunalnikih uporablja vrata /dev/ttyS3. Na obeh raèunalnikih torej vnesemu ukaz: ______________________________________________________________________ pppd -detach crtscts lock <local IP>:<remote IP> /dev/ttyS3 38400 & ______________________________________________________________________ To bo postavilo povezavo, toda zaenkrat nimate nobenega usmerjanja. Povezavo lahko preverite s ,,pinganjem`` drug drugega. Èe to deluje, prekinite povezavo z ,,ubijanjem`` enega od pppd-jev. Usmerjanje, ki ga boste morali urediti je odvisno od tega, kaj hoèete. Navadno bo eden od raèunalnikov povezan z Ethernetom (in naprej), torej bo usmerjanje popolnoma enako kot za PPP stre¾nik in odjemalec. Na raèunalniku z Ethernetom bi ukaz pppd izgledal takole: ______________________________________________________________________ pppd -detach crtscts lock proxyarp <local IP>:<remote IP> /dev/ttyS3 38400 & ______________________________________________________________________ na drugem pa: ______________________________________________________________________ pppd -detach crtscts lock defaultroute <local IP>:<remote IP> /dev/ttyS3 38400 & ______________________________________________________________________ Èe povezujete dve omre¾ji (s serijsko povezavo!) ali imate bolj zapletene usmerjevalne potrebe, lahko uprabite skripto /etc/ppp/ip-up ravno tako, kot je ¾e bilo omenjeno. 28. Administrativne zadeve 28.1. Licenca Ta dokument se lahko raz¹irja pod pogoji GPL (GNU Public License). 28.2. Raz¹irjanje Ta dokument bo poslan v novièarsko skupino comp-os-linux.answers, kadar bojo na voljo nove verzije. Dostopen je tudi v HTML formatu na: * Linux Howto Index <http://sunsite.unc.edu/mdw/linux.html#howto> * PPP-HOWTO <http://www.interweft.com.au/other/ppp-howto/ppp- howto.html> Prevod PPP-HOWTO-ja v formatu HTML lahko dobite na <http://www.lugos.si/delo/slo/HOWTO-sl/PPP-HOWTO-sl.html>. Ostali formati (SGML, ASCII, postscript, DVI) so na voljo na Howtoji - ostali formati <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other- formats>. Ker je sunsite.unc.edu zelo obremenjen prosimo da uporabljate zrcalni stre¾nik v va¹i bli¾ini (naprimer sunsite.fri.uni-lj.si) 28.3. Obvestila Zmeraj veè ljudi mi pomaga pri pripravljanju tega dokumenta. Posebna zahvala Alu Longyearu za razlago PPP-ja samega (èe so na tem podroèju napake, sem jih napravil jaz, ne on), Gregu Hankinsu (vzdr¾evalec sistema Linux HOWTO) in Debi Tackett (iz MaximumAccess.com) za mnogo predlogov o stilu, vsebini, vrstnem redu in jasnosti razlag. In konèno, mnogim ljudem, ki so mi poslali e-po¹to s komentarji - hvala. Kot pri vseh avtorjih HOWTO-jev je zadovoljstvo pri pomoèi vse plaèilo, ki ga prejmemo in je dovolj. S pisanjem tega HOWTO-ja v majhni meri odplaèujem dolg, ki ga jaz - in vsi drugi uporabniki Linuxa - dolgujemo ljudem, ki ustvarjajo in vzdr¾ujejo operacijski sistem, katerega smo izbrali. Prevajalec se zahvaljuje ,,razhro¹èevalcu`` slovenskega prevoda, Romanu Maurerju. Brez njegove pomoèi ta prevod ne bi bil to, kar je. Robert Hart Port Hedland, Western Australia Melbourne, Victoria, Australia avgust/oktober 1996 januar/marec 1997 prevedel: Borut Mrak 7. avgust 1998 zadnji popravek: 15. avgust 1998