Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Come posso creare un utente SFTP sulla mia istanza Lightsail?
Desidero creare un utente SFTP sulla mia istanza Amazon Lightsail.
Risoluzione
Nota: i seguenti passaggi permettono di creare un utente SFTP con accesso a un ambiente chroot (chroot jail) senza accesso SSH. L'utente SFTP non può accedere alle directory esterne all'ambiente o alla directory chroot. La directory chroot diventa quindi la directory principale di questo utente.
Configura il gruppo e l’utente SFTP
-
Crea un gruppo per gli utenti SFTP con il seguente comando:
sudo groupadd sftp_groupNota: sostituisci sftp_group con il nome del tuo gruppo.
-
Crea un utente sull'istanza con una directory home senza accesso alla shell (interprete di comandi) di login SSH. Per fare ciò, esegui il seguente comando:
sudo useradd -g sftp_group -m -d /home/sftp_user -s /sbin/nologin sftp_userNota: sostituisci sftp_user con il tuo nome utente.
Configura l'autenticazione utente con l'autenticazione tramite password o basata su chiave SSH
Autenticazione tramite password
Usa il seguente comando per creare una password:
sudo passwd sftp_user
Autenticazione basata su chiave SSH
-
Per richiedere l'autenticazione basata su chiave SSH, crea una cartella .ssh nella directory home dell'utente. Quindi, crea un authorized_keys:
sudo mkdir /home/sftp_user/.ssh sudo touch /home/sftp_user/.ssh/authorized_keys -
Aggiungi la chiave pubblica SSH che desideri usare al file /home/sftp_user/.ssh/authorized_keys. Per ulteriori informazioni, consulta Set up SSH keys for Lightsail.
-
Per modificare la proprietà e le autorizzazioni della directory home dell'utente, esegui i seguenti comandi:
sudo chown sftp_user:sftp_group /home/sftp_user/.ssh -Rsudo chown root:sftp_group /home/sftp_user/ sudo chmod 755 /home/sftp_user/ sudo chmod 700 /home/sftp_user/.ssh/ sudo chmod 600 /home/sftp_user/.ssh/authorized_keysNota: l'esempio precedente utilizza l'autorizzazione 755 nella directory /home/sftp_user quindi cambia la proprietà all'utente root. Questa directory utente viene utilizzata come directory chroot.
Modifica il file /etc/ssh/sshd_config
-
Nella riga Subsystem sftp commenta la riga Subsystem sftp /usr/libexec/openssh/sftp-server:
# Subsystem sftp /usr/libexec/openssh/sftp-server -
Sostituisci la riga precedente con il testo seguente:
Subsystem sftp internal-sftp -
Per limitare l'accesso degli utenti SFTP, aggiungi il seguente testo al termine del file:
Match Group sftp_group ChrootDirectory /home/%u ForceCommand internal-sftpNell'esempio precedente, ChrootDirectory specifica la directory principale per gli utenti SFTP. MatchGroup identifica gli utenti in sftp_group che utilizzano il percorso /home/%u come directory root. I caratteri %u rappresentano l'utente. ForceCommand internal-sftp forza l'uso di un server SFTP in-process.
-
Se usi l'autenticazione tramite password, imposta PasswordAuthentication nel file /etc/ssh/sshd_config su yes.
Crea le directory chroot per l'utente
- Per creare una directory chroot, esegui i seguenti passaggi:
Nota: sostituisci il nome della directory, sftp_user e uploads con il nome della tua directory.sudo mkdir /home/sftp_user/uploads - Modifica la proprietà dei file:
Nota: sostituisci il nome della directory, sftp_user e uploads con il nome della tua directory.sudo chown sftp_user:sftp_group /home/sftp_user/uploads
Verifica le modifiche, quindi riavvia il servizio SSHD
-
Verifica che le autorizzazioni per la directory siano simili a quelle nell'esempio seguente:
ls -ld /homedrwxr-xr-x 3 root root 23 Oct 6 15:17 /home ls -ld /home/sftp_user drwxr-xr-x 3 root sftp_group 21 Oct 6 15:17 /home/sftp_user ls -ld /home/sftp_user/uploads/ drwxr-xr-x 2 sftp_user sftp_group 6 Oct 6 15:17 /home/sftp_user/uploads/ -
Riavvia il servizio SSHD:
sudo systemctl restart sshd
Connettiti all'istanza con SFTP
Autenticazione tramite password
Esegui quanto segue:
# sftp sftp_user@example.com's password:
Autenticazione basata su chiave SSH
Esegui quanto segue:
# sftp -i key.pem sftp_user@example.com
- Argomenti
- Compute
- Lingua
- Italiano

Contenuto pertinente
AWS UFFICIALEAggiornata 3 anni fa