Archive

Archive for April, 2009

HowTo: Install CentOS Web Server + cPanel

April 30th, 2009
cPanel

cPanel

This is a basic installation tutorial for the CentOS operating system for dedicated server duties.
CentOS is a free white label distro of RedHat Enterprise with all the bells and whistles, and is the OS of choice for many web hosting companies

Installing the OS using ‘Text Mode’ :

1 – Insert the first Linux installation CD-ROM (disc 1) in the CD-ROM drive of your server and restart the server.
2 – At the boot: prompt, type text and press the Enter key. This starts the installation process.
3 – On the Language Selection screen, select English as the language that you want to run the installation program in, then click OK.
4 – On the Keyboard Selection screen, select the keyboard attached to your server, then click OK.
5 – On the Mouse Selection screen, select the mouse attached to your server, then click OK.
6 – On the Welcome screen, review the installation information, then click OK.
7 – On the Installation Type screen, select Custom, then click OK.
8 – On the Disk Partitioning Setup screen, select Disk Druid. Quote:
- If your disk has existing partitions, select each partition and click Delete.
9 – Create the following disk partitions:

The following partitions are recommended prior to installing cPanel:

**1 GB /
*50 MB /boot (No seperate /boot for FreeBSD)
**1 GB /tmp
*10 GB /usr
**7 GB /var
**1 GB swap (swap should be 2x RAM)
Remaining space to /home

Note: The above partitioning scheme is assuming a 40 GB hard drive. If you have a larger hard drive, you should increment /usr & /var accordingly. To create the / partition ‘root’:

* On the Partitioning screen (see step 8 ) , click New.
* In the Mount Point field, type / .
* For the Filesystem type select ext3.
* In the Size (MB) field, type 1024, then click OK. To create the /boot partition: Quote:
* On the Partitioning screen (see step 8 ) , click New.
* In the Mount Point field, type /boot.
* For the Filesystem type select ext3.
* In the Size (MB) field, type 50, then click OK. To create the /tmp partition : Quote:
* On the Partitioning screen (see step 8 ) , click New.
* In the Mount Point field, type /tmp .
* For the Filesystem type select ext3.
* In the Size (MB) field, type 1024, then click OK. To create the /usr partition : Quote:
* On the Partitioning screen (see step 8 ) , click New.
* In the Mount Point field, type /usr .
* For the Filesystem type select ext3.
* In the Size (MB) field, type 10240, then click OK. To create the /var partition : Quote:
* On the Partitioning screen (see step 8 ) , click New.
* In the Mount Point field, type /var .
* For the Filesystem type select ext3.
* In the Size (MB) field, type 7168, then click OK. To create the swap partition: Quote:
* On the Partitioning screen (see step , click New.
* For the Filesystem type field, select swap.
* In the Size (MB) field, enter a number that is twice the current RAM (1024 If you are using 512 MB Ram), then click OK. To create the /home partition: Quote:
* On the Partitioning screen (see step , click New.
* In the Mount Point field, type /home.
* For the Filesystem type select ext3.
* In the Size (MB) field, select Fill all available space, then click OK.

10 – When finished, Click OK.
11 – On the Boot Loader Configuration screen, select LILO Boot Loader, then click OK.
12 – On each of the following three screens, click OK.
13 – On the Network Configuration screen, clear Use bootp/dhcp, enter your server network configuration, then click OK.
14 – On the Hostname Configuration screen, enter the fully qualified host name of your server, then click OK.
15 – On the Firewall Configuration screen, select No firewall, then click OK.
16 – On the Language Support screen, select English (USA), then click OK.
17 – On the Time Zone Selection screen, select the location, then click OK.
18 – On the Root Password screen, enter in the root password for your server, re-enter the password to confirm it, then click OK.
19 – If you want to create an account that you can use to remotely log on to your server using SSH or FTP, click Add.
*** Provide the login name and password, then click OK.
20 – Review the information on the User Account Setup screen, then click OK.
21 – Review the information on the Authentication Configuration screen, then click OK.
22 – On the Package Group Selection screen, verify that only the following packages are selected. Clear all other check boxes.

. Network Support
. Messaging and Web Tools
. DNS Name Server
. Network Managed Workstation
. Software Development

23 – Click OK.
24 – Review the Installation to begin screen, then click OK.
25 – Insert the second/third installation CD-ROM when notified to, then click OK.
26 – To create a boot disk, click Yes. Otherwise, click No.
27 – When done, the installation complete screen displays.
28 – Click OK, then press Enter to restart.

[2] Checking the host name and network settings :
After your first boot, you must check your system’s host name and network configuration to ensure that they are correct. To check your system’s host name and network configuration:
- Log on to the system as the root user.
- Type vi /etc/hosts to open the host file and modify the contents.
- Verify that the file is in the following format:
- Verify that the loopback entry (127.0.0.1) appears in the file. A correctly configured file should look like this: Note : The IP addresses used here are for illustration purposes only; they are not valid values.

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
10.1.1.1 myhost.mydomain.com myhost – Modify the file as needed.
- Type :wq to close the file.
- Type vi /etc/sysconfig/network to open the network sysconfig file and modify the contents.
- Verify the host name. A correctly configured file should look like this: Note : The IP addresses used here are for illustration purposes only; they are not valid values.

NETWORKING=yes
HOSTNAME=myserver.mydomain.com
GATEWAY=10.100.0.1 – Modify the file as needed.
- Type :wq to close the file.
- Type vi /etc/sysconfig/network-scripts/ifcfg-eth0 to open the network scripts file and modify the contents.
- Verify that network information. A correctly configured file should look like this: Note : The IP addresses used here are for illustration purposes only; they are not valid values.

DEVICE=eth0
BOOTPROTO=static
BROADCAST=10.1.1.1
IPADDR=10.1.1.1
NETMASK=255.255.0.0
NETWORK=10.1.0.0
ONBOOT=yes – Modify the file as needed.
- To make these changes active, restart the system by typing:

shutdown -r now

[3]cPanel Installation Instructions:

Important : You must have a valid cPanel license. If you do not have a valid cPanel license, please contact one of cPanel distributors listed at http://www.cpanel.net/dist.htm or buy a license directly from cPanel at http://www.cpanel.net/store/. cPanel now uses a universal install script which can be found at http://layer1.cpanel.net/. You can use the following commands in the root shell to download and start the installation script:

mkdir /home/cpins
cd /home/cpins
wget http://layer1.cpanel.net/latest
sh latest

At this point the installation has started and may take anywhere from 30 – 60 minutes to complete. At no point during the installation should you be prompted for user input. You will know the cPanel installation has been completed by the screen output coming to a stop & the statement “Done.” is printed on your screen. You should then hit “ctrl c”† to continue. Note: You must be on a stable connection to install cPanel. If your shell session disconnects during a cPanel install the cPanel installation will be aborted. You can restart the cPanel installation by completing “sh cpanel-*”† again, however it is recommended that you reformat your machine & start over to ensure a clean slate before placing the machine into production.

[4]cPanel/WHM Configuration: Following a successful install you should setup cPanel/WHM as soon as possible. In order to complete this process you will need to log into your machine using its main (eth0/fxp0) IP address; you should input something similar to this into your browser:

https://xxx.xxx.xxx.xxx:2087

Note: you should replace xxx.xxx.xxx.xxx with your actual IP address. Further to that, you will be prompted about a self signed SSL certificate; ignore this by clicking on “Yes”. A self signed certificate is generated by cPanel/WHM to ensure a secure/encrypted communication with your server. You will now be prompted with a few questions related to how you would like your installation of cPanel/WHM customized. You can walk through the wizard by clicking on “Next Step” or if you are an experienced user feel free to click on “Finish” to skip to the end. For a complete user guide on how to access cPanel/WHM and/or use any of the functions within cPanel/WHM, please visit cPanel do*****ents section at http://www.cpanel.net/docs.htm That’s all for now .. Just keep in mind, this is not the all-in-one package for server installaion, you’ll have to secure the server, update your kernel, install a firewall, configure SSH, apply patches …. etc.

 

Reference:

Camilo III Administration, Info.Tech, Operating Systems , , ,

Visual C#: Connecting to MySQL remotely

April 13th, 2009

I have a current project that connects to a remote database server using Visual C# as client window application. So before I started my project, I tested it if it is possible to connect and the result, it does connect. For those does who failed to solve this problem, here’s my tutorial/guide.

Test Project Requirements:

  • VMware Workstation 5.5
  • CentOS 4.4
  • Visual C# Express Edition
  • MySQL Data Connector .Net v1.0.7

Scenario:

The client’s OS is MS Windows XP and the server is CentOS Linux. The client will connect to the Linux server to query and process some transaction. But in the sample code, it demonstrate only how to connect remotely in the server. My server’s IP address is 192.168.10.117 and a MySQL port of 3306 (default port).

Screenshots:

mysqlRemote1.jpg

Step 1:

Setup the Linux server, be sure you already installed MySQL server. In our case, we use VMware and a CentOS 4.4 is installed. For installation help, google it! :P The first thing to do is configure your IP tables by using iptables command. see illustration below;

iptables1.jpg

If your configuration does not allow foreign connection to your MySQL, then change that and allow it. In real scenario if your server is public, I recommend that you must have a new server which can only be access through local network. Or if cannot afford, just setup well the IP tables that only local connections are allowed. Anyway, here’s my new IP tables setup in my server;

iptables2.jpg

In MySQL CLI, create a user that can access everywhere. To do this, see sample below;

mysql> GRANT ALL PRIVILEGES ON *.* to ‘beasaw’@'%’ IDENTIFIED BY ‘qwerty’;

Explained: the command shown above is to allow user, beasaw, to access anywhere using a password qwerty.

That’s it… server setup completed. :D

Step 2:

Before you create a new project in VCS, test first the connection using the command;

C:\> mysql\bin\mysql --host=192.168.10.117 --port=3306 --user=beasaw --password=qwerty

See image below;

cmd_mysql.jpg

Step 3:

  1. Open your Visual C# and create a new project, name it to remoteMySQL.
  2. In Form1.cs, layout just like the screenshot above.
  3. Add a reference, MySql.Data.dll (assumed that you already installed the MySQL data connector .Net v1.0.7)
  4. Add mysql to the project: using MySql.Data.MySqlClient;
  5. Begin your codes, see sample code (download link below)… :P

mysqlRemote2.jpg

That’s it… You can create as many applications you want with this method. Like Ticketing System, connecting 10 terminals to the servers simultaneously and etc. And of course, connection varies also to your MySQL server setup. :D

Download:

» VCS Remote Connect to MySQL Server (61)

Camilo III Info.Tech, Software Development, Visual C# , , , , , ,

The letter that change the history of warfare

April 8th, 2009

When I watched Discovery channel about the Atomic Bomb dropped in Hiroshima which some of the scene have been cut. I continue watch in Youtube and read some articles. A review of history 101. Hehehe.. :D Somehow, I found the letter of Albert Einstein about the creation of the Atomic bomb using Uranium-235 and was introduce to President Roosevelt in US. The letter shown below…

einstein_letter.gif

einstein_letter_1.gif

My Opinion: It was such a destruction but I believe if the U.S. didn’t stop such war against Japan, more and more lives will be taken from that war. Not to mention here in the Philippines, Japanese rapes Filipinas and Filipinos killed by torture. Because of that, Japanese learn about their mistake attacking Pearl Harbor.

Reference:

  • http://inventors.about.com/od/astartinventions/a/atomic_bomb.htm
  • http://inventors.about.com/od/astartinventions/a/atomic_bomb_2.htm

Camilo III History , , , , ,

[PHP] Shortcuts of If-Else statement

April 5th, 2009

When I learn PHP last September 2005, I was little bit confuse in PHP if-else statement… especially a statement contains with ? and : but somehow, I got it right. I post this cause somebody ask again what’s the difference. So told him, its all the same and its just a shortcuts.

<?php

$authenticated = true;

// [1] standard if-else statement
if ($authenticated)
{
     echo
‘YES’;
}
else
{
      echo ‘NO’;
}

// same with [1] :P
if ($authenticated) { echo ‘YES’; } else { echo ‘NO’; }

// [2] lil bit shortcut
if ($authenticated)
      echo ‘YES’;
else
      echo ‘NO’;

// [3] the shortcut
echo $result = ($authenticated) ? ‘YES’ : ‘NO’;

?>

Or let me say its an evolution of if-else statement… Hahaha.. or maybe the laziness of the programmer. :P So got it? hehehehe..

Camilo III Info.Tech, PHP, Web Development , ,

HowTo: Blueberry Cheesecake

April 3rd, 2009

90__350x264_myblueberryI’m not into baking, cooking or something but I just learn this by watching my friends, Kyna Mori Flores and Cherry Oh, making this thing. Hehehe.. :) Because its yummy, so I tried to make one at home by my self. So far, I did it! Horay! :D

Recipe:

  • 1 crushed graham pack (crust)
  • 1/4 cup of butter (crust)
  • 2 tease spoon of sugar (crust)
  • 2 all purpose cream
  • 2 knox gelatin
  • 1 blueberry can (you can use smackers brand)
  • 2 cream cheese
  • 1/4 cup of sugar

Procedure:

  1. Crust: Pour the crushed graham and the 2 tease spoon of sugar into the bowl and mixed it. While mixing, melt the butter also (you can use your Microwave). Then pour the melted butter into the bowl and mixed them together until the all properly mixed. :)
  2. Using the cheesecake pan, floor the crust into the pan and level it properly or evenly.
  3. Get a new big bowl for the cheesecake procedure. Put the 2 all purpose cream, 2 cream cheese, and 1/4 cup of sugar into the big bowl. Then mix it with a mixer.
  4. While mixing the step 3, get a cup and pour some water and warm it. Enough warm to melt the gelatin. Then pour the 2 knox gelatin into the cup and mix it well. Remember, mix it well. :P
  5. As the gelatin is ready, pour it into the big bowl with the cheesecake. Mix it properly as well. Be sure everything is mixed properly.
  6. Pour slowly the cheesecake from the bowl to the cheesecake pan (where the crust is already set). Then refrigerate it within 36 hours (enough to freeze the gelatin).
  7. After 36 hours, remove the cheesecake from the pan to a cheesecake tray then place the blueberries as toppings.
  8. Refrigerate it again about 8 hours. Then that’s it… Yummy blueberry cheesecake is ready to serve.. :)

Camilo III Learn New Things, Personal , ,

[Software Integration] MS Visual C# + Nokia PC Connectivity API 3.2

April 2nd, 2009

I’m having curiosity about retrieving SMS from Phone to my PC and including sending SMS from PC via Mobile Phone as GSM modem. So I decide to research about it. And I found the Nokia PC Connectivity API. Somehow using the API needs an extensive knowledge of Programming in .Net studio. So if your beginner to Visual C#, try to study more before taking this step. :)

Download Nokia PC Connectivity API 3.2 (86)

What’s in the Nokia PC Connectivity API tool package?

The Nokia PC Connectivity API tool package contains the PC Connectivity API headers, API documentation, and sample applications. The latest version of the tool includes updates to the Device Management, File System, and Content Access APIs, as well as support for Microsoft Visual Studio 2008.

For more information, visit the Nokia PC Connectivity API features page »

All I can say about this new area since I’m a web developer, its like HELL! hahahahaa…

By the way, Nokia Connectivity API documentation is limited and no enough sample resources. There are very few samples or let me say no enough sample in the internet so far. That’s why its like hell. :P

Camilo III Info.Tech, Software Development, Visual C# , , , , , , , ,

[PHP] How to upload a file

April 2nd, 2009
Comments Off

I would like to share this script to all since most of my friends ask how to create an upload script using PHP.

Download the PHP script at;

  1. Main Download: Simple Upload Demo (5)
  2. Mirror 1: simple_upload.zip

Upload File Demo: http://www.cable21.net/camilord/simple_upload/index.html

Modification according to your preferred setup

Its default upload directory is uploads/ and to change this, just change the line 19;

// set upload destination
$uploaddir = “uploads/”;

In the script, it is capable to validate allowed file types. As default, images files are only allowed to be uploaded. To change this, just edit the upload.php at line 37.

// allowed file types
$validMIME = array(‘jpg’,‘jpeg’,‘bmp’,‘png’,‘gif’);

Just add any file extension you want to allow… Sample;

// allowed file types
$validMIME = array(‘jpg’,‘jpeg’,‘bmp’,‘png’,‘gif’,‘doc’,‘zip’,‘pdf’);

So I just allowed Document, Zip and PDF files…

That’s all.. I think everything is understandable.. hehehe.. Please read also the comments.

Camilo III Info.Tech, PHP, Web Development , , , , , ,