안녕하세요. 아이홀입니다.
리눅스 서버를 통한 시스코 장비 패스워드 일괄 변경 방법입니다.
대량의 장비를 일괄작업할 때 사용하기 위한 방법이며,
Password 변경 뿐만 아니라 다른 작업도 유용하게 적용할 수 있습니다.
준비해야할 건 리눅스 서버와 네트워크 장비
그리고 아래 3개의 파일을 이용하여 적용 가능합니다.
[파일1] IP-list : 장비 List
[파일2] ssh_passch_start.sh : 실행파일 (IP-list 파일의 내용을 읽어 passch.sh 에 순차적으로 실행시킴)
[파일3] passch.sh : Config 설정 파일 (필요한 Script 내용을 입력)
* 추가적으로 하위 Logs 디렉토리에 실행 Log 를 남기도록 함
*. 장비 접속이 가능한 Linux 기반의 Console Server 에서 실행하여 일괄 작업 가능
[파일1] IP-list
10.10.10.1
10.10.10.2
10.10.10.3
10.10.10.4
10.10.10.5
[파일2] ssh_passch_start.sh
#!/bin/bash
# ssh_passch_start.sh
while read ipadd
do
#echo $ipadd
export ipadd
./passch.sh $ipadd
done < IP-list
이 파일이 실행파일이며, 1번 파일의 IP Address 를 읽어와서 아래 3번 파일의 내용을 각각 실행시킵니다.
실행 방법은 리눅스 접속 상태에서 " ./ssh_passch_start.sh " 라고 입력하여 실행 가능합니다.
[파일3] passch.sh
#!/usr/bin/expect -f
set timeout 20
set IPaddress [lindex $argv 0]
set Username "******" <-- 로그인 계정명
set OPassword "**********" <-- 기존 User Password
set OSecret "**********" <-- 기존 Secret Password
set NPassword "*********" <-- 신규 User Password
set NSecret "***********" <-- 신규 Secret Password
set Directory /home/user1/Scripts/Cisco/logs
# Logging
log_file -a $Directory/session_$IPaddress.log
send_log "### /START-SSH-SESSION/ IP: $IPaddress @ [exec date] ###\n"
# SSH or Telnet
# spawn ssh -o "StrictHostKeyChecking no" $Username@$IPaddress <-- SSH 로 장비 접속할 경우
spawn telnet $IPaddress <-- Telnet 으로 장비 접속할 경우
# Config
expect -timeout 2 "*name: "
send "$Username\n"
expect -timeout 2 "*assword: "
send "$OPassword\n"
expect -timeout 1 ">"
send "enable\n"
expect -timeout 2 "*assword: "
send "$OSecret\n"
expect -timeout 1 "#"
send "conf t\n"
expect -timeout 1 "(config)#"
send "enable secret $NSecret\n"
expect -timeout 1 "(config)#"
send "username $Username secret $NPassword\n"
expect -timeout 1 "(config)#"
send "end\n"
expect -timeout 1 "#"
send "wr\n"
expect -timeout 1 "#"
send "exit\n"
sleep 1
send_log "\n### /END-SSH-SESSION/ IP: $IPaddress @ [exec date] ###\n"
exit
실제 장비에 접속해서 실행되는 스크립트 내용이 3번 파일에 포함하고 있으며,
필요에 따라 다른 일괄작업 등도 "expect , send " 명령을 통해 실행할 수 있습니다.
♥읽어주셔서 감사합니다♥
티스토리 댓글과 공감♥은 로그인이 필요 없습니다.
로그인하시면 구독 가능합니다.
'IT 이야기 > 네트워크(Network)' 카테고리의 다른 글
[Cisco] Controller Base AP 에서 Telnet, SSH 허용 (0) | 2020.02.07 |
---|---|
Cisco 장비의 CPU 사용량 확인 방법 (show process cpu) (0) | 2020.01.30 |
고정IP 변경 배치 파일(Static IP Address Batch File) (4) | 2020.01.30 |
Cisco TACACS+ Config (0) | 2019.06.10 |
Cisco syslog Configuration (4) | 2016.12.14 |
Cisco Router E1/T1 Configuration (0) | 2016.03.10 |
huawei AP http login Configuration (0) | 2015.11.18 |
Cisco 계정 권한 관련 (Privilege Level) (0) | 2015.05.12 |