Archive for the ‘Virtual Servers (VPS)’ Category

Hardware Loadbalanced VPS Servers

In our Datacenter we have two Diesel Generators, Three Load Balanced Fiber Rings, Dual Power Feeds, Redundant Network and Hardware Nodes.  When you are looking for a High Availability Hosting Solutions, the greatest point of failure is your Single Web Server.  Hardware Loadbalancing offers a way to remove the single point of failure in your application.

To get hardware loadbalancing you must have at least 2 or more VPS or Application Servers.  The Load Balancer will then divide the load between multiple servers, and reduces the actual load on the server.  The hardware device will even take the SSL encryption off the server and carry the SSL encryption load for you.

The different modes available for Load Balancing are: Round Robin, Fastest Response Time, Least Connections, Weighted Round Robin, or a Custom/adaptive Type. A simple explanation would be to say if you run an e-commerce web site; You are like a grocery store, and you want to get a user through the checkout lane the fastest. Right now you only have one checkout lane, and customers are lining up. If you “Load Balance” and open a second checkout lane the user load or wait time is cut in half. If the register runs out of receipt tape (i.e. Server crash), users can switch to the other checkout lane. The end goal, you want ensure the fastest and most reliable service to your customers, so they do not shop elsewhere. I am sure we have all seen a customer leave a store because the line was too long, or the site was not available.

Another benefit of Loadbalancing two servers is being able to take a server off-line to do an upgrade or patch on the system with Zero Downtime to the entire application.  This is a common practice used in patching enterprise applications.

Hardware Loadbalancing of a VPS or Dedicated server is one way to ensure 100% uptime of your enterprise application.  You can also now view your server load balancing configuration and availability in the Client Area, under your Load Balancing Service.

Transferring files onto a VPS/Dedicated Server with RDP

If you are looking to load software onto a Dedicated Server or Windows VPS, you can do so without setting up FTP or drive mapping on the server.  Windows Remote Desktop Connection (Start -> Programs -> Accessories -> Remote Desktop Connection) has the option to map remote resources such as the Printer, Clipboard and even local drives.

Click on the Options tab when launching Remote Desktop and select “more”.  You can then select local drives on your PC/Laptop that you want your Server to see.  From your server located in the RackWire.com datacenter you can now browse the C: drive on your PC and copy any needed files/programs to the VPS cloud.

Installing yum on CentOS 5.4

If you are running a CentOS 5.4 on a Virtual Private Server (VPS) with no Control Panel at RackWire.com, yum does not come installed by default.  To Install yum on CentOS 5.4 run the following commands:

rpm -ivh –force http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/yum-3.2.22-20.el5.centos.noarch.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/python-elementtree-1.2.6-5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/python-iniparse-0.2.3-4.el5.noarch.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/python-sqlite-1.1.7-1.2.1.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/rpm-python-4.4.2.3-18.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/python-urlgrabber-3.1.0-5.el5.noarch.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/m2crypto-0.16-6.el5.6.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/libxml2-2.6.26-2.1.2.8.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/nss-devel-3.12.3.99.3-1.el5.centos.2.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/nspr-devel-4.7.4-1.el5_3.1.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/pkgconfig-0.21-2.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/pkinit-nss-0.7.6-1.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/nspr-4.7.4-1.el5_3.1.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/libselinux-devel-1.33.4-5.5.el5.i386.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/libsepol-devel-1.15.2-2.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/elfutils-libelf-devel-0.137-3.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/elfutils-libelf-devel-static-0.137-3.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/rpm-devel-4.4.2.3-18.el5.x86_64.rpm http://mirrors.rit.edu/centos/5.4/os/x86_64/CentOS/sqlite-devel-3.3.6-5.x86_64.rpm

Enjoy and Contact RackWire.com Support if you need any assistance!

Installing YUM on Fedora Core 12

One of the virtualization platforms that we utilize is Parallels Virtuozzo.  Generally, we will use OS templates created by Parallels to setup our Virtual Instances.  These OS templates do not have yum, which is an automatic updater and package installer/remover, installed on them by default. Because of this, we will need to find all of the RPMs that are needed by the yum package manually.

It turns out that you will need to install 65 different packages in order to install yum.  I have spent the time to find out all of these packages and here is the command that you can run to install yum on Fedora Core 12:

rpm -ivh –force http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/yum-3.2.25-1.fc12.noarch.rpm  http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/pygpgme-0.1-17.20090824bzr68.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/python-iniparse-0.3.0-3.fc12.noarch.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/rpm-python-4.7.1-6.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/yum-metadata-parser-1.1.2-14.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/python-urlgrabber-3.9.1-2.fc12.noarch.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/gpgme-1.1.8-2.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/glibc-2.11-2.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libxml2-2.7.6-1.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/popt-1.13-6.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/python-libs-2.6.2-2.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/glib2-2.22.2-2.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/rpm-4.7.1-6.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/rpm-libs-4.7.1-6.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/elfutils-libelf-0.143-1.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libcap-2.16-5.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/nss-3.12.4-14.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/gcc-4.4.2-7.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/nss-util-3.12.4-8.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/glibc-devel-2.11-2.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libgcc-4.4.2-7.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libgomp-4.4.2-7.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/glibc-headers-2.11-2.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/nspr-4.8.2-1.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libattr-2.4.43-4.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/kernel-headers-2.6.31.5-127.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libacl-2.2.47-5.fc12.i686.rpm ftp://ftp.univie.ac.at/systems/linux/fedora/releases/12/Everything/i386/os/Packages/bzip2-libs-1.0.5-6.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/db4-4.7.25-13.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/lua-5.1.4-4.fc12.i686.rpm ftp://ftp.univie.ac.at/systems/linux/fedora/releases/12/Everything/i386/os/Packages/xz-libs-4.999.9-0.1.beta.20091007git.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/file-libs-5.03-9.fc12.i686.rpm ftp://ftp.univie.ac.at/systems/linux/fedora/releases/12/Everything/i386/os/Packages/libselinux-2.0.87-1.fc12.i686.rpm ftp://ftp.univie.ac.at/systems/linux/fedora/releases/12/Everything/i386/os/Packages/zlib-1.2.3-23.fc12.i686.rpm ftp://ftp.univie.ac.at/systems/linux/fedora/updates/12/i386/sqlite-3.6.20-1.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/python-pycurl-7.19.0-4.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/gnupg2-2.0.13-1.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libgpg-error-1.6-4.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/pth-2.0.7-9.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/glibc-common-2.11-2.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/nss-softokn-freebl-3.12.4-10.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/gamin-0.1.10-5.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/cloog-ppl-0.15.7-1.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/cpp-4.4.2-7.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/ncurses-libs-5.7-3.20090207.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/readline-6.0-3.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libcurl-7.19.6-10.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/dirmngr-1.0.3-3.fc12.i686.rpm ftp://ftp.univie.ac.at/systems/linux/fedora/releases/12/Everything/i386/os/Packages/libgcrypt-1.4.4-8.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libksba-1.0.6-3.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/openldap-2.4.18-5.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libusb-0.1.12-22.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/pinentry-0.7.6-4.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/gmp-4.3.1-5.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/ppl-0.10.2-10.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/mpfr-2.4.1-3.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libcom_err-1.41.9-5.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/krb5-libs-1.7-8.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libidn-1.9-5.i686.rpm  http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/nss-softokn-3.12.4-10.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libssh2-1.2-2.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/openssl-1.0.0-0.10.beta3.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/cyrus-sasl-lib-2.1.23-4.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/libstdc%2b%2b-4.4.2-7.fc12.i686.rpm http://mirrors.rit.edu/fedora/linux/releases/12/Fedora/i386/os/Packages/keyutils-libs-1.2-6.fc12.i686.rpm

If you see any dependency errors, please contact support and let us know so that we can update the command.

All of our Virtual Private Servers come with yum pre-installed for your convenience.

Using expect and autoexpect to automate tasks in Linux

As administrators of hundreds of Linux servers, we are always looking to automate tasks at RackWire. One tool we have come to really appreciate is Expect. Expect is a program that “talks” to other interactive programs according to a script. Following the script, Expect knows what can be expected from a program and what the correct response should be. This is great for automating tasks over telnet, ftp, sftp, ssh and others.

Here is an example of a simple Expect script that logs into a remote machine and downloads a file over SFTP:


spawn sftp user@myserver.com
expect -exact "Connecting to myserver.com...\r
user@myserver.com's password: "
send -- "MySecretPassword\r"
expect -exact "\r
sftp> "
send -- "progress\r"
expect -exact "progress\r
Progress meter disabled\r
sftp> "
send -- "get index.html\r"
expect -exact "get index.html\r
Fetching /home/user/index.html to index.html\r
sftp> "
send -- "exit\r"
expect eof

In the above example, our expect script connects to myserver.com over SFTP, logs in, disables the progress meter (a good practice in case the file size is a variable), downloads index.html and then logs out. This could be a useful script if you needed to download a specific file every hour. If the job we were automating was more complicated than the above example, it may take a while to write the expect script. Enter autoexpect.

Autoexpect is used to generate an Expect script from watching a session. Basically you tell autoexpect what program you want to run and what file you want to save the results to. You then interactively walk through the program and it will generate your expect script for you. For example, If I wanted to automate the creation of my example expect script above, I would simply do this:

autoexpect -f sftp-example.exp sftp user@myserver.com

I would then walk through the sftp prompts as I would a normal session. When completed, we will have a new file created named “sftp-example.exp” which contains our expect script. To run it, we would do:

expect sftp-example.exp

There you have it, your SFTP session is now fully automated!

Configure an interface for use with multiple VLANs in CentOS

Most network administrators are likely familiar with Virtual Local Area Network’s or VLANs.  VLANs allow several different networks to coexist on the same physical switch.  Let’s say you have two physical networks, one used for Internet traffic and an internal network used specifically for backup traffic.  In a non-VLANd environment, this setup would require two physical switches (one for the Internet and one of the backup network) and dual network cards on each host you wish to connect to both VLANs.

Using VLANs, one could setup a switch with multiple networks.  Typically a host would require one network interface for each network, or VLAN you wanted to connect it to.  In this article, I will describe how to configure a single network interface in CentOS to connect to multiple VLANs coming from a switch.

* Configuring your switch for VLANing is beyond the scope of this article and will not be covered here.  I would recommend checking the documentation provided by your hardware vendor for instructions on configuring your VLANs from a switch level.

Requirements

In order to configure your network adapter for VLAN, it is require your network driver supports VLAN.  If not, it may be necessary to patch your driver or upgrade your hardware.  You will also need to configure the interface on your switch to send tagged traffic (a trunk port) for each VLAN ID you want to connect to to the port that connects to your host.

Using vconfig to setup your VLANs

We have two networks we want to connect to:

VLAN ID 10:  Internet traffic
VLAN ID 20:  Backup network traffic

Add the VLANs:

vconfig add eth0 10
vconfig add eth0 20

This will create two virtual devices on eth0.  You can use ifconfig to see information on the device:

ifconfig eth0.10
ifconfig eth0.20

Now we can use ifconfig to set an IP address on our devices:

ifconfig eth0.10 1.2.3.4 netmask 255.255.255.0 broadcast 1.2.3.255 up
ifconfig eth0.20 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.1.255 up

You can also view information on the virtual device / VLAN:

cat /proc/net/vlan/eth0.10
cat /proc/net/vlan/eth0.20

…and finally if you wish to remove the VLAN / bring down the virtual interface:

ifconfig eth0.10 down
vconfig rem eth0.10
ifconfig eth0.20 down
vconfig rem eth0.20

Managing your Windows Hyper-V VPS from your client area

If you have recently purchased a Windows VPS from Rackwire, you may have noticed you now have the ability to manage certain aspects right from your client area. These features will work with all Windows VPS’s purchased after April 15th, 2010. Before that date, management of your VPS can be done through DotNetPanel.

To manage, your VPS, first log into your client area at: https://www.rackwire.com/billing/clientarea.php. From there, click on the “My Services” tab. You should see a list of your services. Click the icon next to your Windows VPS:

On the next page, you will see something similar to the following:

As you can see, on this page, you will have the abiliy to reboot, hard reboot, start or shut down your VPS.  You will also see a live image of your VPS’s console that updates every 30 seconds.  Clicking on the image if your VPS launches a remote desktop connection.  Just enter your password and you will be logged into your VPS.

If you have any problems with the features you see on this page, feel free to contact support.

Helpful Bash Tricks

Spend a lot of your day looking at a Bash command line? I do. Because of this, I try to be as efficient as possible when using Bash. In this article I will describe some of the bash features I commonly use to help me save time.

Repeat the last argument of your last command:
mkdir /path/to/exampledir
cd !$

Run your last command again:
!!

Reversed History Search
CTRL-R (start typing a command that would be in your Bash history)

Execute last command starting with…
!COMMAND (Example: !vim)

Print the last command that contained…
!string:p (Example:!ssh:p may return ssh root@192.168.1.1)

Execute last command that contained…
!?string (Example:!?passwd may expand to cat /etc/passwd)

Previous command substitution:
!command:s/search/replace/ (Example:!vim:s/passwd/shadow/ would replace vim /etc/passwd with vim /etc/shadow)

Return the exit status of your last command:
$?

Run a numbered command from your history
!NUMBER

Last but not least….Brace Expansion. This is best explained with some examples:

echo {five,six,seven,eight}
five six seven eight

echo happy{" birthday"," anniversary"}
happy birthday happy anniversary

echo {Mac,Cent}OS
MacOS CentOS

Are you asking yourself, “how is that useful?”. Here’s how:

cp /etc/httpd/conf/httpd.conf{,.bak}
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

rm -f /var/log/mail.log.{3,5,7,9}
rm -f /var/log/mail.log.3 /var/log/mail.log.5 /var/log/mail.log.7 /var/log/mail.log.9

Have any other useful Bash tricks? Post them up as comments!

DotNetPanel Goes Open Source as WebSitePanel

Recently we were surprised to see that popular Windows control panel software, DotNetPanel had decided to change its licensing model and move to open source under the name WebSitePanel.  We use DotNetPanel here at Rackwire for our shared Windows hosting accounts and, in the past, our Windows VPS plans as well.  All in all, we have been happy with the product and our customer’s seem pleased with it as well.  There have been times however, where we’ve thought it would be nice if we could change some functionality or even add our own features to the application.  Enter open source.

For the uninitiated, when software is released, the source code that was used to create that application is generally either considered open source or closed source (proprietary).  Open-source software  is computer software that is available in source code form for which the source code and certain other rights normally reserved for copyright holders are provided under a software license that permits users to study, change, and improve the software.  Closed source software generally describes software whose source code is not published.  The most popular example would be the open source operating system Linux and its counterpart Microsoft Windows whose code is proprietary.

While there are certainly advantages and disadvantages to each software model, we typically try to use open source software as often as possible for a number of reasons.  Our App Market for example, features a number of open source applications:

  1. WordPress
  2. Joomla
  3. Drupal
  4. SugarCRM
  5. osCommerce
  6. MediaWiki
  7. ZenCart

One reason try to use open source software when possible is because of the flexibility it provides us.  As web hosting experts, we also do a fair amount of software programming.  Using open source software allows us to easily modify or add features to our product offerings.  For example, to get Drupal added to our series of “1-Click Installer” applications, some modifications needed to be made to the code.  Had this been a closed source application, these updates would not have been possible.

Another benefit of open source is the community aspect.  Popular open source software is generally worked on by a community of developers from all over the world.  Proprietary software on the other hand, is generally worked on by one, or a team of developers employed by the software manufacturer.  Often times, open source projects have many times more developers working on the software than a similar closed source application would have.  Because of this, things like patches, bug fixes and upgrades are usually released at a much faster pace.

Last but not least, open source is that it is generally provided free of charge (free and open source / FOSS).  Saving on licensing costs never hurts and helps us pass on savings to our clients.

With all that being said, we are extremely happy that DotNetPanel has decided to go open source and hope the community really gets behind the project.  With the open source community behind it, we think it could really take off and ultimately benefit our customers and the hosting industry as a whole.  DotNotPanel is available with all of our shared Windows hosting plans.

Useful cPanel Command List

Ever locked yourself out of your Server while making some iptables changes? What about when you change your SSH port and then forget what you set it to? These are common support tickets we receive at RackWire.com. In many cases this is something our customer’s can fix on their own if they are using cPanel on thier VPS/Server.

cPanel comes with a number of “hidden” autofix commands that allow for administrators to fix common problems simply be logging into WHM and going to a special URL. Two of the most useful ones I’ve seen are flushing iptables and restarting SSH in “safe mode” (basically the default settings and port).

Flushing iptables rules  http://yourdomain.com:2086/scripts2/doautofixer?autofix=iptablesflush

Restart SSH in safe mode  http://yourdomain.com:2086/scripts2/doautofixer?autofix=safesshrestart

Once you hit the URL you will be prompted to log in. Simply enter your root password and cPanel will do the rest. These have definitely saved me on more than one occasion when my attempt to ’secure’ my server worked a little too well.  Remember that if you happen to also lock yourself out of WHM through iptables, you will not be able to hit the URL’s I mentioned.  In that case, contact support.

Here are some other userful commands as well:

Reset the Firewall Settings  https://yourdomain.com:2087/scripts2/doautofixer?autofix=iptablesflush

Reset the SSH Settings  http://yourdomain.com:2086/scripts2/doautofixer?autofix=safesshrestart

bsdbindfix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=bsdbindfix

Autorepair  http://yourdomain.com:2086/scripts2/doautofixer?autofix=autorepair

Compress Zlib   http://yourdomain.com:2086/scripts2/doautofixer?autofix=Compress-Zlib-1.42.tar.gz

Compresszlibfix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=compresszlibfix

dbdmysql  http://yourdomain.com:2086/scripts2/doautofixer?autofix=dbdmysql

Cooldiagnose_apache_conf  http://yourdomain.com:2086/scripts2/doautofixer?autofix=diagnose_apache_conf

fpindexfile  http://yourdomain.com:2086/scripts2/doautofixer?autofix=fpindexfile

libxml2-2.6.28.tar.gz  http://yourdomain.com:2086/scripts2/doautofixer?autofix=libxml2-2.6.28.tar.gz

libxml64fix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=libxml64fix

pro*  http://yourdomain.com:2086/scripts2/doautofixer?autofix=pro*

spamd_dbm_fix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=spamd_dbm_fix

test  http://yourdomain.com:2086/scripts2/doautofixer?autofix=test

vfilterfix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=vfilterfix

yumduprpmfix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=yumduprpmfix

resellerresourceacctounts  http://yourdomain.com:2086/scripts2/doautofixer?autofix=resellerresourceacctounts

horde_sqmail_current_fix  http://yourdomain.com:2086/scripts2/doautofixer?autofix=horde_sqmail_current_fix

Good Luck, and if you need more help you can always Contact RackWire.com Support!