I realized I neglected one huge point in my SMB over SSH woes. I have
successfully tunnelled NetBT over SSH. It is SMB that does not seem to
work. My exploits are documented here:
http://jgranto.dyndns.org/joe/SSH/index.htm
So, if anyone can tell me how to tunnell SMB on port 445 over SSH on
Windows XP, I would really appreciate it. My goal is not to enable
NetBT, and keep the system pure SMB. Thanks!
Initial Post:
------------------
I have 2 Windows XP systems in different locations (different subnets,
different ISPs, etc.). They get their IPs via ISP-supplied DHCP.
System A has the disk resources I want to use from System B.
I want to tunnel SMB over SSH because System A has an ISP that blocks
SMB (natively port 445, but will try NetBT [139] if that fails). Thus,
I cannot access shared directories natively.
I have done tons of research on the project, and tried many solutions.
The problem I am running into is that all of the documentation on the
web is either just plain wrong, or does not work, or documented for
UNIX systems, which evidently does not translate over to the Windows
XP world.
I have set up a virtual system locally to test things, and cannot for
the life of me get SMB over SSH to work. I can tunnel telnet just
fine. But not SMB. Here is what I have tried so far:
1. BOTH systems are running Windows XP SP2 with current hotfixes and
the firewall turned OFF. The 2 test systems are on the same subnet,
and SMB communication over port 445 works dandy.
2. I installed CopSSH (tried newest current version and newest preview
version) on System A. I enabled one account to use SSH, and can
successfully putty to System A from System B. Works fine.
3. On System B, using the newest version of putty, I have created a
tunnel for telnet. Relevent settings are under Connection/SSH/Tunnels,
and I use the values of 20000 (local listening port for 127.0.0.1) and
192.168.1.99:23 for the destination. Telnetting to 127.0.0.1 on port
20000 works fine.
4. On system B, I installed a loopback NIC, as described on various
web pages. It uses the settings of 10.0.0.1/255.255.255.0, with the
gateway of my primary NIC (192.168.1.1). I have disabled EVERYTHING
except TCP/IP on this NIC (no SMB, not NetBT, etc.). Again, only the
TCP/IP checkbox is checked for this NIC. This has to be done because
SSH cannot forward a port if that port is in use,and port 445 is used
on my 192.168.1.x NIC. Thus, I have to use the 10.0.0.1 NIC for
forwarding port 445. I have installed KB884020, which addresses
loopback issues.
5. On system B, I configured the SMB tunnel in putty like so:
10.0.0.1:445 local listening port and 192.168.1.99:445 for the
destination. Putty connects just fine, but the tunnel does NOT work. I
cannot access any resources from System B using \\10.0.0.1.
Now, I have installed WireShark on System A and sniffed the wire
during SMB communication attempts. I see the putty traffic just fine
as I create the tunel. However, no port 445 traffic seems to be
getting redirected to System A when I try to access \\10.0.0.1
resources. No traffic at all, actually. There are no incoming or
outgoing packets.
This tells me the issue is with System B,that the tunnel is not
working, most likely the putty configuration. However, I have tried
everything I know to try, and have failed to get this to work. Can
someone out there who has successfully tunnelled SMB over SSH on a
Windows system (preferably XP) please me out? Please note that
you need to edit my email by replace "nospam" with "verizon".