Solved

How to SSH FTP files through cron job from Solaris box to a Windows NT/2000 box

Posted on 2003-12-04
7
4,385 Views
Last Modified: 2013-12-21
Hello all!

I need to use SSH in a shell script invoked from a cron job that is scheduled to run on daily basis.  

I have a Solaris boxes that is required to run a cron job, which will execute a shell script on daily basis. This shell script needs to contain the code to run SSH, which will connect to a Windows box and transfer dynamically generated files from my Solaris box to the windows box.

I am then prompted for a password of the user@windows box, which I supply, and the command executes perfectly.

SOURCE="testfile.txt"
DEST="<user>@<ip_of_windows_box>:c:/test"
scp -d -p "$SOURCE" "$DEST"

I need to create a shell script that will run a SSH, the password prompt has to be by passed since the password may be changed from time to time.

I am not an expert in UNIX/SOLARIS, just know the basic commands of unix.

I wld require the examples for cron job, SHH FTP script and the settings on SOLARIS & WINDOWS boxes

Can anyone help me in this regard

Thanks in advance
0
Comment
Question by:pradeepbkumar
7 Comments
 
LVL 18

Accepted Solution

by:
liddler earned 63 total points
ID: 9873679
crontab -e
to edit your cron
add the line
0 9 * * * /path/to/script
This will run your script at 9:00 am
then your script will be
#!/bin/ksh
SOURCE="testfile.txt"
DEST="<user>@<ip_of_windows_box>:c:/test"
scp -p "$SOURCE" "$DEST"


Make sure you make your script executeable (chmod +x /path/to/script)
That should work.  However instead of using passwords I wolud consider using a secure key exchange ( do a man ssh-keygen), where you create a key on the source machine and copy it to an authorized_keys file on the destination machine, then you won't need to use a password.
0
 
LVL 38

Assisted Solution

by:yuzh
yuzh earned 62 total points
ID: 9874061
You need to use "expect" script to handle the password, you can download
expect from:
http://www.sunfreeware.com/

if you don't know how to write an expect script, you can use autoexpect to create
one for you.

man autoexpect
to learn more

Or
setup ssh without password

You can do a search at EE "ssh without password"
or "expect password"

you will find a lot of examples.

0
 

Author Comment

by:pradeepbkumar
ID: 9875094
Hi all pls feel free to ask queries,

I need the full solution / explanation as mentioned in my query stated

"I wld require the examples for cron job, SHH FTP script and the settings on SOLARIS & WINDOWS boxes"

have already tried out the keygen method but still getting a password prompt ---- let me know wht the SOLARIS & WINDOWS boxes must be installed with?

as of now I have

ON SOLARIS

bash-2.03# ssh2 -V
ssh2: SSH Secure Shell 3.2.9 on sparc-sun-solaris2.6
Product: SSH Secure Shell for Servers
License type: evaluation
Code: 25010-32X00
bash-2.03#

ON WINDOWS 2000

bitvise's winsshd (does this needs a change?)
0
 
LVL 14

Expert Comment

by:chris_calabrese
ID: 9875124
Instead of supplying the password, why not make use of SSH's abiltity to do passwordless authentication using public-key crypto. Much more secure and much easier.

See the documentation for your particular SSH flavors in order to generate keys on the solaris box and set them up to be used on the windows box.
0
 
LVL 1

Expert Comment

by:fl_kiwi
ID: 10160810
When you setup the public key authentication using ssh-keygen be sure to specify a null pass phrase.  This is what will allow you to do it without a password.  Its pretty easy, but may seem complicated the first time, when you have to copy you public key to the remote host.
0

Featured Post

Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
sort command HPUX 11 76
AIX 5.x set up arrow to recall 11 53
Oracle Finace 3 77
Using gawk to read and manipulate multiple texts from a file 1 59
My previous tech tip, Installing the Solaris OS From the Flash Archive On a Tape (http://www.experts-exchange.com/articles/OS/Unix/Solaris/Installing-the-Solaris-OS-From-the-Flash-Archive-on-a-Tape.html), discussed installing the Solaris Operating S…
Why Shell Scripting? Shell scripting is a powerful method of accessing UNIX systems and it is very flexible. Shell scripts are required when we want to execute a sequence of commands in Unix flavored operating systems. “Shell” is the command line i…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question