These are the startup steps for AWS Cloud9. The Platform should be set to Ubuntu Server 18.04 LTS.
- Setup the git configuration variables
git config --global user.name "Pritpal Singh" git config --global user.email "[email protected]" git config --global core.excludesfile "~/.gitignore" git config --global color.ui true git config --global push.default current sudo ln -s /bin/nano /usr/bin/nano
- Add the git aliases by running this command
curl https://gist.githubusercontent.com/pritdeveloper/703cb04659cd37d836fadbe0f02b0df6/raw >> ~/.gitconfig
- Copy the
.gitignorefile by running the commandcurl https://gist.githubusercontent.com/pritdeveloper/acfd4edd5cc3f43cb6b5f3338acd9fdf/raw > ~/.gitignore
Install the composer package for running the composer command by running this command.
sudo apt install composer -yThis is optional and only needed if you want to run the
composercommand.
Enable the apache2 rewrite mod by running this command.
sudo a2enmod rewrite- Open terminal and run this command:
sudo vi /etc/apache2/envvars
- Make the apache run user and group as
ubuntuby changing these lines:export APACHE_RUN_USER=ubuntu export APACHE_RUN_GROUP=ubuntu
- Edit the
~/.basrcfile by running this command:sudo vi ~/.bashrc - add this code
if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
- Create the
.bash_aliasesfile with this commandcurl https://gist.githubusercontent.com/pritdeveloper/5cd890652c2da532efac5d4558971e7a/raw > ~/.bash_aliases
- reload the terminal by running this command:
. ~/.bashrc
- Make the
000-default.conffile by running command:curl https://gist.githubusercontent.com/pritdeveloper/6f9eb3a67f9689011db6d6c1341e1323/raw | sudo tee /etc/apache2/sites-enabled/000-default.conf - Restart the apache server by running:
sudo service apache2 restart
- To reset the mysql root password, follow this link.
- To install phpmyadmin, simply run this command
sudo apt install phpmyadmin -y
- There is a Warning in phpmyadmin which can be fixed by editing file by running this command
sudo vi /usr/share/phpmyadmin/libraries/sql.lib.php sudo vi /usr/share/phpmyadmin/libraries/plugin_interface.lib.php
- goto line: 613, 551
- replace the line with
|| (count($analyzed_sql_results['select_expr']) == 1 if ($options != null && count((array)$options) > 0) {
- Click on the
Manage EC2 Instancelink in the top right of Cloud9 IDE and on the next screen click on the security group under theDescriptiontab - Now click on the
Inboundtab and click onEditbutton. - Add new rules and set the
Typeto HTTP and HTTPS and clickSave
There is a new tutorial for this https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-18-04
- Installing Certbot
sudo add-apt-repository ppa:certbot/certbot sudo apt install python-certbot-apache -y
- Obtaining an SSL Certificate
sudo certbot --apache -d example.com -d www.example.com
- Verifying Certbot Auto-Renewal
sudo certbot renew --dry-run
- Install the
opensslpackage by runningsudo apt-get install openssl sudo a2enmod ssl sudo service apache2 restart
- Add directory to store certificate files
sudo mkdir /etc/apache2/ssl
Make sure you have added a domain with
Arecord pointing to theIPv4 Public IPof the instance after associating theElastic IPwith the instance.
- Get a free ssl certificate on sslforfree.com and follow the instructions to download the
sslforfree.zipfile on a location on your computer. - Upload the
sslforfree.zipfile from your computer in theAWS IDEon the root of the workspace. - Copy and extract the zip file on the
ssldirectory by running this command:sudo cp /home/ubuntu/environment/sslforfree.zip /etc/apache2/ssl/sslforfree.zip sudo unzip /etc/apache2/ssl/sslforfree.zip sudo rm /home/ubuntu/environment/sslforfree.zip /etc/apache2/ssl/sslforfree.zip
- Now you can open the website on
httpswithout any issues.
Keep in mind that the
sslforfree.comprovides ssl certificate for 3 months and you have to update the certificate in order to use it for longer.