PDA

View Full Version : Cron Job Question


bschultz
18th September 2008, 15:31
I'm trying to set up a cron job. Here's my problem: I need to download something on my server...and then send that file (an mp3) to a second server. BUT, I'm having some firewall problems on the second server's domain (and I don't control that firewall!). I can't get in directly to the final destination machine. I need to ssh into the firewall...and then ssh into the final destination on that domain.

Here's what I have so far:


#!/bin/sh
set -e

cd /downloads/
rm *.mp3
wget -nd -r -l1 --no-parent --no-passive-ftp -A.mp3 'ftp://user:password@server1'
ssh server2.com
sleep 10
ssh 192.168.2.245 (this is the final destination, which is on the LAN of server2.com)
sleep 10
/getdownloads.txt


Now, you might ask, why not download the mp3 directly to the final destination machine? I'd love to, but behind that firewall, I can't connect to that ftp site.

When I ssh into server2.com, the script above stops. Is what I'm trying to do possible? If so, what needs to be changed?

Thanks!

topdog
18th September 2008, 15:37
Why don't you open one session to the firewall that portforwards to the inside machine.

then your second connection can connect to the forwarded port which sends you direct to the inside machine.

bschultz
18th September 2008, 16:34
What? Can you give an example please?

topdog
18th September 2008, 16:39
Okay this is how u do it, you can create a config file ~/.ssh/config

Host firewall
Hostname firewall_ip_address
Localforward 2222 host_behind_firewall:22

Then ssh firewall, this will create a socket bound to localhost port 2222

When you ssh -P 2222 localhost You will be sent to the machine behind the firewall then u can run the commands on it.

Or you can do it on the command line ssh firewall -L 2222 host_behind_firewall_ip:22

bschultz
18th September 2008, 17:21
Thanks for the help, topdog. I can't get past the firewall, though. Not sure what it's doing...and since I don't control it, not much I can do.

Would it make more sense to run the cron job on the final destination machine and then ssh into my server...and then scp the files back to the final destination? I can get from the final machine to my server through that firewall...just not to the ftp site to download the mp3s.