How to install LAMP (Apache, PHP and MySql in Linux)

Here's a basic guide on how to get Apache2, PHP5 and MySql working on most Debian based distros in a few easy steps.
1. Install Apache2 and PHP5 (as an Apache module)
apt-get install apache2 php5 libapache2-mod-php5 php5-mysql
Installing eAccelerator
eAccelerator is a free open-source PHP accelerator & optimizer. It increases the performance of PHP scripts by caching them in their compiled state, so that the overhead of compiling is almost completely eliminated. It also optimizes scripts to speed up their execution. eAccelerator typically reduces server load and increases the speed of your PHP code by 1-10 times.
eAccelerator only works with mod_php or php in fastcgi mode. It can't be used in cgi or cli because eAccelerator needs to set up shared memory, and this can only be done when all php instances that need to access it are forks of the first process.
1. Download the eAccelerator source. The latest version is mirrored on www.debiantutorials.com as it's not available on the official site anymore.
cd /tmp
wget http://www.debiantutorials.com/static/eaccelerator-0.9.6.1.tar.bz2
Upgrade from lenny to squeeze
Debian has released a stable version of Debian 6.0 (squeeze). If you're running previous version of Debian, you can easily upgrade.
1. Update all packages currently installed to the latest lenny versions
apt-get update
apt-get upgrade
How to upgrade to PHP 5.3 on Debian Lenny
Dotdeb provides a repository with PHP 5.3 for lenny and it's easy to upgrade:
1. Add these lines to the apt sources (pico /etc/apt/sources.list)
deb http://php53.dotdeb.org stable all
deb-src http://php53.dotdeb.org stable all
Install XCache
XCache is a fast, stable PHP opcode cacher that has been tested and is now running on production servers under high load. It overcomes a lot of problems that has been with other competing opcachers such as being able to be used with new PHP versions.
1. Installing the XCache package
apt-get install php5-xcache
Installing Dovecot IMAP and POP daemon with MySql backend
Dovecot is an open source IMAP and POP3 server for Linux/UNIX-like systems, written primarily with security in mind. Dovecot primarily aims to be a lightweight, fast and easy to set up open source mailserver.
It's assumed that you have already installed and configured Postfix according to this tutorial:
Installing Postfix with MySql backend and SASL for SMTP authentication
1. Install required packages
apt-get install dovecot-imapd dovecot-pop3d
Installing Courier POP3 and IMAP daemon with MySql backend
The Courier mail transfer agent (MTA) is an integrated mail/groupware server based on open commodity protocols, such as ESMTP, IMAP, POP3, LDAP, SSL, and HTTP. Courier provides ESMTP, IMAP, POP3, webmail, and mailing list services within a single, consistent, framework. In this tutorial we'll only use the Courier POP3 and IMAP services.
It's assumed that you have already installed and configured Postfix according to this tutorial: Installing Postfix with MySql backend and SASL for SMTP authentication
1. Install required packages
apt-get install courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl
Installing Postfix with MySql backend and SASL for SMTP authentication
Postfix is a free and open source mail transfer agent (MTA). It is intended as a fast, easy-to-administer, and secure alternative to the widely-used Sendmail MTA.
Install and configure Postfix
1. Install Postfix and SASL
apt-get install postfix postfix-mysql libsasl2-modules-sql sasl2-bin libsasl2-2 postfix-tls libpam-mysql
> Internet Site
> host.domain.com
Automated backups to FTP server using rsync and curlftpfs
Using curlftpfs and FUSE, a ftp site is mapped to the local file system and rsync will backup files to the ftp server automatically.
1. Install required packages
apt-get install curlftpfs rsync
Securing unencrypted traffic with stunnel
Stunnel can be used to provide secure encrypted connections for clients or servers that do not speak TLS or SSL natively. In this tutorial we'll secure Samba connection but you could use this for other services like SMTP, IMAP, POP3 etc.
If you are securing a service where the client supports encrypting like SMTP, IMAP and POP3 you can skip the client step.
Server
1. Install stunnel
apt-get install stunnel