Nov 14, 2008

Keep you passwords safe with KeePass

KeePass is a useful piece of software to keep all your passwords and on-line subscriptions in one secure place. KeePass store all your password in a password protected database that is always encrypted either with AES (alias Rijndael) or Twofish encryption algorithm using a 256 bit key. Which is considered relatively quite safe.

Actually, it's available on GNU/Linux and Mac OS X too under the name KeePassX. Both Windows, GNU/Linux and Mac OS X version are compatible with one another.

I find KeePass easy to use and feature rich, you can organize your registrations/accounts data in a tree like which is very effective if you want to track passwords in categories or services like for example your on-line forums registrations and so on.


Bookmark and Share

Nov 13, 2008

CDBurnerXP Pro: No more Nero for Burning your family photos CD

Nero CD burning is still the de facto standard for burning CDs on Windows. No matter how small the number of files to burn, it's unquestionable to use anything else but Nero. The same mentality applies on Photoshop users, not Pros of course.

CDBurnerXP Pro is a CD/DVD burning software that can be used for most CD burning, either simple file burning, Audio CD burning or ISO file burning.

With its familiar user interface, it's a no brainer to use it. And beside being free to download and use, it's small in size. But it requires Microsoft .Net 2.0 runtime though.





Another useful software for creating or burning CD/DVD ISO Images is ImgBurn. With its simplistic user interface, it resembles to CloneCD/DVD. ImgBurn is very small in size, nearly a 2MB file, and is available for download here.

Bookmark and Share

Oct 23, 2008

UltraDefrag Makes Windows Disk Defragmentation a Joy

UltraDefrag is a small open source defragmentation tool for Windows that let you defrag disks blazing fast. It runs on Windows NT family (Win2000, XP, 2003 and Vista) for both 32 and 64bits editions. And what makes UltraDefrag so special is that it defragments disks incredibly fast.

Once Installed, all you need to do is click on Defrag button. It will take no more than a few minutes to finish.

I've tested it on different occasions, and one of them was a 160 GB heavily fragmented disk. It took UltraDefrag 20mins to finish. Using Windows built-in defrag tool will take at least 1 hour. I've done also a test in a Virtual Machine to see how it performs; UltraDefrag took less than 2mins to finish a 3GB of data.



Defragmenting is necessary for Windows file system, but the tool included with Windows is so inefficient that it makes it useless. One of the solutions is to use a commercial software like Diskeeper, but no home user will spend extra money just to fix a problem that shouldn't be in the first place.

Also, UltraDefrag is portable, which means you can carry it around in USB thumb drive wherever you go.

UltraDefrag makes defragmentation a joy, no more wasted hours, no more slow disks and it's free. Thanks UltraDefrag Team.

Links:
UltraDefrag Downoad Page.
Bookmark and Share

Oct 17, 2008

How to Allow Google AdSense Text Ads Passing Through Adblock Plus Filter While Blocking Image-based Ads

Placing a lot of advertisements on a web site can be annoying and distracting, which pushes many to use an ad-blocker to get rid of them. However, these advertisements can be the only way for a web site to cover hosting and bandwidth costs or can be as a way to support the web site for providing the content free of charge.

I don't mind seeing text based ads but image or video ads can be annoying, CPU time and bandwidth consuming.

So, I decided to look for a way to allow Google Adsense text ads passing through AdBlock Plus extension for Mozilla Firefox and block image based ads.

All we need to do is add a few filters to Adblock Plus. First, click on Adblock drop-down button and select preferences. A window will appear containing all the filters. Then click on "Add Filter" button and add these four filters to allow text ads:
@@|http://pagead2.googlesyndication.com/pagead/show_ads.js

@@|*.googlesyndication.com/*&ad_type=text&*

@@|*.googlesyndication.com/*&output=html&correlator*

@@|http://pagead2.googlesyndication.com/pagead/abglogo/*
Then add this to block image ads:
*.googlesyndication.com/*&ad_type=text_image&*


That's all. From now on you'll support web site by allowing text based while blocking bandwidth and CPU consuming ads.

Update #1: Today, I noticed that the "Ads by Google" notice don't show up, so I added a filter to allow to appear.

Bookmark and Share

Sep 24, 2008

How To Install PostgreSQL And phpPgAdmin Support In XAMPP

XAMPP is an easy to install Apache distribution containing MySQL, PHP and Perl, plus many additional modules. The whole package is well integrated and can save a lot of time and hassle for the inexperienced web developer. It's available on four platforms Windows, GNU/Linux, Mac OS X and Solaris which gives a lot practical benefit to those who use it.

PostgreSQL is a well known database that may be more suitable for some tasks or workloads than others. phpPgAdmin is a web-based administration tool for PostgreSQL, exactly as phpMyAdmin for MySQL.

1. Install PostgreSQL and phpPgAdmin in Windows :

1.1 Install PostgreSQL
Assuming you have already download and installed XAMPP into c:\XAMPP, go and get the latest version of PostgreSQL for Windows. Download the version with the installer, not the one with only binaries.

Usually, it's a .zip package, extract it and install Microsoft Visual C++ 2005 redistributable vcredist_x86.exe first!

Now, double-click postgresql-8.3.msi, choose your install language, then have a look at installation notes as you may find useful info there.

Change the default install folder to c:\xampp\pgsql
The default install options in the following step are OK, but select everything you are unsure.

Enter a password for the user account "postgres" and leave everything as is in Service Configuration, then proceed to the next step. (You will need that password for future upgrades)

In Initialize Database Cluster:
  • Enable "Accept connections on all addresses, not just localhost" if you want.
  • Choose a different Encoding for both Server and Client (i.e: UTF8 for unicode support)
  • Enter a password for the DB administrator account "postgres".
Proceed as PL/pgsql is enabled by default in Procedural Langauges, then select Contrib Modules you want (select everything if you are unsure). Click on Install.

1.2 Install phpPgAdmin
Go and get the latest phpPgAdmin zip package and extract it into C:\xampp\phpPgAdmin\ . Make sure the files and folders extracted are in that folder, not within another sub-folder.

Then open "config.inc.php" found in C:\xampp\phpPgAdmin\conf\ and set "extra_login_security" to false
$conf['extra_login_security'] = false;

Now, open c:\xampp\php\php.ini and make sure "extension=php_pgsql.dll" is uncommented

Finally, open c:\xampp\apache\conf\extra\httpd-xampp.conf and in section <IfModule mime_module> add
Alias /phppgadmin "c:/xampp/phpPgAdmin/"
<Directory "c:/xampp/phpPgAdmin">
    AllowOverride AuthConfig
    Order allow,deny
    Allow from all
</Directory>

That's all, you can now access phpPgAdmin from your web browser with http://localhost/phppgadmin/

Notes:
  • For more info about PostgreSQL Installer visit http://pginstaller.projects.postgresql.org/FAQ_windows.html
  • You may use Stack Builder shipped with PostgreSQL to add new functionalities.
  • Visit the phpPgAdmin FAQ for any further info http://phppgadmin.sourceforge.net/?page=faq

For Ubuntu Linux users I recommend this article.
Bookmark and Share

Sep 13, 2008

How to Properly Setup Samba, Create Public Shares and Anonymously Browse Windows Shares on GNU/Linux

Sometimes sharing files and folder between Windows and GNU/Linux can be annoying and problematic especially for beginners.

In this article we're going to see how to setup Samba and how to get both Windows and GNU/Linux sharing and browsing public share the right way.

We have two scenarios :
1. GNU/Linux browsing Windows shares.
2. Windows browsing Samba shares.

Let's start with first one.

1. GNU/Linux browsing Windows shares.
First of all, we need to do some tweaking on Windows to allow easy browsing.

Step 1:
Make sure your Windows machine has a name and belongs to a workgroup like MSHOME
>Go to Control Panel, System, on "Computer Name" tab click on change Button to change the name and workgroup.

Step 2:
Make sure that Windows XP Firewall does block incoming connections.
>Go to Control Panel, Windows Firewall, on the Exceptions tab check "File and Printing Sharing"



Step 3:
Make sure Windows XP doesn't deny access to your computer from the network.
>Go to Control Panel, Administrative Tools, Local Security Policy. On the right panel browse through Security Settings-> Local Policies-> click on User Rights Assignment

Now, from that list we need to adjust two settings. The first one is "Access this computer from the network". Double click on it and make sure that at least "Everyone" group is there, if not add it.

The second setting is "Deny access to this computer from the network". Select "Guest" account in that list and remove it.

Step 4:
This one is to ensure that the guest account in Windows XP can be used by other machines on the network to authenticate for public access.
>Go to Control Panel, Administrative Tools, Computer Management. On the right panel browse through System Tools-> Local Users and Groups-> Users. Right click on Guest account, Select Properties then uncheck "Account is disabled"



Step 5: Reboot.

Now, let's create a public share on Windows. Create a folder named "Public" in C: or any other partition or drive. Right click on it, click on Properties, Select "Sharing" tab, then check "Share this folder on the network" to share the folder and check "Allow network users to change my files" if you want to give write access to network users.



That's it! You have now created a shared public folder, accessible from local network for all users.


2. Windows browsing Samba shares.

Step 1:
Make sure Samba Server is installed.

If you are using a Debian based distro like Ubuntu, select and install Samba package from Synaptic or type in terminal:
sudo apt-get install samba

Step 2:
Now, you should know that Samba config file is usually found in: /etc/samba/smb.conf
But some distro install Samba without doing any extra config and leave that task to the user. In both cases it easy to config Samba.

From Terminal, typing : (assuming you're using Ubuntu)
sudo gedit /etc/samba/smb.conf
You can replace gedit with your text editor of choice (ex: nano, kwrite, etc.)

Now, in "global" Section, try to find the following settings and change them so that they are like these:
[global]
workgroup = MSHOME
security = share
null passwords = yes
guest account = nobody
passdb backend = tdbsam
netbios name = %h

Then scroll down to the bottom and add these parameters:
[Public]
comment = Public Folder
path = /var/public
public = yes
writable = yes
only guest = no
guest ok = yes
available = yes
browsable = yes
create mask = 0666
directory mask = 0777

Save the file and go back to Terminal to finish the remaining steps.

Let's create the public folder mentioned above in "path= /var/public". In Terminal type in:
sudo mkdir /var/public
sudo chmod 777 /var/public
Now, we need to add "nobody" account to Samba users list and set its password to null (empty).
sudo smbpasswd -a nobody
sudo smbpasswd -n nobody

That's it! For this to take effect either reboot or if you are using Ubuntu type in Terminal:
sudo /etc/init.d/samba restart


Some Notes:
Note #1:
Due to a bug in Gnome 2.22, whenever you try to access a shared folder in the network you are presented with a dialog box to enter the username and password. If that's the case either ignore that box or type in "guest" as the username and leave the password empty.

Note #2:
Just as mentioned in my comment down this post, you may need to give permissions to access folders placed in /var/public belonging to/owned by your user account.
Anyway, If your Windows client starts saying that the share is not accessible, you will need to do a:
sudo chmod -R 777 /var/public/

or (if you don't want executable attribute given to everything)
sudo chmod -R 766 /var/public/
sudo find /var/public/ -type d -exec chmod 777 {} \;

Note #3:
Some Distros deny incoming connections to your GNU/Linux box through /etc/hosts.deny
If that's the case make sure that the file /etc/hosts.allow allows incoming connections.
sudo nano /etc/hosts.allow
Then add this line into it.
ALL: ALL

Note #4:
The recently released Samba 3.2 has some nice new feature such as enhanced compatibility with Windows Server 2008/2003, Vista and Active Directory.

Note #5:
For Vista users you may need to add this parameters to Global Section in smb.conf
map acl inherit = yes
Also, in Windows Vista click on Run.. and type in: secpol.msc
Go to "Local Policies"-> "Security Options" then navigate to the policy:
"Network Security: LAN Manager authentication level" and double click on it.

Change its value from "NTVLM2 responses only" to "LM and NTLM – use NTLMV2 session security if negotiated."

Note #6:
If your Windows machine is a Windows Server 2003 instead of XP, then you should disable signing/encryption which get activated automatically when you setup a Domain Controller.

Go to Control Panel, Administrative Tools, Domain Controller Security Policy.
Browse through "Local Policies"-> "Security Options", then set both:
"Microsoft network server: Digitally sign communications (always)" and
"Domain member: Digitally encrypt secure channel data (when possible)" to Disabled.



Bookmark and Share