Sponsored Content
Top Forums Shell Programming and Scripting Expect scripting telnet stop on bad username or password Post 302713445 by leemalloy on Wednesday 10th of October 2012 05:08:52 PM
Old 10-10-2012
Expect scripting telnet stop on bad username or password

I am trying to build and expect script to log into multiple aix boxes and change password. I need for the script to terminate if it cannot log into a server because the username or password is wrong.
Code:
#!/usr/bin/expect
set timeout 1
set host [lindex $argv 0]
set user [lindex $argv 1]
set password [lindex $argv 2]
set uh "Unknown host"
set ivl "\[compat\]\: You entered an invalid login name or password"
set lg "login"
set pwd "Password:"
set prp "$host"
proc login {user password} {
expect "Login:"
send "$user\r"
expect "Password:"
send "$password\r"
}
spawn telnet $host
expect {
$uh {
send_user "Unknown Host\n"
}
$lg {
send $user\r ; exp_continue
}
$pwd {
send $password\r
expect {
"#" {send hostname\r}
"$" {send hostname\r}
">" {send hostname\r}
$ivl { send_error "Invalid Username or Password\n" }
}
}
}
expect closed
exit 0


Last edited by Franklin52; 10-11-2012 at 05:25 AM.. Reason: Please use code tags for data and code samples
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

username password in script

Can we write a script to telnet to a unix server from unix with the username and password hardcoded in the script?? something like ssh a@b -p password ??? (5 Replies)
Discussion started by: roshanjain2
5 Replies

2. UNIX for Dummies Questions & Answers

how to stop telnet access to AIX box

how do I remove telnet access to my AIX (5.3) machine? I just want people (admins) to connect to the box using ssh? Thanks. (2 Replies)
Discussion started by: johnbrickell
2 Replies

3. Shell Programming and Scripting

Webpage to Telnet via Perl and Expect: Telnet problem?

Somewhat long story: I have a simple Perl CGI script that uses Expect to Telnet to a device and grab some data, and then spits it back to Perl for display on the Webpage. This works for many devices I've tried, but one device just fails, it keeps rejecting the password on this device, only... (1 Reply)
Discussion started by: jondo
1 Replies

4. Shell Programming and Scripting

strange expect script behavior, or am i misunderstanding expect scripting?

Hello to all...this is my first post (so please go easy). :) I feel pretty solid at expect scripting, but I'm running into an issue that I'm not able to wrap my head around. I wrote a script that is a little advanced for logging into a remote Linux machine and changing text in a file using sed.... (2 Replies)
Discussion started by: v1k0d3n
2 Replies

5. Ubuntu

Ubuntu Server 810 Telnet ** I know its Bad.. But **

I have a real need to telnet into my new Ubuntu 8.10 server and have Googled my eyes out with ideas that don't work. I CAN telnet out of the server, but I CANNOT telnet into it (connection refused error). I have updated my resolv.conf file but its expert time. ANY IDEAS??? THANKS!!! I knew I was... (13 Replies)
Discussion started by: gbxfan
13 Replies

6. Shell Programming and Scripting

Not able to pass Username and Password in telnet session

I have created a shell script to telnet remote machine. Here is the problem I am not able to pass the login username and password to the telnet session. I have searched forum and got few other methods to achieve this. But I need to know what's wrong in the below script. username="root"... (2 Replies)
Discussion started by: uxpassion
2 Replies

7. Shell Programming and Scripting

Scripting help/advise on hiding/masking username/password

Hi, I currently have a UNIX script with a function that uses a username and password to connect to the database, retrieve some information and then exit. At the moment, am getting the username and password from a hidden plain text file and permission set to -r--------, i.e. read only to who... (1 Reply)
Discussion started by: newbie_01
1 Replies

8. Shell Programming and Scripting

Expect script - going in loops can't stop

Hi First of all I tried lot of forums to create my first expect script. But I am totally stumped at the last step. I am no Linux Admin or ever trained in Linux. I just tried to create the script logically History : I need to to change my password across lot of servers in Linux over ssh ... (4 Replies)
Discussion started by: radioactive9
4 Replies

9. Shell Programming and Scripting

Username and password

Hi I am new to using unix and am struggling with a script i am writing. What i am trying to do is get a user to enter a username, check the original file i created with username and pin to see if their is a corresponding entry. Next ask the user to enter the pin and see if this matches... (5 Replies)
Discussion started by: somersetdan
5 Replies

10. Shell Programming and Scripting

Passing username and password to a script running inside "expect" script

Hi I'm trying to run a script " abc.sh" which triggers "use.sh" . abc.sh is nothing but a "expect" script which provides username and password automatically to the use.sh script. Please find below the scripts: #abc.sh #!/usr/bin/expect -f exec /root/use.sh expect "*name*" send... (1 Reply)
Discussion started by: baddykam
1 Replies
rlogin(1)						      General Commands Manual							 rlogin(1)

NAME
rlogin - Connects the local host with a remote host SYNOPSIS
rlogin [-8L] [-e character] [-l user] remote_host The remote login command (rlogin) logs into remote_host and connects your local terminal to the remote host. OPTIONS
Allows an 8-bit data path at all times. Otherwise, unless the Stop and Continue key sequences on the remote host are not standard, rlogin uses a 7-bit data path and the eighth (high) bit of each byte is stripped. Changes the Escape character. Substitute the character you choose for character. Changes the remote username to the one you specify. Otherwise, your local username is used at the remote host. Allows the rlogin session to be run in litout mode. In this mode, the escape sequence ~. (where ~ is the escape character) disconnects you from the remote host and the escape sequence ~^Z (where ^Z, or Ctrl-Z, is the suspend character) suspends the rlogin session if you are using csh. DESCRIPTION
The remote terminal type is the same as that given in the local TERM environment variable. The terminal or window size is also the same, if the remote host supports them, and any changes in size are transferred. All echoing takes place at the remote host, so except for delays, the terminal connection is transparent. Pressing the Stop and Continue key sequences stops and starts the flow of information, and the input and output buffers are flushed on Interrupts. The rlogin command can only be used to connect to systems that are running the rlogind daemon. On systems that do not support rlogin, you can use telnet (if supported) as an alternative. If you do not specify the -l option, the local username is used at the remote host. If -l user is specified, the username entered is used at the remote host. In either case, the remote host allows access only if one or both of the following conditions is satisfied: The local host is included in the remote host's /etc/hosts.equiv file, the local user is not the superuser, and the -l user option is not specified. The local host is included in a $HOME/.rhosts file in the home directory of the remote user account. If -l user is specified, the local username must also be included in the file. If neither of these conditions is met and a password is defined for the remote user account, the remote host prompts for a password. The remote password file is checked to verify the password entered, and the login prompt is displayed if the password is not correct. Pressing the End-of-File key sequence at the login prompt ends the remote login attempt. For security reasons, any $HOME/.rhosts file must be owned by either the remote user or the root user and should have permissions set to 600 (read and write by owner only). In addition to the preceding conditions, rlogin also allows access to the remote host if the remote user account does not have a password defined. However, for security reasons, use of a password on all user accounts is recommended. Unless otherwise modified by the -e option, the standard Escape character for disconnecting from the remote host is a ~ (tilde). The Escape character is only recognized by the remote host if it occurs at the beginning of a line. Otherwise, the Escape character is sent to the remote host as a normal character. To send the Escape character to the remote host as a normal character at the beginning of a line, press the Escape character twice. Pressing the Escape character and a (dot) (for example, ~.) immediately disconnects the local terminal from the remote host. EXAMPLES
In the following examples, the local host is listed in the /etc/hosts.equiv file at the remote host: To log in to a remote host with your local username, enter: $ rlogin host2 Password: <Enter password> To log off the remote host and close the connection, enter the End-of-File key sequence. To log in to a remote host with a differ- ent username, enter: $ rlogin host2 -l dale You are prompted to enter your password and then are logged in to the remote host host2 with the username dale. To log in to host2 with the your local username and change the Escape character to (backslash), enter: $ rlogin host2 -e\ FILES
Specifies remote hosts from which users can execute commands on the local host (provided these users have an account on the local host). Specifies remote users who can use a local user account. SEE ALSO
Commands: rcp(1), rsh(1), rlogind(8), telnet(1) Files: rhosts(4) rlogin(1)
All times are GMT -4. The time now is 01:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy