(As an aside, I'm posting as a favor to statenjason above.)
Although you didn't mention the specific numbers for the servers, I'm assuming both are relatively modern machines and capable of the following--
As you describe the Windows application as a "legacy backend", I'm assuming that it was written for, and likely prefers running on an older version of Windows (XP or previous). As these systems are becoming more prone to security holes, it is important to distance them from the open network (or similar attack vectors).
For this reason, as well as to minimize the distance between the RoR app and the backend, I would recommend virtualizing the entire Windows install inside a Linux server. This allows the Linux server to act as a frontend while still using the backend inside Windows through the loopback network device (faster than having to run through an external router). The less powerful of the two servers could then be used to mirror this set-up to provide a backup and failover solution.
Virtualizing Windows also allows easy recovery and protection, while minimizing the need for conflicting applications to be running (i.e. firewall, antivirus).
To answer whether the machines should be located together, in a backup setup as mentioned previously, no, and in a networked computing setup (both hosting individual apps), yes.