Monday, February 27, 2012

Melakukan restart port pada device Cisco dengan menggunakan bash script.

#!/bin/bash
#
# Declare host variable as the input variable
WJ_TARGET=<ip device>
WJ_USER=<user>
WJ_PASS=<password>
WJ_INTR=Fa0/48
WJ_EXT="`echo $WJ_INTR|tr 'A-Z' 'a-z'|tr '/' '-'`"

# Start the expect script
(expect -c "
set timeout 10
# Start the session with the input variable and the rest of the hostname
spawn ssh $WJ_USER@$WJ_TARGET
expect \"*assword:\"
send   \"$WJ_PASS\r\"
expect \"*#\"
#
# Allow us to interact with the switch ourselves
#
send   \"show interface $WJ_INTR\r\"
expect \"*--More--*\"
send   \" \r\"
send   \"config terminal\r\"
expect \"*#\"
send   \"interface $WJ_INTR\r\"
expect \"*#\"
send   \"shutdown\r\"
expect \"*#\"
send   \"do show interface $WJ_INTR\r\"
expect \"*#\"
send   \"no shutdown\r\"
expect \"*#\"
send   \"do show interface $WJ_INTR\r\"
expect \"*#\"
expect \"*#\"
send   \"\^Z\"
expect \"*#\"
send   \"exit\r\"
#
# stop the expect script once the telnet session is closed
exit
")

Friday, February 24, 2012

ssh tanpa password

Skenario yang diinginkan :
Setelah login pada sistem CLIENT dapat melakukan ssh/scp ke sistem SERVER tanpa password.

Contoh berikut ini untuk menjalankan skenario di atas dengan menggunakan user root pada sisi SERVER.

Syarat awal :
1. Memiliki user login pada sisi CLIENT
2. Mengetahui password 'root' pada sisi SERVER

1. Lakukan pada 'CLIENT' :ssh-keygen -t rsa
        Tekan tombol enter saja, demikian pula dengan pertanyaan passphrase enter saja (kosong).
        Akan terbentuk : ~/.ssh/id_rsa -dan- ~/.ssh/id_rsa.pub
scp .ssh/id_rsa.pub root@SERVER:.ssh/CLIENT.pub

2. Lakukan pada 'SERVER' :vi /etc/ssh/sshd_config
        Pastikan terdapat baris seperti berikut :
                RSAAuthentication       yes
                PubkeyAuthentication   yes
                AuthorizedKeysFile      .ssh/authorized_keys
cd ~root/.ssh
cat CLIENT.pub >> authorized_keys

Saatnya mencoba :
Login pada CLIENT dengan user yang sama dengan user yang digunakan pada saat melakukan langkah 1.
Jalankan perintah : ssh @SERVER
Jika langkah yang dilakukan benar, maka kita akan berada pada sisi SERVER dengan user 'root' tanpa ditanyakan password lagi.