The below commands should be run as the root user.
All items in CAPITALS should be substituted with actual specific values.
Make sure your server is up to date.
apt-get update && apt-get upgrade
There are a few variables you should note down (they will be used later on).
HOSTNAME
uname -n
TIMEZONE
cat /etc/timezone
Install MySQL (make a note of your supplied root password).
apt-get instal mysql-server
Install Apache, PHP, SNMP, zip and Nmap.
apt-get install -q -y apache2 openssh-server php5 php5-ldap php5-mcrypt php5-mysql php5-snmp nmap snmp zip
Configure PHP (substituting $TIMEZONE from above).
sed -i -e 's/memory_limit/;memory_limit/g' /etc/php5/apache2/php.ini echo "memory_limit = 512M" >> /etc/php5/apache2/php.ini sed -i -e 's/max_execution_time/;max_execution_time/g' /etc/php5/apache2/php.ini echo "max_execution_time = 300" >> /etc/php5/apache2/php.ini sed -i -e 's/max_input_time/;max_input_time/g' /etc/php5/apache2/php.ini echo "max_input_time = 600" >> /etc/php5/apache2/php.ini sed -i -e 's/error_reporting/;error_reporting/g' /etc/php5/apache2/php.ini echo "error_reporting = E_ALL" >> /etc/php5/apache2/php.ini sed -i -e 's/display_errors/;display_errors/g' /etc/php5/apache2/php.ini echo "display_errors = On" >> /etc/php5/apache2/php.ini sed -i -e 's/upload_max_filesize/;upload_max_filesize/g' /etc/php5/apache2/php.ini echo "upload_max_filesize = 10M" >> /etc/php5/apache2/php.ini # Get a valid dat/time string from http://www.php.net/manual/en/timezones.php sed -i -e 's/date.timezone/;date.timezone/g' /etc/php.ini echo "date.timezone = $TIMEZONE" >> /etc/php.ini
Set the server name (substituting $HOSTNAME from above) for Apache and restart
echo "ServerName $HOSTNAME" >> /etc/apache2/apache2.conf service apache2 restart
Set the SUID for the nmap binary (so we can use the apache front end to run scripts which call nmap).
chmod u+s /usr/bin/nmap