| #!/bin/sh |
| #********************************************************************* |
| # Copyright (c) International Business Machines Corp., 2000 |
| # |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 2 of the License, or |
| # (at your option) any later version. |
| # |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See |
| # the GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program; if not, write to the Free Software |
| # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| # |
| # FILE : ssh |
| # |
| # PURPOSE: Tests to see that ssh rejects an invalid username |
| # |
| # SETUP: The program `/usr/bin/expect' MUST be installed. |
| # |
| # HISTORY: |
| # 03/03 Jerone Young (jeroney@us.ibm.com) |
| # |
| |
| #----------------------------------------------------------------------- |
| # FUNCTION: do_setup |
| #----------------------------------------------------------------------- |
| |
| do_setup() |
| { |
| |
| export RHOST="localhost" |
| export TEST_USER="ssh_usr2" |
| export TEST_USER_PASSWD="now_this_is_a_good_ltp_test_password" |
| export TEST_USER_ENCRYPTED_PASSWD="42VmxaOByKwlA" |
| export TEST_USER_HOMEDIR="/home/$TEST_USER" |
| |
| # erase user if he/she already exists, so we can have a clean env |
| TCtmp=/home/$TEST_USER |
| |
| rm -Rf $TCtmp |
| |
| tst_setup |
| |
| exists expect ssh ssh02_s1 useradd userdel |
| |
| userdel $TEST_USER |
| sleep 1 |
| |
| if ! useradd -m -p $TEST_USER_ENCRYPTED_PASSWD $TEST_USER; then |
| end_testcase "Could not add test user $TEST_USER to system $RHOST." |
| fi |
| |
| # create users home diretory (SLES 8 does not do this, even when specified |
| # in adduser) |
| USER_UID=$(id -u $TEST_USER) |
| USER_GID=$(id -g $TEST_USER) |
| if ! mkdir -p "$TEST_USER_HOMEDIR"; then |
| end_testcase "Failed to create $TEST_USER_HOMEDIR" |
| fi |
| chown -R $USER_UID.$USER_GID "$TEST_USER_HOMEDIR" |
| |
| trap do_cleanup EXIT |
| |
| } |
| |
| #----------------------------------------------------------------------- |
| # FUNCTION: do_cleanup |
| #----------------------------------------------------------------------- |
| |
| do_cleanup() |
| { |
| userdel $TEST_USER |
| tst_cleanup |
| } |
| |
| #----------------------------------------------------------------------- |
| # FUNCTION: MAIN |
| # |
| # DESCRIPTION: Create Test User |
| # Call upon script to make sure an invalid user can not have access |
| # Cleanup Test User from system |
| # Exit with exit code of script called upon |
| #----------------------------------------------------------------------- |
| . net_cmdlib.sh |
| |
| read_opts $* |
| do_setup |
| ssh02_s1 || end_testcase "Testcase failed" |
| do_cleanup |