Note dopo il primo utilizzo
1) la macchina e' visibile solo in una Region ed e' quella in cui e' stata creata. Per esempio
ieri avevo creato una macchina in
eu-west-3c (Paris) mentre oggi mi sono collegato alla console di EC2 nella Region
eu-central-1 (Francoforte). La macchina era raggiungibile sia via SSH che HTTP quindi era viva, semplicemente non era visibile nella web console. E' stato sufficiente settare la giusta Regione per farla riapparire (il controllo e' in alto a destra vicino all'account)
2) si possono creare anche piu' istanze (per esempio una Linux ed una Windows). Il problema e' che l'istanza Linux ha di base 8 Giga di spazio disco mente quella Windows 30 Giga. Se si attivano entrambe si sfora il limite di 30 Giga di spazio disco gratuito. Inoltre il livello gratuito consente un tempo di uso di 750 ore che corrisponde ad un mese 24x7. Se si usano due macchine il tempo si dimezza..si possono tenere accese in contemporanea solo per 15 giorni senza pagare.
-------------------------------------------------------------------------------
Questi sono i passi per configurare la propria macchina ..non tutte le opzioni (AMI = Amazon Machine Image) sono comprese per la prova gratuita. Io sono partito con una Red Hat Enterprise 7.4.
L'istanza di base e' una t2.micro
Il passo 2 e' obbligato perche' c'e' una sola scelta per il livello gratuito
la macchina viene configurata con tutte le porte chiuse. Si deve quindi abilitare esplicitamente la porta 22 per l'amministrazione SSH
La dimensione di default del disco e' di 10 Gb
Per collegarsi in SSH non viene usato usato il sistema user/pass ma la chiave privata. Si deve quindi creare una coppia di chiavi e scaricarla sul proprio client
alla fine si lancia l'istanza per far partire la macchina
Dalla consolle di amministrazione di EC2 si puo' vedere lo stato della macchina, il suo indirizzo DNS pubblico, il suo IP
queste informazioni sono necessarie per collegarsi in SSH
Da Linux e Mac la sintassi e' la seguente (AmazonEC2.pem e' il nome del file della mia chiave, ec2-user e' l'utente di default sulle macchine RedHat, alla fine si mette il nome DNS pubblico o l'indirizzo pubblico)
Attenzione : si devono modificare i permessi del file .pem con
chmod 400 AmazonEC2.pem
ssh -i AmazonEC2.pem ec2-user@xxxxxxxxxx.eu-west-3.compute.amazonaws.com
i comandi di root sono eseguiti usando sempre
sudo. Una curiosita'...non c'e' la history sulla linea di comando di bash
Per la connessione con SFTP si puo' usare Filezilla impostandolo con l'accesso tramite File Chiave
Per connettersi in SSH da Putty si deve convertire la chiave in formato .pem in formato .ppk utilizzando PuttyGen e Load il file .pem e Save Private Key.
Il file nuovamente generato si inserisce in Connection\Auth e poi si stabilisce la connessione come di norma mettendo nell'host la combinazione
ec2-user@xxxxxxxxxx.eu-west-3.compute.amazonaws.com
A questo punto si procede con la configurazione come di norma
sudo yum update
sudo yum install httpd
sudo apachectl start
sudo apachectl status
* httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2018-03-08 16:52:51 UTC; 57s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 3406 (httpd)
Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"
CGroup: /system.slice/httpd.service
|-3406 /usr/sbin/httpd -DFOREGROUND
|-3407 /usr/sbin/httpd -DFOREGROUND
|-3408 /usr/sbin/httpd -DFOREGROUND
|-3409 /usr/sbin/httpd -DFOREGROUND
|-3410 /usr/sbin/httpd -DFOREGROUND
`-3411 /usr/sbin/httpd -DFOREGROUND
Una volta installato ed avviato il server http si deve aprire la porta 80 per l'accesso dall'esterno
ed alla fine il server httpd e' raggiungibile dall'esterno
per finire si deve rendere scrivibile dall'utente la directory del webserver per le modifiche
sudo usermod -a -G apache ec2-user
sudo chown -R ec2-user:apache /var/www
sudo chmod 2775 /var/www
find /var/www -type d -exec sudo chmod 2775 {} \;
find /var/www -type f -exec sudo chmod 0664 {} \;
attenzione : di default non e' abilitato il supporto https