Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan

Endezyarên torê bi gelemperî bi peywira kopîkirin / xistina hin perçeyan ji notepadê berbi konsolê re rû bi rû dimînin. Bi gelemperî divê hûn çend parameteran kopî bikin: Navê bikarhêner / Şîfre û tiştek din. Bikaranîna senaryoyan dihêle hûn vê pêvajoyê bilez bikin. LÊ divê karên nivîsandina senaryoyê û pêkanîna senaryoyê bi tevahî ji veavakirina destan kêmtir wext bigire, wekî din senaryo bêkêr in.

Ev gotar ji bo çi ye? Ev gotar ji rêza Destpêka Bilez e û armanc ew e ku dema ku amûran (karê yekane) li ser gelek cîhazan saz dikin dema endezyarên torê xilas bike. Nermalava SecureCRT û fonksiyona darvekirina nivîsarê ya çêkirî bikar tîne.

Contains

Pîrozbahiyê

Bernameya SecureCRT xwedan mekanîzmayek darvekirina skrîptê ya li derveyî qutiyê ye. Nivîsarên termînalê ji bo çi ne?

  • I/O otomatîk, û pejirandina I/O ya hindiktirîn.
  • Zêdekirina pêkanîna karên rûtîn - kêmkirina rawestan di navbera mîhengên amûran de. (Kêmkirina defakto ya rawestanên ku ji ber dema pêkanîna kiryarên kopî/biborî li ser heman hardware, bi 3 an bêtir perçeyên fermanê yên ku li ser hardware têne sepandin.)

Di vê belgeyê de peywiran vedihewîne:

  • Afirandina nivîsarên hêsan.
  • Nivîsarên li ser SecureCRT dimeşînin.
  • Nimûneyên karanîna nivîsarên hêsan û pêşkeftî. (Ji jiyana rast pratîk bikin.)

Afirandina nivîsarên hêsan.

Skrîptên herî hêsan tenê du fermanan bikar tînin, Send û WaitForString. Ev fonksiyona ji bo 90% (an jî bêtir) ji karên ku têne kirin bes e.

Skrîpt dikarin di Python, JS, VBS (Visual Basic), Perl, hwd de bixebitin.

python

# $language = "Python"
# $interface = "1.0"
def main():
  crt.Screen.Synchronous = True
  crt.Screen.Send("r")
  crt.Screen.WaitForString("name")
  crt.Screen.Send("adminr")
  crt.Screen.WaitForString("Password:")
  crt.Screen.Send("Password")
  crt.Screen.Synchronous = False
main()

Bi gelemperî pelek bi dirêjkirina "*.py"

VBS

# $language = "VBScript"
# $interface = "1.0"
Sub Main
  crt.Screen.Synchronous = True
  crt.Screen.Send vbcr
  crt.Screen.WaitForString "name"
  crt.Screen.Send "cisco" & vbcr
  crt.Screen.WaitForString "assword"
  crt.Screen.Send "cisco" & vbcr
  crt.Screen.Synchronous = False
End Sub

Bi gelemperî pelek bi dirêjkirina "*.vbs"

Bi karanîna navnîşek skrîptê re nivîsek çêbikin.

Destûrê dide we ku hûn pêvajoya nivîsandina senaryoyekê otomatîk bikin. Hûn dest bi nivîsandina senaryoyekê dikin. SecureCRT fermanan û bersiva hardware ya paşîn tomar dike û skrîpta qedandî ji we re destnîşan dike.

YEK. Dest bi nivîsandina senaryoyê bikin:
SecureCRT Menu => Skrîpt => Destpêkirina Skrîpta Tomarkirinê
b. Bi konsolê re çalakiyan pêk bînin (di CLI de gavên veavakirinê pêk bînin).
V. Nivîsandina senaryoyê biqedînin:
SecureCRT Menu => Skrîpt => Skrîpta Tomarkirinê Rawestîne…
Pelê skrîptê hilînin.

Mînaka fermanên hatine darvekirin û skrîpta tomarkirî:

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan

Nivîsarên li ser SecureCRT dimeşînin.

Piştî afirandin/serrastkirina senaryoyê, pirsek xwezayî derdikeve holê: Meriv çawa senaryoyê bi kar tîne?
Gelek awayên wê hene:

  • Ji pêşeka Skrîptê bi destan dimeşîne
  • Destpêka otomatîk piştî girêdanê (nivîsa têketinê)
  • Têkevekirina otomatîkî bêyî karanîna skrîptê
  • Di SecureCRT de bi bişkokek bi destan veqetandin (bişkokek hêj nehatiye afirandin û li SecureCRT zêde nebûye)

Ji pêşeka Skrîptê bi destan dimeşîne

Pêşek SecureCRT => Skrîpt => Bixebitîne…
- 10 nivîsarên paşîn têne bîranîn û ji bo destpêkirina bilez têne peyda kirin:
Menuya SecureCRT => Skrîpt => 1 "Navê pelê skrîptê"
Menuya SecureCRT => Skrîpt => 2 "Navê pelê skrîptê"
Menuya SecureCRT => Skrîpt => 3 "Navê pelê skrîptê"
Menuya SecureCRT => Skrîpt => 4 "Navê pelê skrîptê"
Menuya SecureCRT => Skrîpt => 5 "Navê pelê skrîptê"

Destpêka otomatîk piştî girêdanê (nivîsa têketinê)

Mîhengên skrîpta têketinê ya otomatîk ji bo danişîna tomarkirî têne mîheng kirin: Têkilî => Çalakiyên Têketinê => Nivîsara têketinê

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan

Têkevekirina otomatîkî bêyî karanîna skrîptê

Mimkun e ku meriv bixweber navê bikarhênerê şîfreyê bêyî nivîsandina skrîptê, bi tenê fonksiyona çêkirî ya SecureCRT bikar bîne. Di mîhengên pêwendiyê de "Têkilî" => Çalakiyên Têketinê => Têketinê bixweber - hûn hewce ne ku çend koman dagirin - ku tê vê wateyê cotan: "Nivîsa hêvîkirî" + "Karakterên ji vê nivîsê re şandin" dikare gelek cotên weha hebin. (Mînak: Cotê 1mîn li benda navê bikarhêner, ya duyem li benda şîfreyê, sêyemîn li benda daxwaza moda îmtiyazê, cotê çaremîn ji bo şîfreya moda îmtiyazê.)

Mînaka têketina otomatîkî ya li ser Cisco ASA:

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan

Di SecureCRT de bi bişkokek bi destan veqetandin (bişkokek hêj nehatiye afirandin û li SecureCRT zêde nebûye)

Di SecureCRT de, hûn dikarin skrîptek bişkojkê veqetînin. Bişkojk li panelek ku bi taybetî ji bo vê armancê hatî çêkirin tê zêdekirin.

YEK. Zêdekirina panelek li navrûyê: SecureCRT Menu => Nîşan => Barê Bişkokê
b. Bişkokek li panelê zêde bikin û skrîptek lê zêde bikin. - Li Barê Bişkojkê rast-klîk bikin û ji pêşeka çarçoveyê "Bişkojka Nû…" hilbijêrin.
V. Di qutiya diyalogê "Bişkojka Nexşeyê" de, di qada "Çalak" de, çalakiya (fonksiyonê) "Run Script" hilbijêrin.
Sernavek ji bo bişkojê diyar bikin. Rengê ji bo îkonê bişkojka. Mîhengan bi tikandina Ok biqedînin.

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan

Têbînî:

Panela bi bişkokan fonksiyonek pir bikêr e.

1. Dibe ku dema Têkeve danişînek taybetî, diyar bike ka kîjan panelê ji bo vê tabloyê veke.

2. Mimkun e ku ji bo kiryarên standard bi amûran re çalakiyên pêşwext werin danîn: guhertoya nîşan bide, xebitandin-config nîşan bide, veavakirinê hilîne.

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan
Ti skrîpt bi van bişkokan ve nayê girêdan. Tenê xeta çalakiyê:

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan
Mîheng - da ku dema ku veguheztina danişînê, panela pêdivî ya bi bişkokan di mîhengên danişînê de vedibe:

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan
Ji xerîdar re maqûl e ku ji bo Têketinê nivîsarên kesane saz bike û bi fermanên domdar ji bo firoşker re here panelê.

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan
Dema ku hûn pêl bişkoka Go Cisco-yê bikin, panel vediguhere Barika Bişkojka Cisco.

Xweserkirina Têketinê li SecureCRT Bi Bikaranîna Skrîptan

Nimûneyên karanîna nivîsarên hêsan û pêşkeftî. (Ji jiyana rast pratîk bikin.)

Nivîsarên hêsan hema hema ji bo hemî bûyeran bes in. Lê carekê min hewce kir ku senaryoyê hinekî tevlihev bikim - ji bo lezkirina xebatê. Vê tevliheviyê tenê di qutiyek diyalogê de ji bikarhêner daneya zêde xwest.

Daxwaza daneyan ji bikarhêner bi karanîna qutiyek diyalogê

Di skrîpta daxwaza daneyê de min 2 hebûn. Ev Navê Hostê û okteta 4emîn a navnîşana IP-yê ye. Ji bo pêkanîna vê çalakiyê - min google kir ku ez çawa bikim û ew li ser malpera fermî ya SecureCRT (vandyke) dît. - fonksiyonê bilez tê gotin.

	crt.Screen.WaitForString("-Vlanif200]")
	hostnamestr = crt.Dialog.Prompt("Enter hostname:", "hostname", "", False)
	ipaddressstr = crt.Dialog.Prompt("Enter ip address:", "ip", "", False)
	crt.Screen.Send("ip address 10.10.10.")
	crt.Screen.Send(ipaddressstr)
	crt.Screen.Send(" 23r")
	crt.Screen.Send("quitr")
	crt.Screen.Send("sysname ")
	crt.Screen.Send(hostnamestr)
	crt.Screen.Send("r") 

Vê beşa skrîptê navê Hostname û hejmarên ji okteta paşîn xwest. Ji ber ku 15 parçe alavên hebûn. Û daneyan di tabloyek de hate pêşkêş kirin, dûv re min nirxan ji tabloyê kopî kir û ew xist nav qutiyên diyalogê. Wekî din senaryo serbixwe xebitî.

Kopîkirina FTP li alavên torê.

Vê skrîptê pencereya fermana min (şêl) dest pê kir û daneyan bi FTP-ê kopî kir. Di dawiyê de, rûniştinê bigire. Ji bo vê yekê ne gengaz e ku meriv notepad bikar bîne, ji ber ku kopîkirin demek pir dirêj digire û daneyên di tampona FTP-ê de dê ewqas dirêj neyê hilanîn:

# $language = "Python"
# $interface = "1.0"

# Connect to a telnet server and automate the initial login sequence.
# Note that synchronous mode is enabled to prevent server output from
# potentially being missed.

def main():
	crt.Screen.Synchronous = True
	crt.Screen.Send("ftp 192.168.1.1r")
	crt.Screen.WaitForString("Name")
	crt.Screen.Send("adminr")
	crt.Screen.WaitForString("Password:")
	crt.Screen.Send("Passwordr")
	crt.Screen.WaitForString("ftp")
	crt.Screen.Send("binaryr")
	crt.Screen.WaitForString("ftp")
	crt.Screen.Send("put S5720LI-V200R011SPH016.patr")
	crt.Screen.WaitForString("ftp")
	crt.Screen.Send("quitr")
	crt.Screen.Synchronous = False
main()

Navê bikarhêner / şîfreyê bi karanîna skrîptê têkevin

Li yek xerîdar gihîştina alavên torê rasterast hate girtin. Mimkûn bû ku meriv pêşî bi girêdana bi Default Gateway, û ji wê paşê jî bi alavên ku pê ve girêdayî ye bikeve amûrê. Muwekîlê ssh-ê ku di nermalava IOS/hardware-yê de hatî çêkirin ji bo girêdanê hate bikar anîn. Li gorî vê yekê, di konsolê de navê bikarhêner û şîfre hate xwestin. Bi skrîpta jêrîn re, navê bikarhêner û şîfre bixweber hatin nivîsandin:

# $language = "Python"
# $interface = "1.0"

# Connect to a telnet server and automate the initial login sequence.
# Note that synchronous mode is enabled to prevent server output from
# potentially being missed.

def main():
	crt.Screen.Synchronous = True
	crt.Screen.Send("snmpadminr")
	crt.Screen.WaitForString("assword:")
	crt.Screen.Send("Passwordr")
	crt.Screen.Synchronous = False
main()

Nîşe: 2 skrîpt hebûn.Yek ji bo hesabê rêveberê, ya duyemîn ji bo hesabê eSIGHT.

Skrîpta bi şiyana ku rasterast daneyê di dema darvekirina skrîptê de zêde bike.

Kar ev bû ku li ser hemî alavên torê rêyek statîk zêde bikin. Lê dergehê Înternetê li ser her amûrekê cûda bû (û ew ji deriyê xwerû cûda bû). Skrîpta jêrîn tabloya rêvekirinê nîşan da, ket moda mîhengê, ferman heya dawiyê nenivîsand (navnîşana IP-ya dergehê Înternetê) - Min ev beş lê zêde kir. Piştî ku min Enter pêl kir, skrîpt berdewamkirina fermanê berdewam kir.

# $language = "Python"
# $interface = "1.0"

# Connect to a telnet server and automate the initial login sequence.
# Note that synchronous mode is enabled to prevent server output from
# potentially being missed.

def main():
	crt.Screen.Synchronous = True
	crt.Screen.Send("Zdes-mogla-bit-vasha-reklamar")
	crt.Screen.WaitForString("#")
	crt.Screen.Send("show run | inc ip router")
	crt.Screen.WaitForString("#")
	crt.Screen.Send("conf tr")
	crt.Screen.WaitForString("(config)#")
	crt.Screen.Send("ip route 10.10.10.8 255.255.255.252 ")
	crt.Screen.WaitForString("(config)#")
	crt.Screen.Send("endr")
	crt.Screen.WaitForString("#")
	crt.Screen.Send("copy run star")
	crt.Screen.WaitForString("[startup-config]?")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("#")
	crt.Screen.Send("exitr")
	crt.Screen.Synchronous = False
main()

Di vê skrîptê de, di rêzê de: crt.Screen.Send("ip route 10.10.10.8 255.255.255.252 ") navnîşana IP-ya dergehê nayê zêdekirin û karakterek vegerê ya bargiriyê tune. Skrîpt li benda rêzika din a bi tîpên "(config) #" e, piştî ku min navnîşana ip-ê nivîsand û têkevim ev tîp xuya bûn.

Xelasî:

Di dema nivîsandina senaryoyekê û bicihanîna wê de, divê ev qaîde were şopandin: Dema nivîsandina senaryoyekê û cîbicîkirina senaryoyekê divê qet ji dema ku bi teorîk ji bo kirina heman xebatê bi destan tê xerckirin (kopîkirin / pêvekirina ji defterekê, nivîsandin û xeletkirin) zêdetir nebe. pirtûkek lîstikê ya ji bo skrîpta python ansible, nivîsandin û xeletkirinê). Ango, karanîna senaryoyê divê wext xilas bike, û wextê xwe li ser yek-carî otomatîkkirina pêvajoyan winda neke (ango, gava ku nivîs yekta ye û dê dubare nebe). Lê heke skrîpt yekta ye û otomatîvkirina bi senaryoyê û nivîsandina / verastkirina senaryoyê ji kirina wê bi rengekî din kêmtir wext digire (ansibil, pencereya fermanê), wê hingê skrîpt çareseriya çêtirîn e.
Debugging a skrîptê. Skrîpt hêdî hêdî mezin dibe, debugkirin li ser cîhaza yekem, duyemîn, sêyemîn pêk tê, û ji çaremîn pê ve bi îhtîmalek mezin dê senaryo bi tevahî bixebite.

Rêvekirina skrîptekê (bi ketina navê bikarhêner + şîfreya) bi mişkê bi gelemperî ji kopîkirina Navê Bikarhêner û Şîfreyê ji notepadê zûtir e. Lê ji aliyê ewlehiyê ve ne ewle ye.
Mînakek din (rastîn) dema ku skrîptek bikar tîne: Tu rasterast gihîştina alavên torê tune. Lê pêdivî ye ku hemî alavên torê mîheng bikin (wê bînin nav pergala çavdêriyê, Navekî / şîfreyek / snmpv3 navê bikarhêner / şîfreyek din mîheng bikin). Gava ku hûn diçin Guhestina Core gihîştinê heye, ji wir hûn SSH-ê ji alavên din re vedikin. Çima hûn nikarin Ansible bikar bînin. - Ji ber ku em li ser hejmara danişînên hevdem ên destûrkirî yên li ser alavên torê (xeta vty 0 4, navrûya bikarhêner-vty 0 4) sînorek dimeşînin (pirsek din ev e ku meriv çawa bi heman hopa yekem SSH-ê di Ansible-ê de amûrên cihêreng dest pê dike).

Nivîsar di dema operasyonên dirêj de wext kêm dike - mînakî, kopîkirina pelan bi FTP. Piştî kopîkirin qediya, senaryo tavilê dest bi xebatê dike. Pêdivî ye ku mirov dawiya kopîkirinê bibîne, dûv re dawiya kopîkirinê fam bike, dûv re emrên guncan têkeve. Skrîpt wê bi awayekî objektîf zûtir dike.

Skrîpt li cîhê ku ne gengaz e ku meriv amûrên radestkirina daneya girseyî bikar bîne pêk tê: Konsole. An jî gava ku hin daneyên ji bo amûrê yekta ne: navê mêvandar, navnîşana IP-ya rêveberiyê. An jî dema nivîsandina bernameyekê û xeletkirinê ew ji lê zêdekirina daneya ku ji amûrê hatî wergirtin dema ku skrîpt dimeşe dijwartir e. - Mînakek bi skrîptek ji bo destnîşankirina rêgezê, gava ku her amûrek navnîşana IP-ya xweya pêşkêşvanê Înternetê heye. (Hevalên min senaryoyên weha nivîsandin - dema ku DMVPN di ser 3-î re peyivî bû. Pêwîst bû ku mîhengên DMVPN biguhere).

Lêkolîna Dozê: Veavakirina Mîhengên Destpêkê li ser Guhezek Nû Bi Bikaranîna Portên Konsolê:

A. Kabloya konsolê xist nav cîhazê.
B. Skrîptê bimeşîne
B. Li benda cîbicîkirina senaryoyê man
D. Kabloya konsolê xist nav cîhaza din.
E. Ger guhêrbar ne ya dawî be, herin gava B.

Di encama xebata senaryoyê de:

  • şîfreya destpêkê li ser amûrê tê danîn.
  • Navê bikarhêner têketin
  • navnîşana IP-ya yekta ya cîhazê tête navnîş kirin.

PS diviyabû operasyon dubare bibûya. Ji ber ku Default ssh nehate mîheng kirin/neçalak kirin. (Erê, ev xeletiya min e.)

Çavkaniyên bikaranîn.

1. Di derbarê afirandina senaryoyan de
2. Mînakên Skrîptê

Pêvek 1: Nimûneyên nivîsar.


Mînakek nivîsarek dirêj, bi du pirsan: Navê mêvandar û navnîşana IP. Ew ji bo pêşdibistanên alavên bi navgîniya konsolê (9600 baud) hate afirandin. Û her weha ji bo amadekirina girêdana amûran bi torê re.

# $language = "Python"
# $interface = "1.0"

# Connect to a telnet server and automate the initial login sequence.
# Note that synchronous mode is enabled to prevent server output from
# potentially being missed.

def main():
	crt.Screen.Synchronous = True
	crt.Screen.Send("r")
	crt.Screen.WaitForString("name")
	crt.Screen.Send("adminr")
	crt.Screen.WaitForString("Password:")
	crt.Screen.Send("Passwordr")
	crt.Screen.Send("sysr")
	crt.Screen.WaitForString("]")
	crt.Screen.Send("interface Vlanif 1r")
	crt.Screen.WaitForString("Vlanif1]")
	crt.Screen.Send("undo ip addressr")
	crt.Screen.Send("shutdownr")
	crt.Screen.Send("vlan 100r")
	crt.Screen.Send(" description description1r")
	crt.Screen.Send(" name description1r")
	crt.Screen.Send("vlan 110r")
	crt.Screen.Send(" description description2r")
	crt.Screen.Send(" name description2r")
	crt.Screen.Send("vlan 120r")
	crt.Screen.Send(" description description3r")
	crt.Screen.Send(" name description3r")
	crt.Screen.Send("vlan 130r")
	crt.Screen.Send(" description description4r")
	crt.Screen.Send(" name description4r")
	crt.Screen.Send("vlan 140r")
	crt.Screen.Send(" description description5r")
	crt.Screen.Send(" name description5r")
	crt.Screen.Send("vlan 150r")
	crt.Screen.Send(" description description6r")
	crt.Screen.Send(" name description6r")
	crt.Screen.Send("vlan 160r")
	crt.Screen.Send(" description description7r")
	crt.Screen.Send(" name description7r")
	crt.Screen.Send("vlan 170r")
	crt.Screen.Send(" description description8r")
	crt.Screen.Send(" name description8r")               
	crt.Screen.Send("vlan 180r")
	crt.Screen.Send(" description description9r")
	crt.Screen.Send(" name description9r")
	crt.Screen.Send("vlan 200r")
	crt.Screen.Send(" description description10r")
	crt.Screen.Send(" name description10r")
	crt.Screen.Send("vlan 300r")
	crt.Screen.Send(" description description11r")
	crt.Screen.Send(" name description11r")
	crt.Screen.Send("quitr")
	crt.Screen.WaitForString("]")
	crt.Screen.Send("stp region-configurationr")
	crt.Screen.Send("region-name descr")
	crt.Screen.Send("active region-configurationr")
	crt.Screen.WaitForString("mst-region]")
	crt.Screen.Send("quitr")
	crt.Screen.Send("stp instance 0 priority 57344r")
	crt.Screen.WaitForString("]")
	crt.Screen.Send("interface range GigabitEthernet 0/0/1 to GigabitEthernet 0/0/42r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("description Usersr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port link-type hybridr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("voice-vlan 100 enabler")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("voice-vlan legacy enabler")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port hybrid pvid vlan 120r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port hybrid tagged vlan 100r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port hybrid untagged vlan 120r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("stp edged-port enabler")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("trust 8021pr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control broadcast min-rate 1000 max-rate 1500r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control multicast min-rate 1000 max-rate 1500r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control action blockr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control enable trapr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("quitr")
	crt.Screen.Send("interface range GigabitEthernet 0/0/43 to GigabitEthernet 0/0/48r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("description Printersr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port link-type accessr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port default vlan 130r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("stp edged-port enabler")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("trust 8021pr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control broadcast min-rate 1000 max-rate 1500r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control multicast min-rate 1000 max-rate 1500r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control action blockr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control enable trapr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("quitr")
	crt.Screen.Send("interface range XGigabitEthernet 0/0/1 to XGigabitEthernet 0/0/2r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("description uplinkr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port link-type trunkr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port trunk allow-pass vlan 100 110 120 130 140 150 160 170 180 200r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("port trunk allow-pass vlan 300r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control broadcast min-rate 1000 max-rate 1500r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control multicast min-rate 1000 max-rate 1500r")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control action blockr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("storm-control enable trapr")
	crt.Screen.WaitForString("port-group]")
	crt.Screen.Send("quitr")
	crt.Screen.Send("ntp-service unicast-server 10.10.10.4r")
	crt.Screen.Send("ntp-service unicast-server 10.10.10.2r")
	crt.Screen.Send("ntp-service unicast-server 10.10.10.134r")
	crt.Screen.Send("ip route-static 0.0.0.0 0.0.0.0 10.10.10.254r")
	crt.Screen.Send("interface Vlanif 200r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
	crt.Screen.Send("r")
	crt.Screen.WaitForString("-Vlanif200]")
        hostnamestr = crt.Dialog.Prompt("Enter hostname:", "hostname", "", False)
        ipaddressstr = crt.Dialog.Prompt("Enter ip address:", "ip", "", False)
	crt.Screen.Send("ip address 10.10.10.")
	crt.Screen.Send(ipaddressstr)
	crt.Screen.Send(" 24r")
	crt.Screen.Send("quitr")
	crt.Screen.Send("sysname ")
	crt.Screen.Send(hostnamestr)
	crt.Screen.Send("r")
	crt.Screen.WaitForString("]")
	crt.Screen.Synchronous = False
main()

Nivîsarên weha bi gelemperî ne hewce ne, lê hêjeya amûrê 15 pcs e. Destûr dan sazkirina zûtir. Sazkirina amûrê bi karanîna pencereya Fermana SecureCRT zûtir bû.

Sazkirina hesabek ji bo ssh.

Mînakek din. Veavakirin jî bi rêya konsolê ye.

# $language = "Python"
# $interface = "1.0"

# Connect to a telnet server and automate the initial login sequence.
# Note that synchronous mode is enabled to prevent server output from
# potentially being missed.

def main():
	crt.Screen.Synchronous = True
	crt.Screen.Send("r")
	crt.Screen.WaitForString("name")
	crt.Screen.Send("adminr")
	crt.Screen.WaitForString("Password:")
	crt.Screen.Send("Passwordr")
	crt.Screen.WaitForString(">")
	crt.Screen.Send("sysr")
	crt.Screen.Send("stelnet server enabler")
	crt.Screen.Send("aaar")
	crt.Screen.Send("local-user admin service-type terminal ftp http sshr")
	crt.Screen.Send("quitr")
	crt.Screen.Send("user-interface vty 0 4r")
	crt.Screen.Send("authentication-mode aaar")
	crt.Screen.Send("quitr")
	crt.Screen.Send("quitr")
	crt.Screen.Synchronous = False
main()


Di derbarê SecureCRT de:Nermalava drav: ji 99 $ (bihaya herî piçûk tenê ji bo SecureCRT salek e)
Malpera fermî
Destûrnameyek nermalavê carekê, bi piştgirî (ji bo nûvekirinê) tê kirîn, dûv re nermalava ji bo demek bêsînor bi vê destûrnameyê tê bikar anîn.

Li ser pergalên xebitandinê yên Mac OS X û Windows dixebite.

Piştgiriya skrîptê heye (vê gotarê)
Ð • n, Nûh * de pencereya fermanê
Serial / Telnet / SSH1 / SSH2 / Pergala Operasyona Shell

Source: www.habr.com