I am about to start a project to create my own minimal Ubuntu Server ISO for VPS deployment (lots of VPS) and was hoping I could get some pointers.
I need the ISO to allow the installation technician to input various parameters at the beginning of the install in order for various services to be setup.
- Domain Name - All installations will have a different domain name associated with them - this will be used to setup various services such as OpenSSL, OpenVPN, Drupal, Mail to name a few.
- List of services to be installed - this should allow the technician to select specific services from a preseeded list to be installed
Once this is done the installation needs to install and configure the services selected which as an absolute minimum will be Apache, MySQL & PHP.
I need the installation to connect to a custom Repository for upgrades once the installation has completed (I will setup my own repository with just the packages needed for the VPS).
I have a read a little about pre-seeding and rolling my own distro with extra packages on the ISO but I am not sure how to go about taking the input from the technician to initiate the installation, does anyone know how I can do this?
Also, one of the install options will be Drupal - does anyone know how I can pre-seed Drupal installation by installing via Drush instead of Web Setup?
With regards to SSL certificate - many services will be sharing the same certificate on secure.domain.name just using different ports (for example webmail, smtp, pop3, OpenVPN etc.) how easy would it be to automate this and is it possible to automate the CA setup?
Also, with regards to setting up full disk encryption - is it possible to grab the encryption pass phrase from a remote location? I don't want the installation technician to know the pass phrase so it would be nice to automate the process and grab the pass phrase from something like passphrase.domain.name as a text file.
Any help appreciated, thanks.