Spremenjeni Linux PPP/NT HOWTO: Odjemalec Linux PPP prek MS-CHAP na Windows NT/2000 Server <author>Siegfried Schoen <tt>sigi@erlf.siemens.de</tt>, Diederick van Dijk <tt>ppp-nt-howto@van-dijk.net</tt> <date>v?.?, 15. september 2001 <abstract> Ta spis opisuje, kako vzpostaviti povezavo PPP med linuxovim odjemalcem in strežnikom Windows NT/2000 Server z uporabo protokola MS-CHAP s povratnim klicem. Ta spis temelji na PPP/NT HOWTO avtorja Siegfrieda Schoena. Preveden je v slovenščino in prirejen za zgoraj opisani naslov. Vse avtorske pravice do spisa obdrži avtor. Dovoljeno je elektronsko razširjanje spisa in razširjanje prek CD, če ga v celoti razširjate v izvornem formatu. Dokument je tudi dovoljeno natisniti za lastno rabo. </abstract> <toc> <sect>Predstavitev <p> <sect1>Sporočila, poročila o hroščih itd. <p> Poglejte v changelog za zadnje spremembe. <sect1>Kratka predstavitev PPP in RAS <p> PPP ('Point to Point Protocol') je protokol, ki omogoči povezave IP (Internet Protocol) med dvema računalnikoma s pomočjo modemov. Linux ima ta protokol že v jedru (če ste ga prevedli vanj). Za povezavo PPP je treba zagnati prikriti proces, ki se imenuje PPPD. S PPP lahko vzpostavite povezavo med dvema računalnikoma, ki razumeta ta protokol. Povezava med Linuxo, ki se obnaša kot odjemalec, in Windows NT/2000 Server, ki se obnaša kot strežnik, se imenuje (Microsoftov izraz) povezava 'Remote Access Service' (RAS). <sect1>Povezave s podobnimi informacijami <p> <itemize> <item> Zelo lep članek o enakem problemu. Napisal ga je Pascal Paneels na <url url="http://www.linuxsupportline.com/~pep/">. <item> Spletna stran o IPX čez PPP na <url url="http://www.tartu.customs.ee/linux/index.shtml">. </itemize> <sect>Na splošno in popravljanje PPPD <sect1>Na splošno <p> Za povezavo RAS na strežniku Windows NT/2000 potrebujete: <itemize> <item> Uporabniško ime oz. prijava za RAS <item> Windows NT Server z aktivnim RAS: Windows NT Server uporablja kar nekaj načinov dokazovanja pristnosti (text-only, MS-CHAP, MD-CHAP, SPAP, PAP), z naslednjimi protokoli: <itemize> <item> PAP ('Password Authentication Protocol') in <item> MS-CHAP, CHAP modifikacija Microsofta ('Challenge Handshake Authentication Protocol'). </itemize> <item> 'posebnosti povratnega klicanja' <itemize> <item> Windows NT/2000 Server uporablja "Microsoft Call Back Configuration Protocol' (CBCP) za povratno klicanje. <item> Povratno klicanje je dveh vrst: <item> "User Defined": uporabnik napiše, na katero številko naj ga strežnik pokliče nazaj. <item> "Admin Defined": upravitelj NT določi, na katero številko naj strežnik pokliče uporabnika. </itemize> </itemize> <p> Ta dokument opisuje, kako nastaviti povezavo PPP z uporabo MS-CHAP. Če želite uporabiti drug protokol, lahko odgovor za to poiščete v izvirnem PPP/NT HOWTO (če sploh še obstaja) ali v PPP HOWTO. PAP, CHAP in "Clear Text" avtorizacije so izpopolnjene brez modifikacije Microsofta. Za več informacij o strežniku NT/2000 se povežite s svojim upraviteljem NT/2000. <sect1>Kaj potrebujete? <p> Za delujoč prikriti proces PPPD z MS-CHAP in povratnim klicanjem morate popraviti prikriti proces pppd (če še ni seveda). Torej potrebujete izvirno kodo PPP. To si lahko snamete z <url url="http://cpqlin.van-dijk.net/PPP-NT-HOWTO/download/ppp-2.3.11.tar.gz">. Ker MS-CHAP uporablja enkripcijo DES, potrebujete še knjižnico DES. Če imate nameščene knjižnice glibc2 z "libcrypt" (to je na primer RedHat 5.2 ali novejša), imate to knjižnico že nameščeno in je ni treba znova nameščati. Če te knjižnice nimate, jo najdete na: <itemize> <item> <url url="ftp://ftp.psy.uq.oz.au/pub/Crypto/DES/libdes-4.01.tar.gz"> <item> <url url="http://cpqlin.van-dijk.net/PPP-NT-HOWTO/download/libdes-4.04b-1.src.rpm"> <item> <url url="http://cpqlin.van-dijk.net/PPP-NT-HOWTO/download/libdes-4.04b-1.i386.rpm"> </itemize> <p> Če ne marate popravljati "na roke", si lahko od tu snamete tar.gz in pakete RPM (brez knjižnice DES). <p> Vsekakor pa imajo vse novejše različice Linuxa to vse že zajeto v PPP oz. distribuciji, tako da vam najverjetneje ne bo treba prav ničesar popravljati. <sect1>Popravljanje PPPD za MS-CHAP <p> Po namestitvi izvirne kode PPP poiščite datoteko README.mschap80 v imeniku izvirne kode. Ta datoteka opisuje, kako prevedete MS-CHAP v ppp(d). V ppp-2.3 (7,11) je bil ta popravek že zajet. Preden prevedete PPP, si nujno prej namestite knjižnico DES! Ne prevedite še PPPD, čaka vas še nekaj prevajanja ... <sect1>Popravljanje PPPD za povratni klic <p> V korenskem imeniku izvorne kode PPP je še en dokument, ki opisuje popravek, <tt>README.cbcp</tt>. Preberite ga in nato namestite popravek. <sect>Konfiguracije <sect1>Sistemska konfiguracija <p> Celoten dokument v nadaljevanju temelji na naslednji sestavi: <p> Sestava linuxovskega računalnika: <itemize> <item>Suse 7.2, jedro 2.2.4 <item>podpora za naložljive module <item>modem na cua0 ozr. COM 1, UART16550A (zunanji) <item>hitrost modema 14400 bps <item>Sistemsko ime Linuxa: zeky2 <item>popravljen prikriti proces PPP, različica 2.4.0 <item>krajevni naslov IP (Linuxa): 127.0.0.1 <item>oddaljeni naslov IP (Windows NT) 10.1.1.34 <item>linuxova telefonska številka 555111 <item>DNS-Domainname nasadomena <item>DNS-Nameserver naslov 10.1.1.1 </itemize> <p> Sestava strežnika NT RAS <itemize> <item>Windows 2000 Server <item>Windows 2000 Backup Domain Controller v 'normalni' strežnik v domeni <item>sistemsko ime Windows 2000 srv-at <item>Windows 2000 domensko ime nasadomena <item>Windows 2000 uporabniško ime zeky <item>Windows 2000 geslo moje_geslo <item>Windows 2000 telefonska številka 555222 </itemize> <sect1>Delovna konfiguracija <p> Popravljeni PPPD uspešno deluje z naslednjimi sestavami: <itemize> <item>Kernel 2.0.36, pppd 2.3.5, Windows NT 4.0 Server, Service Pack 3 <item>Kernel 2.0.36, pppd 2.3.7, Windows NT 4.0 Server, Service Pack 4 <item>Kernel 2.0.36, pppd 2.3.7, Windows NT 4.0 Server, Service Pack 5 <item>Kernel 2.2.14, pppd 2.3.11, Windows NT 4.0 Server, Service Pack 6a <item>Kernel 2.2.4, pppd 2.4.0, Windows 2000 Server, Service Pack 2 </itemize> <sect>Povezava PPP z MSCHAP<label id="ppp-mschap"> <sect1>pppd-Dialscript <sect1>Datoteka /etc/ppp/options <sect1>Datoteka /etc/ppp/chap-secrets <sect1>Protokol PPP/MSCHAP <sect>Povezava PPP s povratnim klicem MS-CHAP <sect1>'PPPD' Dialscript <p> 'pppd'-dialscript, ki je komentiran tule, je primer skripta za klicanje. <tscreen><verb> #!/bin/bash # Pokličimo Windows 2000 Server /usr/sbin/pppd /dev/modem 38400 file "/etc/ppp/options.nt" callback 555111 # Počakaj na povratni klic strežnika Windows 2000 /usr/sbin/pppd /dev/modem 38400 file "/etc/ppp/options-callback.nt" </verb></tscreen> <p> Datoteka: dial_winnt <sect1>Konfiguracija datoteke /etc/ppp/options.callback <p> Ker so parametri kot <tt>/dev/modem</tt>, 38400 in datotečni parametri opisani v poglavju <ref name="Povezava PPP z MSCHAP" id="ppp-mschap">, bo datoteka <tt>/etc/ppp/options.callback</tt> opisana. Samo novi parametri bodo podrobno opisani. <tscreen><verb> connect '/usr/sbin/chat -v -f /etc/ppp/nt-callback.chat' crtscts bsdcomp 15 lock debug lcp-echo-interval 20 lcp-echo-failure 2 0.0.0.0:0.0.0.0 name "nasadomena\\zeky" remotename "inbelnt" -detach receive-all </verb></tscreen> <p> datoteka: /etc/ppp/options.callback <p> Razlaga parametrov v datoteki <tt>/etc/ppp/options.callback</tt>: <tscreen><verb> connect '....' </verb></tscreen> <p> Povezava z modemom se ustvari s programom 'chat'. Informacije za program 'chat' so shranjene v datoteki "nt_callback.chat" (To je pomen "-f"). Datoteka "win_nt.chat" je razložena poleg. Parameter <tt>-v</tt> pomeni, da vse dnevnike shranjuje prek syslogd v datoteko <tt>/var/log/messages</tt>. <p> <tscreen><verb> crtscts </verb></tscreen> <p> Uporabi strojno korekcijo <p> <tscreen><verb> bsdcomp 15 </verb></tscreen> <p> : Uporabi stiskanje bsd-style <p> <tscreen><verb> lock </verb></tscreen> <p> : Prepreči, da bi modem uporabljal še kak drug program. <p> <tscreen><verb> debug </verb></tscreen> <p> : Aktiviraj razhroščevanje. Vsa sporočila se shranjujejo v /var/log/messages. <p> <tscreen><verb> lcp-echo-interval 20 </verb></tscreen> <p> : poglej 'man pppd' <p> <tscreen><verb> lcp-echo-failure 2 </verb></tscreen> <p> : poglej 'man pppd' <p> <tscreen><verb> 0.0.0.0:0.0.0.0 </verb></tscreen> <p> Oddaljeni in krajevni naslov IP <local_ip_addr>:<remote_ip_addr> <p> <tscreen><verb> name "nasadomena\\zeky" </verb></tscreen> <p> : Vaše NT/2000 uporabniško ime mora biti enako kakor v "chap-secrets". Najbolje je, če uporabite obliko "domena\\uporabnik". <p> <tscreen><verb> remotename "srv-at" </verb></tscreen> <p> : Ime strežnika NT/2000. PPPD ga uporablja za datoteko chap-secrets. <p> <tscreen><verb> -detach </verb></tscreen> <p> : Izločitev iz kontrolnega terminala. PPPD bo poslal proces v ozadju. <p> <tscreen><verb> receive-all </verb></tscreen> : To je za "žužkaste" OS, kot so M$, ki "asyncmap" ne obvladajo najbolje. <p> Razlaga parametrov v datoteki <tt>/etc/ppp/win_nt.chat</tt>: <p> <tscreen><verb> TIMEOUT 120 </verb></tscreen> : Prekini povezavo po 60 sekundah, če ni odziva. <tscreen><verb> ABORT "NO CARRIER" </verb></tscreen> : Opusti, če modem sporoči "no carrier". <tscreen><verb> ABORT "BUSY" </verb></tscreen> : Opusti, če modem sporoči zasedeno linijo. <tscreen><verb> ABORT "NO DIALTONE" </verb></tscreen> : Opusti, če ni zvoka centrale. <tscreen><verb> ABORT "ERROR" </verb></tscreen> : Opusti, ko modem sporoči napako. <tscreen><verb> "" +++ATZ </verb></tscreen> : Inicializacija modema. <tscreen><verb> OK ATE1Q0&C1&S0 </verb></tscreen> Inicializacija modema. <tscreen><verb> RING ATA </verb></tscreen> Počakaj na klic. <tscreen><verb> CONNECT "" </verb></tscreen> Počakaj, dokler modem ne sporoči povezave. <sect1>Datoteka /etc/resolv.conf <p> <tscreen><verb> domain nasadomena nameserver 10.1.1.1 </verb></tscreen> <p> Če to ni vpisano v to datoteko, dobimo sporočilo o napaki z opisom: "No route to host". <sect1>Povezava s protokolom PPP/MSCHAP s funkcijo 'User Defined Callback' <p> Tvoj dnevnik bi moral biti nekako takle: <tscreen><verb> Aug 24 19:51:16 zeky2 pppd[206]: pppd 2.4.0 started by root, uid 0 Aug 24 19:51:16 zeky2 pppd[206]: Perms of /dev/modem are ok, no 'mesgn' neccesary. Aug 24 19:51:17 zeky2 chat[208]: timeout set to 60 seconds Aug 24 19:51:17 zeky2 chat[208]: abort on (BUSY) Aug 24 19:51:17 zeky2 chat[208]: abort on (NO DIALTONE) Aug 24 19:51:17 zeky2 chat[208]: abort on (ERROR) Aug 24 19:51:17 zeky2 chat[208]: send (+++ATX3^M) Aug 24 19:51:17 zeky2 chat[208]: expect (OK) Aug 24 19:51:17 zeky2 chat[208]: +++ATX3^M^M Aug 24 19:51:17 zeky2 chat[208]: OK Aug 24 19:51:17 zeky2 chat[208]: -- got it Aug 24 19:51:17 zeky2 chat[208]: send (ATDT555222^M) Aug 24 19:51:18 zeky2 chat[208]: expect (CONNECT) Aug 24 19:51:18 zeky2 chat[208]: ^M Aug 24 19:51:41 zeky2 chat[208]: ATDT555222^M^M Aug 24 19:51:41 zeky2 chat[208]: CONNECT Aug 24 19:51:41 zeky2 chat[208]: -- got it Aug 24 19:51:41 zeky2 chat[208]: send (^M) Aug 24 19:51:41 zeky2 pppd[206]: Serial connection established. Aug 24 19:51:41 zeky2 pppd[206]: using channel 1 Aug 24 19:51:41 zeky2 pppd[206]: Using interface ppp0 Aug 24 19:51:41 zeky2 pppd[206]: Connect: ppp0 <--> /dev/modem Aug 24 19:51:42 zeky2 pppd[206]: sent [LCP ConfReq id=0x1 <asyncmap0x0> <magic 0x35fbfe6> <pcomp> <accomp>] Aug 24 19:51:43 zeky2 pppd[206]: rcvd [LCP ConfReq id=0x0 <asyncmap0x0> <auth chap 81> <magic 0x6fe718e0> <pcomp> <accomp> <callbackCBCP> <mrru 1614> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]> <17 04 00 d0>] Aug 24 19:51:43 zeky2 pppd[206]: sent [LCP ConfRej id=0x0 <mrru 1614>< 17 04 00 d0>] Aug 24 19:51:43 zeky2 pppd[206]: rcvd [LCP ConfAck id=0x1 <asyncmap0x0> <magic 0x35fbfe6> <pcomp> <accomp>] Aug 24 19:51:43 zeky2 pppd[206]: rcvd [LCP ConfReq id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x6fe718e0> <pcomp> <accomp> <callbackCBCP> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:51:43 zeky2 pppd[206]: sent [LCP ConfAck id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x6fe718e0> <pcomp> <accomp> <callbackCBCP> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:51:43 zeky2 pppd[206]: sent [LCP EchoReq id=0x0magic=0x35fbfe6] Aug 24 19:51:43 zeky2 pppd[206]: cbcp_lowerup Aug 24 19:51:43 zeky2 pppd[206]: want: 12 Aug 24 19:51:43 zeky2 pppd[206]: phone no: 05072399 Aug 24 19:51:44 zeky2 pppd[206]: rcvd [CHAP Challenge id=0x0<fe1cd4d739c4369e7a8dc27783e03c71>, name = "SRV-AT"] Aug 24 19:51:44 zeky2 pppd[206]: sent [CHAP Response id=0x0<e13187c756b3695f0bf81759c480c9ba00000000000000002f2cffea4e6f9ad8a59add96057f8d15890d7d72a9ba3c5200>, name = "nasadomena\\zeky"] Aug 24 19:51:44 zeky2 pppd[206]: rcvd [LCP EchoRep id=0x0magic=0x6fe718e0] Aug 24 19:51:46 zeky2 pppd[206]: rcvd [CHAP Success id=0x0"S=C1C8363139441604DEF8165034EDE105CA171705"] Aug 24 19:51:46 zeky2 pppd[206]: Remote message:S=C1C8363139441604DEF8165034EDE105CA171705 Aug 24 19:51:46 zeky2 pppd[206]: cbcp_open Aug 24 19:51:46 zeky2 pppd[206]: cbcp_req CONF_USER Aug 24 19:51:46 zeky2 pppd[206]: sent [CBCP Request id=0x1 <UserDefined delay = 5 number = 555111>] 30 35 30 37 32 33 39 Aug 24 19:51:46 zeky2 pppd[206]: rcvd [CBCP Request id=0x1 <AdminDefined delay = 0>] Aug 24 19:51:46 zeky2 pppd[206]: length: 3 Aug 24 19:51:46 zeky2 pppd[206]: Callback: user admin defined Aug 24 19:51:46 zeky2 pppd[206]: cbcp_resp cb_type=8 Aug 24 19:51:46 zeky2 pppd[206]: cbcp_resp CONF_ADMIN Aug 24 19:51:46 zeky2 pppd[206]: sent [CBCP Response id=0x1 <AdminDefined delay = 5>] Aug 24 19:51:46 zeky2 pppd[206]: rcvd [CBCP Ack id=0x1 < AdminDefineddelay = 5>] Aug 24 19:51:46 zeky2 pppd[206]: cbcp_lowerdown Aug 24 19:51:46 zeky2 pppd[206]: sent [LCP TermReq id=0x2 "Call meback, please"] Aug 24 19:51:46 zeky2 pppd[206]: rcvd [LCP TermAck id=0x2 "Call meback, please"] Aug 24 19:51:46 zeky2 pppd[206]: Connection terminated. Aug 24 19:51:46 zeky2 pppd[206]: Couldn't release PPP unit:Inappropriate ioctl for device Aug 24 19:51:47 zeky2 pppd[206]: Exit. Aug 24 19:51:47 zeky2 pppd[335]: pppd 2.4.0 started by root, uid 0 Aug 24 19:51:47 zeky2 pppd[335]: Perms of /dev/modem are ok, no 'mesgn' neccesary. Aug 24 19:51:48 zeky2 chat[336]: timeout set to 120 seconds Aug 24 19:51:48 zeky2 chat[336]: abort on (BUSY) Aug 24 19:51:48 zeky2 chat[336]: send (+++ATZ^M) Aug 24 19:51:49 zeky2 chat[336]: expect (RING) Aug 24 19:51:49 zeky2 chat[336]: ^M Aug 24 19:51:49 zeky2 chat[336]: NO CARRIER^M Aug 24 19:51:59 zeky2 chat[336]: ^M Aug 24 19:51:59 zeky2 chat[336]: RING Aug 24 19:51:59 zeky2 chat[336]: -- got it Aug 24 19:51:59 zeky2 chat[336]: send (ATA^M) Aug 24 19:51:59 zeky2 chat[336]: expect (CONNECT) Aug 24 19:51:59 zeky2 chat[336]: ^M Aug 24 19:52:14 zeky2 chat[336]: ATA^M^M Aug 24 19:52:14 zeky2 chat[336]: CONNECT Aug 24 19:52:14 zeky2 chat[336]: -- got it Aug 24 19:52:14 zeky2 chat[336]: send (^M) Aug 24 19:52:14 zeky2 pppd[335]: Serial connection established. Aug 24 19:52:14 zeky2 pppd[335]: using channel 2 Aug 24 19:52:14 zeky2 pppd[335]: Using interface ppp0 Aug 24 19:52:14 zeky2 pppd[335]: Connect: ppp0 <--> /dev/modem Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP ConfReq id=0x1 <asyncmap0x0> <magic 0x37aca770> <pcomp> <accomp>] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP ConfReq id=0x0 <asyncmap0x0> <auth chap 81> <magic 0x78275538> <pcomp> <accomp> <mrru 1614><endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]> <17 04 00 d1>] Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP ConfRej id=0x0 <mrru 1614>< 17 04 00 d1>] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP ConfAck id=0x1 <asyncmap0x0> <magic 0x37aca770> <pcomp> <accomp>] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP ConfReq id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x78275538> <pcomp> <accomp> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP ConfAck id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x78275538> <pcomp> <accomp> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP EchoReq id=0x0magic=0x37aca770] Aug 24 19:52:14 zeky2 pppd[335]: cbcp_lowerup Aug 24 19:52:14 zeky2 pppd[335]: want: 2 Aug 24 19:52:14 zeky2 pppd[335]: rcvd [CHAP Challenge id=0x0<394a1f5a99e21fb634a906f6e4d25607>, name = "SRV-AT"] Aug 24 19:52:14 zeky2 pppd[335]: sent [CHAP Response id=0x0<32f97cf80c4e18c7ecc26c9c0ac555fa00000000000000007da2d64b33e183d7f39d3a509b46215fc22474147616fcf200>, name = "nasadomena\\zeky"] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP EchoRep id=0x0magic=0x78275538] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CHAP Success id=0x0"S=3D222E5BCF9E7F24BAF7BF4238E337DF54B4F64B"] Aug 24 19:52:15 zeky2 pppd[335]: Remote message:S=3D222E5BCF9E7F24BAF7BF4238E337DF54B4F64B Aug 24 19:52:15 zeky2 pppd[335]: sent [IPCP ConfReq id=0x1 <addr0.0.0.0> <compress VJ 0f 01>] Aug 24 19:52:15 zeky2 kernel: PPP BSD Compression module registered Aug 24 19:52:15 zeky2 kernel: PPP Deflate Compression module registered Aug 24 19:52:15 zeky2 pppd[335]: sent [CCP ConfReq id=0x1 <deflate 15><deflate(old#) 15> <bsd v1 15>] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CCP ConfReq id=0x3 <mppe 0 0 01>] Aug 24 19:52:15 zeky2 pppd[335]: sent [CCP ConfRej id=0x3 <mppe 0 0 00>] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [IPCP ConfReq id=0x4 <compressVJ 0f 01> <addr 10.1.1.34>] Aug 24 19:52:15 zeky2 pppd[335]: sent [IPCP ConfAck id=0x4 <compressVJ 0f 01> <addr 10.1.1.34>] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CCP ConfRej id=0x1 <deflate 15><deflate(old#) 15> <bsd v1 15>] Aug 24 19:52:15 zeky2 pppd[335]: sent [CCP ConfReq id=0x2] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CCP ConfAck id=0x2] Aug 24 19:52:17 zeky2 pppd[335]: rcvd [CCP ConfReq id=0x5 <mppe 0 0 01>] Aug 24 19:52:17 zeky2 pppd[335]: sent [CCP ConfRej id=0x5 <mppe 0 0 00>] Aug 24 19:52:18 zeky2 pppd[335]: sent [IPCP ConfReq id=0x1 <addr0.0.0.0> <compress VJ 0f 01>] Aug 24 19:52:18 zeky2 pppd[335]: rcvd [IPCP ConfNak id=0x1 <addr10.1.1.35>] Aug 24 19:52:18 zeky2 pppd[335]: sent [IPCP ConfReq id=0x2 <addr10.1.1.35> <compress VJ 0f 01>] Aug 24 19:52:18 zeky2 pppd[335]: rcvd [IPCP ConfAck id=0x2 <addr10.1.1.35> <compress VJ 0f 01>] Aug 24 19:52:18 zeky2 pppd[335]: local IP address 10.1.1.35 Aug 24 19:52:18 zeky2 pppd[335]: remote IP address 10.1.1.34 Aug 24 19:52:18 zeky2 pppd[335]: Script /etc/ppp/ip-up started (pid366) </verb></tscreen> <p> Del datoteke <tt>/var/log/messages</tt> <sect1>Povezava s protokolom PPP/MSCHAP s funkcijo 'Admin Defined Callback' <p> Vaš dnevnik mora biti nekako takle: <tscreen><verb> Aug 24 19:51:16 zeky2 pppd[206]: pppd 2.4.0 started by root, uid 0 Aug 24 19:51:16 zeky2 pppd[206]: Perms of /dev/modem are ok, no 'mesgn' neccesary. Aug 24 19:51:17 zeky2 chat[208]: timeout set to 60 seconds Aug 24 19:51:17 zeky2 chat[208]: abort on (BUSY) Aug 24 19:51:17 zeky2 chat[208]: abort on (NO DIALTONE) Aug 24 19:51:17 zeky2 chat[208]: abort on (ERROR) Aug 24 19:51:17 zeky2 chat[208]: send (+++ATX3^M) Aug 24 19:51:17 zeky2 chat[208]: expect (OK) Aug 24 19:51:17 zeky2 chat[208]: +++ATX3^M^M Aug 24 19:51:17 zeky2 chat[208]: OK Aug 24 19:51:17 zeky2 chat[208]: -- got it Aug 24 19:51:17 zeky2 chat[208]: send (ATDT555222^M) Aug 24 19:51:18 zeky2 chat[208]: expect (CONNECT) Aug 24 19:51:18 zeky2 chat[208]: ^M Aug 24 19:51:41 zeky2 chat[208]: ATDT555222^M^M Aug 24 19:51:41 zeky2 chat[208]: CONNECT Aug 24 19:51:41 zeky2 chat[208]: -- got it Aug 24 19:51:41 zeky2 chat[208]: send (^M) Aug 24 19:51:41 zeky2 pppd[206]: Serial connection established. Aug 24 19:51:41 zeky2 pppd[206]: using channel 1 Aug 24 19:51:41 zeky2 pppd[206]: Using interface ppp0 Aug 24 19:51:41 zeky2 pppd[206]: Connect: ppp0 <--> /dev/modem Aug 24 19:51:42 zeky2 pppd[206]: sent [LCP ConfReq id=0x1 <asyncmap0x0> <magic 0x35fbfe6> <pcomp> <accomp>] Aug 24 19:51:43 zeky2 pppd[206]: rcvd [LCP ConfReq id=0x0 <asyncmap0x0> <auth chap 81> <magic 0x6fe718e0> <pcomp> <accomp> <callbackCBCP> <mrru 1614> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]> <17 04 00 d0>] Aug 24 19:51:43 zeky2 pppd[206]: sent [LCP ConfRej id=0x0 <mrru 1614>< 17 04 00 d0>] Aug 24 19:51:43 zeky2 pppd[206]: rcvd [LCP ConfAck id=0x1 <asyncmap0x0> <magic 0x35fbfe6> <pcomp> <accomp>] Aug 24 19:51:43 zeky2 pppd[206]: rcvd [LCP ConfReq id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x6fe718e0> <pcomp> <accomp> <callbackCBCP> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:51:43 zeky2 pppd[206]: sent [LCP ConfAck id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x6fe718e0> <pcomp> <accomp> <callbackCBCP> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:51:43 zeky2 pppd[206]: sent [LCP EchoReq id=0x0magic=0x35fbfe6] Aug 24 19:51:43 zeky2 pppd[206]: cbcp_lowerup Aug 24 19:51:43 zeky2 pppd[206]: want: 12 Aug 24 19:51:43 zeky2 pppd[206]: phone no: 05072399 Aug 24 19:51:44 zeky2 pppd[206]: rcvd [CHAP Challenge id=0x0<fe1cd4d739c4369e7a8dc27783e03c71>, name = "SRV-AT"] Aug 24 19:51:44 zeky2 pppd[206]: sent [CHAP Response id=0x0<e13187c756b3695f0bf81759c480c9ba00000000000000002f2cffea4e6f9ad8a59add96057f8d15890d7d72a9ba3c5200>, name = "nasadomena\\zeky"] Aug 24 19:51:44 zeky2 pppd[206]: rcvd [LCP EchoRep id=0x0magic=0x6fe718e0] Aug 24 19:51:46 zeky2 pppd[206]: rcvd [CHAP Success id=0x0"S=C1C8363139441604DEF8165034EDE105CA171705"] Aug 24 19:51:46 zeky2 pppd[206]: Remote message:S=C1C8363139441604DEF8165034EDE105CA171705 Aug 24 19:51:46 zeky2 pppd[206]: cbcp_open Aug 24 19:51:46 zeky2 pppd[206]: cbcp_req CONF_USER Aug 24 19:51:46 zeky2 pppd[206]: sent [CBCP Request id=0x1 <UserDefined delay = 5 number = 0507239>] 30 35 30 37 32 33 39 Aug 24 19:51:46 zeky2 pppd[206]: rcvd [CBCP Request id=0x1 <AdminDefined delay = 0>] Aug 24 19:51:46 zeky2 pppd[206]: length: 3 Aug 24 19:51:46 zeky2 pppd[206]: Callback: user admin defined Aug 24 19:51:46 zeky2 pppd[206]: cbcp_resp cb_type=8 Aug 24 19:51:46 zeky2 pppd[206]: cbcp_resp CONF_ADMIN Aug 24 19:51:46 zeky2 pppd[206]: sent [CBCP Response id=0x1 <AdminDefined delay = 5>] Aug 24 19:51:46 zeky2 pppd[206]: rcvd [CBCP Ack id=0x1 < AdminDefineddelay = 5>] Aug 24 19:51:46 zeky2 pppd[206]: cbcp_lowerdown Aug 24 19:51:46 zeky2 pppd[206]: sent [LCP TermReq id=0x2 "Call meback, please"] Aug 24 19:51:46 zeky2 pppd[206]: rcvd [LCP TermAck id=0x2 "Call meback, please"] Aug 24 19:51:46 zeky2 pppd[206]: Connection terminated. Aug 24 19:51:46 zeky2 pppd[206]: Couldn't release PPP unit:Inappropriate ioctl for device Aug 24 19:51:47 zeky2 pppd[206]: Exit. Aug 24 19:51:47 zeky2 pppd[335]: pppd 2.4.0 started by root, uid 0 Aug 24 19:51:47 zeky2 pppd[335]: Perms of /dev/modem are ok, no 'mesgn' neccesary. Aug 24 19:51:48 zeky2 chat[336]: timeout set to 120 seconds Aug 24 19:51:48 zeky2 chat[336]: abort on (BUSY) Aug 24 19:51:48 zeky2 chat[336]: send (+++ATZ^M) Aug 24 19:51:49 zeky2 chat[336]: expect (RING) Aug 24 19:51:49 zeky2 chat[336]: ^M Aug 24 19:51:49 zeky2 chat[336]: NO CARRIER^M Aug 24 19:51:59 zeky2 chat[336]: ^M Aug 24 19:51:59 zeky2 chat[336]: RING Aug 24 19:51:59 zeky2 chat[336]: -- got it Aug 24 19:51:59 zeky2 chat[336]: send (ATA^M) Aug 24 19:51:59 zeky2 chat[336]: expect (CONNECT) Aug 24 19:51:59 zeky2 chat[336]: ^M Aug 24 19:52:14 zeky2 chat[336]: ATA^M^M Aug 24 19:52:14 zeky2 chat[336]: CONNECT Aug 24 19:52:14 zeky2 chat[336]: -- got it Aug 24 19:52:14 zeky2 chat[336]: send (^M) Aug 24 19:52:14 zeky2 pppd[335]: Serial connection established. Aug 24 19:52:14 zeky2 pppd[335]: using channel 2 Aug 24 19:52:14 zeky2 pppd[335]: Using interface ppp0 Aug 24 19:52:14 zeky2 pppd[335]: Connect: ppp0 <--> /dev/modem Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP ConfReq id=0x1 <asyncmap0x0> <magic 0x37aca770> <pcomp> <accomp>] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP ConfReq id=0x0 <asyncmap0x0> <auth chap 81> <magic 0x78275538> <pcomp> <accomp> <mrru 1614><endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]> <17 04 00 d1>] Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP ConfRej id=0x0 <mrru 1614>< 17 04 00 d1>] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP ConfAck id=0x1 <asyncmap0x0> <magic 0x37aca770> <pcomp> <accomp>] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP ConfReq id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x78275538> <pcomp> <accomp> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP ConfAck id=0x1 <asyncmap0x0> <auth chap 81> <magic 0x78275538> <pcomp> <accomp> <endpoint[local:3e.3f.3a.47.a1.75.4d.ba.8b.70.e0.7b.c0.20.dc.44.00.00.00.00]>] Aug 24 19:52:14 zeky2 pppd[335]: sent [LCP EchoReq id=0x0magic=0x37aca770] Aug 24 19:52:14 zeky2 pppd[335]: cbcp_lowerup Aug 24 19:52:14 zeky2 pppd[335]: want: 2 Aug 24 19:52:14 zeky2 pppd[335]: rcvd [CHAP Challenge id=0x0<394a1f5a99e21fb634a906f6e4d25607>, name = "SRV-AT"] Aug 24 19:52:14 zeky2 pppd[335]: sent [CHAP Response id=0x0<32f97cf80c4e18c7ecc26c9c0ac555fa00000000000000007da2d64b33e183d7f39d3a509b46215fc22474147616fcf200>, name = "nasadomena\\zeky"] Aug 24 19:52:14 zeky2 pppd[335]: rcvd [LCP EchoRep id=0x0magic=0x78275538] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CHAP Success id=0x0"S=3D222E5BCF9E7F24BAF7BF4238E337DF54B4F64B"] Aug 24 19:52:15 zeky2 pppd[335]: Remote message:S=3D222E5BCF9E7F24BAF7BF4238E337DF54B4F64B Aug 24 19:52:15 zeky2 pppd[335]: sent [IPCP ConfReq id=0x1 <addr0.0.0.0> <compress VJ 0f 01>] Aug 24 19:52:15 zeky2 kernel: PPP BSD Compression module registered Aug 24 19:52:15 zeky2 kernel: PPP Deflate Compression module registered Aug 24 19:52:15 zeky2 pppd[335]: sent [CCP ConfReq id=0x1 <deflate 15><deflate(old#) 15> <bsd v1 15>] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CCP ConfReq id=0x3 <mppe 0 0 01>] Aug 24 19:52:15 zeky2 pppd[335]: sent [CCP ConfRej id=0x3 <mppe 0 0 00>] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [IPCP ConfReq id=0x4 <compressVJ 0f 01> <addr 10.1.1.34>] Aug 24 19:52:15 zeky2 pppd[335]: sent [IPCP ConfAck id=0x4 <compressVJ 0f 01> <addr 10.1.1.34>] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CCP ConfRej id=0x1 <deflate 15><deflate(old#) 15> <bsd v1 15>] Aug 24 19:52:15 zeky2 pppd[335]: sent [CCP ConfReq id=0x2] Aug 24 19:52:15 zeky2 pppd[335]: rcvd [CCP ConfAck id=0x2] Aug 24 19:52:17 zeky2 pppd[335]: rcvd [CCP ConfReq id=0x5 <mppe 0 0 01>] Aug 24 19:52:17 zeky2 pppd[335]: sent [CCP ConfRej id=0x5 <mppe 0 0 00>] Aug 24 19:52:18 zeky2 pppd[335]: sent [IPCP ConfReq id=0x1 <addr0.0.0.0> <compress VJ 0f 01>] Aug 24 19:52:18 zeky2 pppd[335]: rcvd [IPCP ConfNak id=0x1 <addr10.1.1.35>] Aug 24 19:52:18 zeky2 pppd[335]: sent [IPCP ConfReq id=0x2 <addr10.1.1.35> <compress VJ 0f 01>] Aug 24 19:52:18 zeky2 pppd[335]: rcvd [IPCP ConfAck id=0x2 <addr10.1.1.35> <compress VJ 0f 01>] Aug 24 19:52:18 zeky2 pppd[335]: local IP address 10.1.1.35 Aug 24 19:52:18 zeky2 pppd[335]: remote IP address 10.1.1.34 Aug 24 19:52:18 zeky2 pppd[335]: Script /etc/ppp/ip-up started (pid366) </verb></tscreen> <p> Del datoteke /var/log/messages <sect>Dodatek <p> <sect1>Kako spremeniti datoteko syslog.conf za razhroščevanje pppd <p> Za beleženje v datoteko <tt>/var/log/messages</tt> morate nastaviti naslednje: <itemize> <item> Dodajte parameter 'debug' v datoteko pppd options. <item> Dodajte to vrstico v /etc/syslog.conf. <tscreen><verb> deamon.* /var/log/messages </verb></tscreen> </itemize> <p> Znova zaženite syslogd s <tt>kill -SIGHUP 'syslogd PID'</tt>. <sect1>Literatura <p> <enum> <item> Bodo Bauer; Magic Connection; Mit dem Point to Point Protocol ins Internet; iX 1/96, S.154 <item> S. Hetze u. a.; LinuX Anwenderhandbuch und Leitfaden fuer die Systemverwaltung, 5. erweiterte und aktualisierte Auflage, S. 329 LunetIX Softfair ISBN 3-929764-04-0 <item> Olaf Kirch; Linux Wegweiser fuer Netzwerker; 1996, deutsche Ausgabe; O'Reilly ISBN 3-930673-18-5 <item> Terry Dawson; Linux NET-2 HOWTO; 16 January 1996; <url url="http://www.suse.de/doku/howto/NET-2-HOWTO.html"> <item> Robert Hart; Linux PPP HOWTO; 25 August 1996. <url url="http://www.suse.de/doku/howto/PPP-HOWTO.html"> <item> Siegfried Schoen Linux/PPP HOWTO; <url url="http://www.suse.de/doku/ppp_nt/PPP-NT-HOWTO.html"> </enum> <sect1>Načrti <p> Konfiguracija in preskušanje za ipppd (ISDN PPP). <sect>FAQ <p> Ali mi lahko pomagaš analizirati moje dnevniške datoteke? <p> Poskusil ti bom pomagati, a nisem ravno strokovnjak za to. <p> <bf>Ali mi lahko poveš, katera je moja domena NT?</bf> <p> Na žalost ne. To moraš vprašati svojega sistemskega upravitelja. <p> <bf>Strežnika NT, ki ga kličem, ni v domeni NT. Kaj zdaj?</bf> <p> Za domeno NT uporabi ime računalnika strežnika. Ali pa ne uporabi sintakse 'domain\\user', temveč sintakso 'user'. To je mogoče zato, ker tvoj strežnik tudi opravi overovljanje. Zato lahko v domeni NT uporabiš sintakso 'user', če kličeš v PDC ali BDC. <p> <bf>PPP sem prevedel kot modul in zdaj dobivam sporočila v obliki napake "can't locate module ppp-compress-24"</bf> <p> Dodati moraš naslednje vrstice v datoteko <tt>/etc/conf.modules</tt> ali pa <tt>/etc/modules.conf</tt>: <tscreen><verb> alias ppp-compress-21 bsd_comp alias ppp-compress-24 ppp_deflate alias ppp-compress-26 ppp_deflate </verb></tscreen> <p> <bf>Prepričan sem, da je moje geslo pravilno, ampak vedno dobim "CHAP failure E=691 R=1".</bf> <p> Če je tvoje geslo daljše od 14 znakov, ga presekaj na največ 14 znakov. NT ima geslo omejeno na 14 znakov. <p> Anže Vidmar, <htmlurl url="mailto:zeky@avtotehna.si" name="zeky@avtotehna.si"> </article>