• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#! /usr/bin/expect -f
2#*********************************************************************
3#   Copyright (c) International Business Machines  Corp., 2000
4#
5#   This program is free software;  you can redistribute it and/or modify
6#   it under the terms of the GNU General Public License as published by
7#   the Free Software Foundation; either version 2 of the License, or
8#   (at your option) any later version.
9#
10#   This program is distributed in the hope that it will be useful,
11#   but WITHOUT ANY WARRANTY;  without even the implied warranty of
12#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
13#   the GNU General Public License for more details.
14#
15#   You should have received a copy of the GNU General Public License
16#   along with this program;  if not, write to the Free Software
17#   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18#
19#  FILE   : ssh
20#
21#  PURPOSE: Tests to see that ssh rejects an invalid username
22#
23#  SETUP: The program `/usr/bin/expect' MUST be installed.
24#
25#  HISTORY:
26#    03/03 Jerone Young (jeroney@us.ibm.com)
27#    05/03 Dustin Kirkland (k1rkland@us.ibm.com)
28#
29#
30set RHOST $env(RHOST)
31set TEST_USER $env(TEST_USER)
32set TEST_USER_PASSWD $env(TEST_USER_PASSWD)
33
34set RUSER $TEST_USER
35set PASSWD $TEST_USER_PASSWD
36
37set timeout 90
38
39#test invalid username
40
41send_user "TEST: Test to see if ssh rejects Invalid User \n"
42
43# Set RUSER to an invalid user
44set RUSER "Invaild_User"
45
46spawn ssh -l $RUSER $RHOST whoami
47
48while 1 {
49	sleep 2
50	expect {
51
52		"Are you sure you want to continue connecting (yes/no)?" {
53			exp_send "yes\r"
54		}
55		"assword:" {
56			exp_send "$PASSWD\r"
57		}
58		-re "Permission denied (.*)\." {
59			send_user "SSH would not allow $RUSER to login with\
60				   invalid password, Test Passed \n"
61			send_user "\nTEST_PASSED\n"
62			exit 0
63		}
64		"$RUSER" {
65			send_user "SSH allowed $RUSER to login with invalid\
66				   pass, Test Failed \n"
67			exit 1
68		}
69	}
70	sleep 1
71}
72
73exit 1
74