Archive for January, 2013

Secure browsing, How to use SSH (encrypted tunnel) for browsing

2 Comments »

Using ssh as a proxy or encrypted tunnel to browse the web can sometimes be necessary:

  1. When you’re at some public place but need to login securely to your work place.
  2. When local access restrictions make life really difficult.

I use SSH for the security reasons. I want to make sure that my security and login information will remain secure:

ssh -D 12345 myuser@remote_ssh_server

Replace myuser with your user account and remote_ssh_server with the IP or Hostname of your server.

The above command will do all, but if you want to add more options, you can add other options like:-

-D 12345: This does the dynamic stuff and makes it behave as a SOCKS server.
-f : This will fork the process into the background after you type your password (for Linux only, on windows skip that).
-C : Turns on compression.
-q : Quiet mode. Since this is just a tunnel we can make it quiet (for Linux only, on windows skip that).
-N : Tells it no commands will be sent. (the -f will complain if we don’t specify this)

Next, set up your browser to use the proxy server. Most browsers include proxy support. For Firefox, go to Edit→Preferences→Advanced→Network→Settings, and specify that you want to use a Manual Proxy, localhost, port 12345 and SOCKS v5 (although OpenSSH supports both versions 4 and 5).

HTTP Proxy (The first input). Must be left blank and add this config to SOCKS only.

Now your browser is using a secure tunnel to your remote SSH server, Enjoy


CPanel full backup (all files+databases+emails) PHP script

23 Comments »

 

I was looking for a working script to take full backup (all files+databases+emails) manually or using cron services on my hosting server, each CPanel user by one. But most of the scripts are either old, totally unusable or commercial.
So I wrote one for my own use and sharing here so others don’t need to re-invent the wheel

password_auth($cpanel_account,$cpanel_password);
$xmlapi->set_port('2083');
 
// Delete any other backup with filetime greater than expire time, before create new backup
$conn_id = ftp_connect($ftphost);
$login_result = ftp_login($conn_id, $ftpacct, $ftppass);

ftp_chdir($conn_id, $logs_dir);
$files = ftp_nlist($conn_id, ".");
foreach ($files as $filename) {
        $fileCreationTime = ftp_mdtm($conn_id, $filename);
        //$date = date("F j, Y, g:i a", ftp_mdtm($conn_id, $filename));
        //print "
Timestamp of '$filename': $date"; $fileAge=time(); $fileAge=$fileAge-$fileCreationTime; if ($fileAge > $backupexpireindays) { // Is the file older than the given time span? //echo "
The file $filename is older than Expire time :$expiretime ...Deleting\n"; ftp_delete($conn_id, $filename); //echo "
Deleted

"; } } ftp_close($conn_id); $api_args = array( 'passiveftp', $ftphost, $ftpacct, $ftppass, $email_notify, 21, '/' ); $xmlapi->set_output('json'); print $xmlapi->api1_query($cpanel_account,'Fileman','fullbackup',$api_args); ?>

You need to save it with .php extension (upload it to your server) and download include file from xmlapi.zip(right click->save as) and extract it to the same folder (on your web server). Create cron job from your CPanel or trigger it manually to get full backup in your FTP server, That’s it.
OR
You can fork from my git hub Repositories at cpanel-Fullbackup
Enjoy


Using CPanel/WHM API to get detail list of all accounts on server

No Comments »

 

Today I had this need to get a list of WHM Accounts using one of its APIs. I have never used it before but it was really simple to use. It returns an xml file that you can manipulate using your prefered language and store it in database for reporting etc.

Here is what you need to do, connect to your server using SSH and run the following command

wget http://your-server-ip:2086/xml-api/listaccts --http-user=myuser --http-password=mypass --output-document=listaccts.xml

Replace your-server-ip with your WHM’s ip and myuser/mypass with the actual WHM/CPanel password. The resultant xml file will be saved as “listaccts.xml” in the same directory as you ran the command in.

If you feel a bit insecure running these command over SSH or don’t have shell access to the server then visit this page on your browser and save it as an xml file.

http://your-server-ip:2086/xml-api/listaccts

(again, substitute your-server-ip with the actual WHM ip address, substitute HTTP with HTTPS and port to 2087 for HTTPS if enabled on your server / FQDN)

Enjoy!


History of Domain Names

No Comments »

 

Yet another infographic. Well, Infographics are much better way to grasp the information, especially if they’re well made. This cool infographic from Tech King lists out some of the most important events in the history of Domain Names.

Pakistan ranks 55th with only 46 thousand domain names in Top countries for domain registration.

Read the rest of this entry »