• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 4412
  • Last Modified:

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

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
pradeepbkumar
Asked:
pradeepbkumar
2 Solutions
 
liddlerCommented:
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
 
yuzhCommented:
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
 
pradeepbkumarAuthor Commented:
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
 
chris_calabreseCommented:
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
 
fl_kiwiCommented:
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

Prep for the ITIL® Foundation Certification Exam

December’s Course of the Month is now available! Enroll to learn ITIL® Foundation best practices for delivering IT services effectively and efficiently.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now