How do I share internet with Windows from my Linux box?

I have a Linux (Ubuntu 12.04) PC connected to the internet with a Greenpacket WiMax USB modem. I want to share the Internet connection with another computer running Windows 7 Home Premium, connected to the Linux PC over a LAN. Is this possible? How? Is the reverse possible instead (connecting the internet to the Windows computer and sharing it with Linux)?

What can I use to monitor and log incoming/outgoing traffic to/from remote hosts?

I run a web server (Debian Squeeze on a VPS), and the graphs provided by the hosting company show consistently that around twice as much traffic is incoming to the server compared to the outgoing traffic. I am a little confused by this, so I would like to run some kind of logging utility on the machine that will not only confirm the upload/download figures, but also split them up by the remote host involved, so I can see if a large proportion of the incoming traffic is from one particular source.

How to connect to device via SSH over direct ethernet connection

I have a device that I need to connect to over SSH. The device is connected to my workstation via a direct ethernet connection. I’m attempting to assign the connected device an IP address somehow that I can SSH to, however all of the guides I’m finding have the user configure the IP from whatever device they’re working with (namely Raspberry Pi’s and so on). This is not something I can do with this device as I’ve no physical interface to work with.