I’ve barely used Linux but I wanted a way to write code, compile it and run it from my iPad. While remote desktop applications would allow me to do this on a Windows machine, they don’t provide the native iPad experience and are typically a pain to use. That left me with a different idea. Store the files on a Linux VM and use SSH to log in, compile and run them. This is the route I took over remote desktop.
To configure this setup, I first installed OpenSuse 12.1 in VMWare 8. Real easy – almost 100% automatic. After this, I created a folder in my home directory for code and I installed MonoDevelop (I code in C# mostly). Then that just left the connection from my iPad to my Linux VM.
In OpenSuse, all you have to do to configure SSH (with defaults) is to turn on the service. To do this, just open YaST CC and then go into System Services (Runlevel). Then find sshd, select it and click enable and OK. Now it’s working for any users on the system.
Now to turn on the firewall. Open the Firewall tool in YaST CC and select Enable and Start firewall now. Then select interfaces on the left. Double click your interface and change it to external zone (or internal if you want more default ports open). Click OK and go to allowed services on the left. In here you want to select Secure Shell Server from the Services to allow dropdown. Then click add, next and finish.
All that was left was to test it. I created connections in iSSH and Textastic on my iPad to the Linux VM using port 22 for SSH and SFTP. Both tests worked perfectly with my user account information. I was able to upload a small project I was working on in Textastic, log into the machine using iSSH, compile it and run it with mono.