Skip to content

Instantly share code, notes, and snippets.

@elinardo10
Created September 4, 2024 01:09
Show Gist options
  • Save elinardo10/7f60dd05f77e8ea6830e3380d4803ae2 to your computer and use it in GitHub Desktop.
Save elinardo10/7f60dd05f77e8ea6830e3380d4803ae2 to your computer and use it in GitHub Desktop.
Bash Setup init Usuário
#!/bin/bash#
Defina o nome do usuário
USERNAME="novousuario"
# Cria o usuário com uma pasta home e um shell bash
sudo adduser --home "/home/$USERNAME" --shell /bin/bash $USERNAME
# Adiciona o usuário ao grupo sudo para que ele tenha privilégios administrativos (opcional)
sudo usermod -aG sudo $USERNAME
# Cria as pastas padrão do usuário
sudo mkdir -p /home/$USERNAME/.ssh
sudo mkdir -p /home/$USERNAME/public_html
# Define as permissões apropriadas para as pastas
sudo chmod 700 /home/$USERNAME/.ssh
sudo chmod 755 /home/$USERNAME/public_html
# Altera a propriedade das pastas para o novo usuário
sudo chown -R $USERNAME:$USERNAME /home/$USERNAME/.ssh
sudo chown -R $USERNAME:$USERNAME /home/$USERNAME/public_html
# Configura o SSH para o novo usuário
echo "Copie sua chave pública SSH para o novo usuário."
read -p "Cole aqui a chave pública SSH: " SSH_KEY
echo "$SSH_KEY" | sudo tee /home/$USERNAME/.ssh/authorized_keys
# Define permissões para o arquivo authorized_keys
sudo chmod 600 /home/$USERNAME/.ssh/authorized_keys
sudo chown $USERNAME:$USERNAME /home/$USERNAME/.ssh/authorized_keys
# Configura o servidor SSH para permitir o login do novo usuário
sudo sed -i '/PermitRootLogin/s/yes/prohibit-password/' /etc/ssh/sshd_config
sudo sed -i '/PasswordAuthentication/s/yes/no/' /etc/ssh/sshd_config
sudo systemctl reload sshd
echo "Usuário $USERNAME criado com sucesso e acesso SSH configurado!"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment