95 lines
2.9 KiB
Markdown
95 lines
2.9 KiB
Markdown
# MANUAL TÉCNICO - GESTÃO DE USUÁRIOS E PERMISSÕES
|
|
|
|
**Código:** ITGINF 0012/26 | **Classificação:** RESTRITO
|
|
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
|
|
|
|
## 1. HISTÓRICO DE REVISÃO
|
|
|
|
| Data | Versão | Descrição | Autor |
|
|
| :--- | :--- | :--- | :--- |
|
|
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
|
|
|
|
## 2. OBJETIVO
|
|
Padronizar a criação de usuários, gerenciamento de senhas, criação de grupos e permissionamento de arquivos em servidores Linux.
|
|
|
|
## 3. PRÉ-REQUISITOS
|
|
* [ ] Acesso root ou usuário com permissão `sudo`.
|
|
|
|
---
|
|
|
|
## 4. GESTÃO DE USUÁRIOS E GRUPOS
|
|
|
|
### Criar Usuário
|
|
|
|
**Método Recomendado (Interativo - Ubuntu/Debian/Alpine):**
|
|
```bash
|
|
sudo adduser nome_usuario
|
|
```
|
|
*Este comando já cria a pasta /home, pede a senha e define o shell.*
|
|
|
|
**Método Padrão (Universal / RHEL):**
|
|
```bash
|
|
sudo useradd -m -s /bin/bash nome_usuario
|
|
sudo passwd nome_usuario
|
|
```
|
|
*-m cria o home, -s define o bash como shell.*
|
|
|
|
### Adicionar Usuário ao Grupo Sudo/Wheel (Administrador)
|
|
|
|
* **Debian/Ubuntu:** Grupo `sudo`.
|
|
```bash
|
|
sudo usermod -aG sudo nome_usuario
|
|
```
|
|
* **RHEL/CentOS:** Grupo `wheel`.
|
|
```bash
|
|
sudo usermod -aG wheel nome_usuario
|
|
```
|
|
|
|
### Bloquear/Desbloquear e Deletar
|
|
|
|
* **Bloquear senha:** `sudo passwd -l nome_usuario`
|
|
* **Desbloquear:** `sudo passwd -u nome_usuario`
|
|
* **Deletar usuário:** `sudo userdel -r nome_usuario` (O `-r` apaga a pasta home).
|
|
|
|
---
|
|
|
|
## 5. PERMISSÕES DE ARQUIVOS E PASTAS
|
|
|
|
No Linux, permissões são definidas por Leitura (r), Escrita (w) e Execução (x) para Dono (u), Grupo (g) e Outros (o).
|
|
|
|
### Alterar Dono (`chown`)
|
|
Muda quem é o dono do arquivo ou pasta.
|
|
```bash
|
|
# Sintaxe: chown usuario:grupo arquivo
|
|
sudo chown www-data:www-data /var/www/html/index.php
|
|
sudo chown -R joao:devs /app/projeto (Recursivo para pasta)
|
|
```
|
|
|
|
### Alterar Permissões (`chmod`)
|
|
Modo numérico (Octal) é o mais comum:
|
|
* **7** = Full (rwx)
|
|
* **6** = Ler/Escrever (rw-)
|
|
* **5** = Ler/Executar (r-x)
|
|
* **4** = Ler (r--)
|
|
|
|
**Exemplos Comuns:**
|
|
* `chmod 755 arquivo`: Dono faz tudo, outros só leem/executam. (Padrão para scripts/pastas)
|
|
* `chmod 644 arquivo`: Dono le/escreve, outros só leem. (Padrão para configs/textos)
|
|
* `chmod 777 arquivo`: **PERIGOSO**. Todo mundo mexe. Evite.
|
|
* `chmod +x script.sh`: Torna o arquivo executável.
|
|
|
|
---
|
|
|
|
## 6. DADOS TÉCNICOS
|
|
| Arquivo | Descrição |
|
|
| :--- | :--- |
|
|
| `/etc/passwd` | Lista de usuários e infos (shell, UID). |
|
|
| `/etc/shadow` | Hash das senhas (Restrito ao root). |
|
|
| `/etc/group` | Lista de grupos e membros. |
|
|
| `/etc/sudoers` | Regras de quem pode usar sudo (Use `visudo` para editar). |
|
|
|
|
## 7. VALIDAÇÃO FINAL
|
|
- [ ] O usuário novo consegue logar (ssh ou local)?
|
|
- [ ] O usuário consegue usar `sudo` (se for admin)?
|
|
- [ ] As permissões dos arquivos protegem dados sensíveis (outros usuários não conseguem escrever)?
|