Sponsored Content
Top Forums Shell Programming and Scripting Having trouble using expect to launch vpn program Post 302824693 by wblakenc on Friday 21st of June 2013 10:28:55 AM
Old 06-21-2013
Question Having trouble using expect to launch vpn program

Hello all.

I am a linux and linux scripting newbie so please forgive my ignorance. I have been tasked to write what I thought should be a pretty simple script that does the following:
1) Loads our forticlient ssl vpn command line client
2) sends the vpn password to the client

Pretty simple. However I am having trouble getting following code to work:

Code:
#!/usr/bin/expect -d
set pw "test"
eval spawn ./forticlientsslvpn_cli --server vpnserver --vpnuser theuser
expect "Password for VPN:"
send "$pw\r"

A couple of things, yes I know that having the password as clear text not a good idea. I am just trying to get this to work.

Second, I know that the -d in the first line provides debugging info. I am not sure if this is the cause of my trouble, however when I use -f when the script is run, I still see the prompt for the password and the program pauses like it is waiting for my input. At least with -d I can see a little bit of what is going on, and it looks like it should work.

Suggestions? I am lost and a bit over my head.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

how to launch program though telnet

I have launched telnet on nt and have connected to a unix server, I'm trying to run a program on the unix server which will launch a gui, but when I try to launch it I get the message "display not set\n" "By default set it to 0.0" I can sit down at the unix machine and launch the program with... (3 Replies)
Discussion started by: cbachman
3 Replies

2. Programming

launch an executable from a C++ program

Hi everybody! Could you please tell me how can I launch an executable from a C++ (on unix) program? thanks in advance! (2 Replies)
Discussion started by: nadiamihu
2 Replies

3. Shell Programming and Scripting

BASH: how to launch a program with parameters

Hi, I'm a pretty big fan of BASH scripting. I've got a bunch I use for random things and lately a couple issues have been plaguing me. Both are somewhat related, in that they deal with filenames with spaces and "escaped" characters and with launching a program with command line arguements... (5 Replies)
Discussion started by: TinCanFury
5 Replies

4. Programming

Problem with external program launch

Hello, in the application i'm writing i need to launch "recordmydesktop" to capture the screen,but i'm having a problem: when the recording stops,and the encoding of the saved file starts,the entire system hangs until the completion of the encoding.This happens if i launch recordmydesktop from my... (7 Replies)
Discussion started by: Zipi
7 Replies

5. Shell Programming and Scripting

Shell Script to launch C program

Hi there, im new too shell scripting and was wondering if it is possible to create a shell script to take in a variable and load a c program. My C program is a file monitor, and is started by using the terminal and using to following code ./monitor FileToBeMonitored is it possible to have... (12 Replies)
Discussion started by: gazmcc182
12 Replies

6. Shell Programming and Scripting

Launch a windows program from perl script

Hi i wanted to know if any one can give me an example on how to launch a windows program in a perl script. I wanted to open the nmap software on my computer with a perl script, i heard this can be done with the system function. Would the function be in this format: $text =... (1 Reply)
Discussion started by: kingbp
1 Replies

7. Shell Programming and Scripting

Perl script timer on program launch

So I am attempting to get a short but complex perl script to be able to time out an application that I will launch from a command line. The terminal I use is MKS C SHELL and I am having trouble doing the a job spawn that will launch the application and keep time on it. I know you could do this... (1 Reply)
Discussion started by: vas28r13
1 Replies

8. Shell Programming and Scripting

Input keyboard keys upon program launch

Hey guys, first post! I want to write a script that will wait 1 second and then input the keys CTRL+ALT+J to the application i just opened. The program is dosbox, and thay key combination starts video recording :) I have no idea how to program this, can anyone help please? thanks in advance! (2 Replies)
Discussion started by: brunobliss
2 Replies

9. Shell Programming and Scripting

Trouble passing commands with expect

Hello All, I hope someone could help me with this. I'm creating a shell script to run a process. The trouble is, part of the process has to be ran as a different user. I can 'su' to the user ok, but I'm having trouble passing a 'cd' command as well as some variables I set earlier in the... (1 Reply)
Discussion started by: bbbngowc
1 Replies

10. Shell Programming and Scripting

Launch a text program inside a konsole at startup

Hi ULFers, I am trying to setup a (very) simple startup script on a centos 6.4 computer and it kind of failed.... Here are the details : As said just above the computer setup is running a CentOS 6.4 x64, on this computer a vncserver is automatically started (by a chkconfig vncserver on), i... (1 Reply)
Discussion started by: pierpier
1 Replies
RPC.YPPASSWDD(8)					       NIS Reference Manual						  RPC.YPPASSWDD(8)

NAME
rpc.yppasswdd - NIS password update daemon SYNOPSIS
rpc.yppasswdd [-D directory] -e chsh|chfn [--port number] rpc.yppasswdd [-s shadow] [-p passwd] -e chsh|chfn [--port number] rpc.yppasswdd -x program | -E program -e chsh|chfn [--port number] DESCRIPTION
rpc.yppasswdd is the RPC server that lets users change their passwords in the presence of NIS (a.k.a. YP). It must be run on the NIS master server for that NIS domain. When a yppasswd(1) client contacts the server, it sends the old user password along with the new one. rpc.yppasswdd will search the system's passwd file for the specified user name, verify that the given (old) password matches, and update the entry. If the user specified does not exist, or if the password, UID or GID doesn't match the information in the password file, the update request is rejected, and an error returned to the client. If this version of the server is compiled with the CHECKROOT=1 option, the password given is also checked against the systems root password. After updating the passwd file and returning a success notification to the client, rpc.yppasswdd executes the pwupdate script that updates the NIS server's passwd.* and shadow.byname maps. This script assumes all NIS maps are kept in directories named /var/yp/nisdomain that each contain a Makefile customized for that NIS domain. If no such Makefile is found, the scripts uses the generic one in /var/yp. OPTIONS
The following options are available: -D directory The passwd and shadow files are located under the specified directory path. rpc.yppasswdd will use this files, not /etc/passwd and /etc/shadow. This is useful if you do not want to give all users in the NIS database automatic access to your NIS server. -E program Instead of rpc.yppasswdd editing the passwd & shadow files, the specified program will be run to do the editing. The following environment variables will be set for the program: YP_PASSWD_OLD, YP_PASSWD_NEW, YP_USER, YP_GECOS, YP_SHELL. The program should return an exit status of 0 if the change completes successfully, 1 if the change completes successfully but pwupdate should not be run, and otherwise if the change fails. -p passwdfile This options tells rpc.yppasswdd to use a different source file instead of /etc/passwd This is useful if you do not want to give all users in the NIS database automatic access to your NIS server. -s shadowfile This options tells rpc.yppasswdd to use a different source file instead of /etc/passwd. See below for a brief discussion of shadow support. -e [chsh|chfn] By default, rpc.yppasswdd will not allow users to change the shell or GECOS field of their passwd entry. Using the -e option, you can enable either of these. Note that when enabling support for ypchsh(1), you have to list all shells users are allowed to select in /etc/shells. -x program When the -x option is used, rpc.yppasswdd will not attempt to modify any files itself, but will instead run the specified program, passing to its stdin information about the requested operation(s). There is a defined protocol used to communicate with this external program, which has total freedom in how it propagates the change request. See below for more details on this. -m Will be ignored, for compatibility with Solaris only. --port number rpc.yppasswdd will try to register itself to this port. This makes it possible to have a router filter packets to the NIS ports. -v --version Prints the version number and if this package is compiled with the CHECKROOT option. MISCELLANEOUS
Shadow Passwords Using Shadow passwords alongside NIS does not make too much sense, because the supposedly inaccesible passwords now become readable through a simple invocation of ypcat(1). Shadow support in rpc.yppasswdd does not mean that it offers a very clever solution to this problem, it simply means that it can read and write password entries in the system's shadow file. You have to produce a shadow.byname NIS map to distribute password information to your NIS clients. rpc.yppasswdd will search at first in the /etc/passwd file for the user and password. If it find's the user, but the password is "x" and a /etc/shadow file exists, it will update the password in the shadow map. Use of the -x option The program should expect to read a single line from stdin, which is formatted as follows: <username> o:<oldpass> p:<password> s:<shell> g:<gcos> where any of the three fields [p, s, g] may or may not be present. This program should write "OK " to stdout if the operation succeeded. On any other result, rpc.yppasswdd will report failure to the client. Note that the program specified by the -x option is responsible for doing any NIS make and build, and for doing any necessary validation on the shell and gcos field information supplied. The password passed to the client will be in UNIX crypt() format. Logging rpc.yppasswdd logs all password update requests to syslogd(8)'s auth facility. The logging information includes the originating host's IP address and the user name and UID contained in the request. The user-supplied password itself is not logged. Security rpc.yppasswdd should be as secure or insecure as any program relying on simple password authentication. If you feel that this is not enough, you may want to protect rpc.yppasswdd from outside access by using the `securenets' feature of the new portmap(8) version 3. Better still, look at rpasswdd(8). FILES
/usr/sbin/rpc.yppasswdd /usr/lib/yp/pwupdate /etc/passwd /etc/shadow SEE ALSO
passwd(5), shadow(5), passwd(1), rpasswdd(8), yppasswd(1), ypchsh(1), ypchfn(1), ypserv(8), ypcat(1) AUTHOR
Olaf Kirch <okir@monad.swb.de> and Thorsten Kukuk <kukuk@linux-nis.org> NIS Reference Manual 09/26/2007 RPC.YPPASSWDD(8)
All times are GMT -4. The time now is 07:52 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy