Prijavna skripta

Priročnik kppp
Nazaj | Poglavje 4. Nastavitev računa | Naprej

# 4.5. Prijavna skripta

Uredi skript

  Uporabite to pogovorno okno, da sestavite klicno skripto za klicno povezavo z vašim ISP-jem. Uporabite mini-terminal in informacije pridobljene od vašega ISP-ja, da boste razumeli katera zaporedja akcij so potrebna za izvršitev.

  - Expect: kppp bo čakal na določen niz, ki ga mora prejeti.

  - Send: kppp bo poslal določen niz.

  - Scan: kppp bo pregledoval vhodni tok za določenim nizom in shranil katerikoli znak po nizu do prve nove vrstice v internem medpomnilinku. Zadnji in vodilni presledek bosta odrezana.

  - Save: trajno shraniti prej pregledn niz v določen register. Do sedaj je edini veljaven register 'password'.

  - Pause: naredi odmor za določen časovni interval v sekundah

  - Hangup: kppp bo poslal modemu ukaz za prekinitev(obesiti modem)

  - Answer: kppp bo postavil modem v način za odgovarjanje

  - Timeout: dinamično spremeni privzeti čas odmora na določeno časovno vrednost v sekundah med izvrševanjem skripte. Če je potrebno, lahko med izvrševanjem večkrat spremenite čas odmora.

  - Prompt: kppp namigne uporabniku z določenim nizom, naj vnese določen niz. Uporabnik bo videl kaj je vtipkano. Če določen niz vključuje oznako ## bo oznaka zamenjana s trenutno vsebino pregledanega intrenega medpomnilnika.

  - PWPrompt: kppp namigne uporabniku z določenim nizom, naj vnese določen niz. Za vsak vtipkan znak bo prikazana zvezdica.

  - ID: če je ID polje na kppp-jevem glavnem pogovornem oknu zapolnjeno, pošlji ta ID. Če ID polje ni zapolnjeno, kppp namigne uporabniku z določenim nizom, naj vnese ID. Uporabnik bo videl kaj je vtipkano. Ob drugem prehodu, kot v primeru zanke se bo ob drugi ponovitvi, prikazalo okno in vam namignilo določeni niz.

  - Password: Če je polje password na glavnem kppp pogovornem oknu zapolnjeno, pošlje to geslo. Če polje password ni zapolnjeno, kppp namigne uporabniku z določenim nizom, naj vnese geslo. Za vsak vtipkan znak bo prikazana zvezdica. Ob drugem prehodu, kot v primeru zanke se bo ob drugi ponovitvi, prikazalo okno in vam namignilo z določenim nizom.

  - LoopStart: kppp bo čakal na določen niz, ki ga mora prejeti. Niz bo shranil za uporabo pri LoopEnd

  - LoopEnd: kppp bo čakal na določen niz, ki ga mora prejeti, da zapusti zanko. Če najprej prejme niz od primernega LoopStart, bo sprožil skok na vrstico po LoopStart delu in s tem omogočil ponovitev username/password sloga na pare pogovornih oken.

## 4.5.1. Primeri skript

Tukaj je preprosta skripta, ki jo lahko uporabljam za povezavo z mojim ISP-jem:

     Expect      ID:                        # čakaj na ID:
     Send        myid                       # myid morate zamenjati z vašim id
     Expect      word:                      # čakaj na 'password'
     Send        4u3fjkl                    # pošlji moje geslo '4u3fjkl'
     Expect      granted                    # Moj ISP pošlje 'Permission granted' ob uspešni prijavi.
     Send        ppp                        # To zažene ppp povezavo za
                                            # mene na ISP-jevi strani.

Tukaj je skripta za enak račun z ID in zahtevo gesla: Ta skripta vas bo vsakič vprašala za ID in geslo, ne glede na to, kaj je vpisano v poljih ID in geslo v kppp-jevem glavnem pogovornem oknu. Ta skripta prikaže tudi uporabo strukture LoopStart/LoopEnd. Če gre med prijavnim postopkom kaj narobe, na primer, če napačno vpišem geslo, bo moj ISP izpisal obvestilo o napaki in ponovno zagnal id/password zanko s ponovnim izpisom niza "ID:". Če je niz "ID" zaznan preden je bila LoopEnd ključna beseda razčlenjena, bo kppp ponovno zagnal skripto po LoopStart ključni besedi.

     LoopStart   ID:                        # čakaj na ID:
     Prompt      Enter ID:                  # Vprašaj me za moj ID in ga odpošlji.
     Expect      word:                      # čakaj na 'password'
     PWPrompt    Enter Password:            # Vprašaj me za moje geslo in je odpošlji.
     LoopEnd     granted                    # Moj ISP pošlje 'Permission granted' ob uspešni prijavi.
     Send        ppp                        # To zažene ppp povezavo za mene

Tukaj je skripta, ki jo trenutno uporabljam za povezovanje z mojim ISP-jem: Ta skripta bo vprašala za ID in geslo samo če nisem izpolnil primerna polja v kppp-jevem glavnem pogovornem oknu.

     LoopStart   ID:                        # čakaj na ID:
     ID          Enter ID:                  # Vprašaj me za moj ID in ga odpošlji.
     Expect      word:                      # čakaj na 'password'
     Password    Enter Password             # Vprašaj me za moje geslo in je odpošlji.
     LoopEnd     granted                    # Moj ISP pošlje 'Permission granted' ob uspešni prijavi.
     Send        ppp                        # To zažene ppp povezavo za mene
                                            # na ISP-jevi strani

Tukaj je skripta, ki jo uporabljam za povezovanje z ISP-jem, ki uporablja neko vrsto pozivno/odgovorne identifikacije. Ponavadi dobite strojni izkaz (hardware token) (pametno katrico z zaslonom in kalkulatorjem kot je keypad) od vašega ISP-ja. Tukaj morate vedeti geslo, da lahko uporabljate izkaz. Ko kličete, vam vaš ISP prikaže poziv. Na poziv morate odgovoriti z vašim izkazom in pridobiti dinamično geslo kot odgovor. Potem morate vnesti to geslo.

     LoopStart   ID:                        # čakaj na ID:
     ID          Enter ID:                  # Vprašaj me za moj ID in ga odpošlji.
     Scan        Challenge:                 # Preglej za 'Poziv' in shrani vse za tem do naslednje nove vrstice.
     Expect      Password:                  # čakaj na 'password'
     Prompt      Your token is ## - vnesite geslo  # Vprašaj me za moje geslo in je odpošlji.
     LoopEnd     granted                    # Moj ISP pošlje 'Permission granted' ob uspešni prijavi.
     Send        ppp                        # To zažene ppp povezavo za mene
                                            # na ISP-jevi strani

Naslednji dnevnik prikazuje prijavno proceduro izmišljenega ISP-ja, ki določi novo geslo ob vsaki prijavi. Novo geslo mora biti preverjeno in shranjeno za naslednjo sejo.

     University of Lummerland

     Login:mylogin
     Password:
     The password for your next session is: YLeLfkZb
     Please record and enter it for verification.
     Verification:YLeLfkZb

     1 = telnet
     2 = SLIP
     3 = PPP

     Your choice:

kppp se lahko uporablja, da naredi tista nadležna opravila za vas (izniči tveganje za izgubo tistega majhnega papirja, na katerem je vaše geslo). Ključni del naslednje skripte je kombinacija Scan/Save ključnih besed:

     Expect      Login:                     # čakaj na vprašanje za prijavo
     ID                                     # pošlji ID
     Expect      Password:                  # čakaj na vprašanje za geslo
     Password                               # pošlji geslo
     Scan        is:                        # čakaj na '... next session is:' in
                                            # preglej predhodno geslo
     Save        password                   # shrani novo geslo za naslednjo prijavo
     Expect      Verification:              # čakaj na 'Verification:'
     Password                               # pošlji novo geslo
     Expect      choice:                    # čakaj na vrstico, ki vam omogoča izbiro
                                            # med različnimi možnostimi (telnet, SLIP, PPP)
     Send        3                          # izberite tretjo možnost, npr. PPP

Nazaj | Domov | Naprej
Prehod | Gor | Računovodstvo