Gestione degli account utente sull'istanza Amazon Linux - Amazon Elastic Compute Cloud

Gestione degli account utente sull'istanza Amazon Linux

Ogni istanza Linux viene avviata con un account utente predefinito del sistema Linux. Il nome utente predefinito viene determinato dall'AMI che è stata specificata all'avvio dell'istanza.

  • Per Amazon Linux 2 o Amazon Linux AMI, il nome utente è ec2-user.

  • Per un'AMI CentOS, il nome utente è centos.

  • Per un'AMI Debian, il nome utente è admin.

  • Per un'AMI Fedora, il nome utente è ec2-user o fedora.

  • Per un'AMI RHEL, il nome utente è ec2-user o root.

  • Per un'AMI SUSE, il nome utente è ec2-user o root.

  • Per un'AMI Ubuntu, il nome utente è ubuntu.

  • Altrimenti, se ec2-user e root non funzionano, contattare il fornitore dell'AMI.

Nota

Gli utenti del sistema Linux non devono essere confusi con gli utenti di AWS Identity and Access Management (IAM). Per ulteriori informazioni, consulta la pagina relativa a gruppi e utenti IAM nella Guida per l'utente di IAM.

Considerations

L'utilizzo dell'account utente di default è adeguato per numerose applicazioni, ma puoi aggiungere altri account utente in modo tale che gli utenti possano disporre di propri file e WorkSpace. Inoltre, la creazione di account utente per i nuovi utenti è una procedura più sicura rispetto alla concessione a più utenti (spesso inesperti) dell'accesso all'account utente predefinito, dal momento che tale account può causare seri problemi al sistema se viene utilizzato in modo inappropriato. Per ulteriori informazioni, consulta Suggerimenti per la sicurezza delle istanze EC2.

Per abilitare l'accesso SSH agli utenti per l'istanza EC2 utilizzando un account utente del sistema Linux, devi condividere la chiave SSH con l'utente. In alternativa, puoi utilizzare EC2 Instance Connect per fornire accesso agli utenti senza necessità di condividere e gestire le chiavi SSH. Per ulteriori informazioni, consulta Connessione a un'istanza Linux tramite EC2 Instance Connect.

Creazione di un account utente

Prima crea l'account utente e in seguito aggiungi la chiave pubblica SSH che permette all'utente di connettersi e accedere all'istanza.

Per creare un account utente

  1. Creazione di una nuova coppia di chiavi. È necessario fornire il file .pem all'utente per il quale si sta creando l'account. Gli utenti devono utilizzare questo file per connettersi all'istanza.

  2. Recuperare la chiave pubblica dalla coppia di chiavi creata nella fase precedente.

    $ ssh-keygen -y -f /path_to_key_pair/key-pair-name.pem

    Il comando restituisce la chiave pubblica, come illustrato nell'esempio seguente.

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6Vhz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXrlsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZqaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3RbBQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE
  3. Collegarsi all'istanza.

  4. Utilizzare il comando adduser per creare l'account utente e aggiungerlo al sistema (con una voce nel file /etc/passwd). Il comando crea anche un gruppo e una home directory per l'account. In questo esempio, l'account utente è denominato newuser.

    • Amazon Linux e Amazon Linux 2

      [ec2-user ~]$ sudo adduser newuser
    • Ubuntu

      Includere il parametro --disabled-password per creare l'account utente senza una password.

      [ubuntu ~]$ sudo adduser newuser --disabled-password
  5. Passare al nuovo account in modo che la directory e il file che verranno creati siano associati a una proprietà idonea.

    [ec2-user ~]$ sudo su - newuser

    Il prompt cambia da ec2-user in newuser per indicare che si è passati dalla sessione shell al nuovo account.

  6. Aggiungere la chiave pubblica SSH all'account utente. Creare prima una directory nella home directory dell'utente per il file della chiave SSH, in seguito creare il file della chiave e infine incollare la chiave pubblica nel file della chiave, come descritto nelle seguenti fasi secondarie.

    1. Creare una directory .ssh nella home directory newuser e modificare le relative autorizzazioni file in 700 (solo il proprietario può leggere, scrivere o aprire la directory).

      [newuser ~]$ mkdir .ssh
      [newuser ~]$ chmod 700 .ssh
      Importante

      Senza queste precise autorizzazioni file l'utente non sarà in grado di eseguire l'accesso.

    2. Creare un file denominato authorized_keys nella home directory .ssh e modificare le relative autorizzazioni file in 600 (solo il proprietario può leggere o scrivere nel file).

      [newuser ~]$ touch .ssh/authorized_keys
      [newuser ~]$ chmod 600 .ssh/authorized_keys
      Importante

      Senza queste precise autorizzazioni file l'utente non sarà in grado di eseguire l'accesso.

    3. Aprire il file authorized_keys con l'editor di testo preferito (ad esempio vim o nano).

      [newuser ~]$ nano .ssh/authorized_keys

      Incollare la chiave pubblica recuperata nella fase 2 nel file e salvare le modifiche.

      Importante

      Assicurarsi di incollare la chiave pubblica in una riga continua. La chiave pubblica non deve essere divisa su più righe.

      L'utente ora dovrebbe essere in grado di eseguire l'accesso all'istanza tramite l'account newuser utilizzando la chiave privata corrispondente alla chiave pubblica aggiunta al file authorized_keys. Per ulteriori informazioni sui diversi metodi di connessione a un'istanza Linux, vedere Connessione all'istanza di Linux.

Rimozione di un account utente

Se un account utente non è più necessario, puoi rimuoverlo in modo che non possa più essere utilizzato.

Utilizzare il seguente comando userdel per rimuovere l'account utente dal sistema. Quando si specifica il parametro -r, la home directory e lo spool di posta dell'utente vengono eliminati. Per conservare la home directory e lo spool di posta dell'utente, omettere il parametro -r.

[ec2-user ~]$ sudo userdel -r olduser