Server

VirtualBox Manager/Pro Enhancements

As I refine VirtualBox Manager I find new enhancements to make. Various graphical enhancements have been made to both the free and pro versions. Android uses the Toast class to display an unobtrusive message on the screen. Utilizing this to display confirmation dialogs assures the user that a particular action has completed successful. It adds a sense of feedback to the application.

One feature removed was the disabling of auto correction on the input menus. Since domain names, usernames, and passwords do not require auto correction, I wanted to disabled the feature. But the ability to disable the feature was not available in Android 1.6 therefore the feature is not currently available in the current packages. As more phones shift toward >2.1 I will re-enabled the feature and push the update to the Marketplace.

The entire application is much more stable after some recent updates. If the password is correct, and the private and public keys match then there is only one reason the system will not login; signal strength. I have noticed it does not work with 1X and only works where there is a reasonably strong 3G connection. I will try figure out how to program a timeout that publishes a notification that the connection failed due to signal strength.

More updates to come. I also want to implement a robust server management tool that reads for common processes using ps, and give the user the ability to see if they are running, restart, or shut them down. ect…. I may integrate this into VirtualBox Manager pro or just as a standalone application.

VirtualBox Manager – Whats Next?

There is a small bug on the delete hosts page that will be fixed. I’m going to keep the max number of hosts, at this time, to 7 to support smaller screens without having to rewrite the code to support multiple pages of hosts. I’m going to add, at mininum, an additional class where I want to allow users to connect to the virtual machine itself to run commands. I will configure the virtual machine menu the same way as the host control menu. VirtualBox Manager will scan the virtual machine and display buttons with relevant servers that are running. For example if the machine has apache, sendmail, and mysql it will detect them and display a button for each service. The user can then start, stop, or reset the service.

I should have this update implemented in the next couple of days. I will also set a toggle in the main menu to enable a main application password required before connecting to any host. Although I may reserve this feature for the enterprise level application.

Cable Internet – Isolate the Problem

Motorola SB5120 Modem

Image via Wikipedia

After rewiring my entire house the ultimate way to isolate the problem is to put the cable modem directly on the main line. Replace all splitters, and ask the cable company to drop a new main line, and you can feel confident that the problem is no longer in your house. I rewired my entire house, replaced all splitter, then called the cable company. They replaced the splitter outside, and then dropped a new main line. The problem is no longer in my house. My router is loosing its external ip address. So far the cable company said they will compensate us for one months service, if this continues more compensation is warranted.

Every time the internet goes down, this website, my other websites, and all of my email services go offline. I rely on this website to get me through the day when I am at work. What is a day of work when you can blog about things :)

Reblog this post [with Zemanta]

Apache2 Server Side Includes

Server side includes allow for external html documents to be injected into a page prior to it rendering on the client web browser. The benifit of this is eliminating the need to repetitiously repeat code over and over again. If you include the same scripts, on each of your website pages, you can create an external html document and inject it using a server side include with a single line of code. If your using virtual host containers, you can include the server parameters directly in the file. Add the following directory block and make the directory path that of the virtual host block’s document root:

<Directory /var/www/*>
Options +Includes
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
</Directory>

Make .shtml the extension of the files you are including. I think you can make it anything, I just used “.html”.

Then enable the module:

sudo a2enmod include

Reload apache2:

sudo /etc/init.d/apache2 restart

Then include external html files using:

<!-- #include virtual="/mrtg/file1.html" -->

Remote Server Management in Local Facility – LTSP

I’m using LTSP to manage a server remotely in a local facility. I setup an LTSP server on the host machine, and will place it in an air-conditioned room to preserve longevity. I configured a machine, of much lower power, to PXE boot from the server. There are several nuances to setting up an LTSP server. Once all is done you realize that it is less complicated that is can or needs to be. When things go right there is essentially three step in total. First:

sudo apt-get install ltsp-server-standalone

This installs the works. Then configured dhcp.

sudo nano /etc/ltsp/dhcpd.conf

Config the subnet to the same that you are using on your router. Clearly if your routers local ip is 192.168.0.1 your subnet would be 192.168.0.0. Then set a range. Make sure you turn off the dhcp servers in any and all routers connected to the network. You need the dhcp server on the machine to be the sole and only. Set the “next-server” option to the came local ip address of the server. Then set the rest of the options; domain, default gateway, dns…. Then reboot the server:

sudo /etc/init.d/dhcp3-server restart

Build the clients:

sudo ltsp-build-client

Thats really all there is to it. I’ve found that problems do arise, and instead of trying to fix them just purge all the installed applications and start over.

sudo apt-get remove --purge ltsp-server-standalone ltsp-server xinetd

One time I was stuck because there were two tftp inet servers, openbsd-inetd and inetd-hpa. They were conflicting. Then purge the autoremove function:

sudo apt-get --purge autoremove

Then start over installing ltsp-server-standalone. You can test your ltsp server using VirtualBox. Just like a real machine set the boot sequence to network as the first option. Now hook up a fancy monitor that can support 1920×1080 to the relatively low powered machine in the other room, and remotely manage your server from a pseudo local desktop environment.

Lock Down IP Addresses – SSH and Else

If you know the IP addresses that will be connecting to your machine, lock them down. Use the hosts.allow file as follows.


sshd : localhost : allow
sshd : 192.168.3. : allow
sshd : 192.168.1. : allow
sshd : ALL : deny

Using sshd : ALL : deny and listing various allow rules blocks everything other than the allowed rules. Therefore using sshd : IP : allow you will be able to connect to the machine from that IP only and everything else will be rejected. This procedure will substantially increase the security of the server.