Da dove iniziare, proteggere un AWS Ubuntu 14.04 [chiuso]

3

Ok, quindi questa è probabilmente una domanda di base, ma mi piacerebbe espandere le mie conoscenze.

Ho creato un server AWS Ubuntu EC2. Sto eseguendo il software sul server che fornisce 2 servizi, in primo luogo un sito Web che sarà disponibile su Internet. In secondo luogo, un ambiente utente protetto da password in cui i fornitori possono visualizzare cose come fatture e creare nuovi utenti ecc.

Quindi quello che sto chiedendo in sostanza è dove posso iniziare a proteggere questo ambiente. Quali sarebbero i migliori passi per proteggere il server. Esegue Nginx, Python e PHP.

Qualsiasi input sarebbe molto apprezzato, ho una conoscenza di base della sicurezza dopo aver studiato sicurezza onori in uni, ma è stato qualche tempo fa e la conoscenza teorica è inutile rispetto alla conoscenza pratica che mi manca.

    
posta wwalford 19.04.2015 - 10:30
fonte

1 risposta

2

Alcuni punti di partenza che non sono affatto una lista esauriente (modifico il post come commentano le persone, e attribuisco loro credito):

  • Firewall - consente solo l'accesso alle porte che lo richiedono esplicitamente (nel tuo caso probabilmente solo SSH e HTTP / S). Mi sono collegato a UFW perché è facile.
  • Disattiva login root - inoltre considera la limitazione a un particolare gruppo di utenti: dovrai eseguire sudo (info qui e qui ) e assicurati che le password siano obbligatorie (vedi man visudo )
  • Autenticazione SSK PubKey - invece di accedere con una password, il server SSH ha un elenco di chiavi pubbliche che sono autorizzati per l'accesso.
  • Assicurati di aggiornare regolarmente il software: sudo apt-get update; sudo apt-get upgrade;
  • La mia preferenza sarebbe quella di installare NGINX dal sorgente in quanto i repository ritardano le correzioni del bug (inclusa la sicurezza).
  • Forza HTTPS (un certificato non è più di $ 15 all'anno) con HSTS . Non disabilitare completamente HTTP, ma crea piuttosto un normale blocco HTTP server (cioè porta 80) in NGINX e usa return 301 https://yourdomain.tld; . Non includere nessuna delle variabili $uri o $request_path in quanto possono essere manipolate su HTTP.
risposta data 19.04.2015 - 11:11
fonte

Leggi altre domande sui tag