Is the below Amazon server architecture appropriate for a web application? What is the best way to devise an appropriate AWS architecture?
Deploying 2 instances hosting a web application (PHP application sitting on an Apache server), in 2 availability zones with both instances in a scaling group, the database on its own instance (MySQL DB) which is replicated as a standby in the second availability zone. From this point bench test the application to decide on the appropriate instances.
I have read up on best practices but with regards to security for AMI's but is the following standard or is more required:
- System hardening - using bastille (I am guessing this will be an involved process)?
- Intrusion detection system - Again i am new to this but I am thinking of using OSSEC?
- IP Tables - is this over kill if you use a security group for you load balancer and for each instance type (i.e. web application instance and DB instance)?
- Is there a need to encrypt the file system of an EC2 instance given the architecture above?
- If not when should you encrypt a file system on EC2?