A configuração do UNIX para usuários únicos e múltiplos difere principalmente na forma como as contas de usuário são gerenciadas e os recursos do sistema são alocados. Não existe um único "arquivo de configuração" que determine isso; É uma combinação de arquivos e configurações espalhados pelo sistema.
Configuração única: Um sistema UNIX de um usuário único, normalmente usado para servidores executando tarefas específicas ou durante a manutenção do sistema (modo de usuário único), não requer gerenciamento extensivo de usuário. Os elementos -chave são:
*
Conta raiz: O usuário root é a única conta ativa. Todos os arquivos e processos do sistema são executados sob esta conta. Nenhuma configuração especial é necessária além da instalação do sistema padrão.
*
Serviços mínimos: Somente serviços essenciais para a tarefa específica estão em execução. Muitos serviços de rede e daemons (processos em segundo plano) provavelmente estão desativados.
*
Segurança: A segurança é simplificada porque apenas um usuário tem acesso. No entanto, a forte proteção de senha raiz ainda é crucial.
Configuração multi-usuária: Os sistemas multi-usuários requerem configuração mais robusta para gerenciar acesso, recursos e segurança:
1.
Gerenciamento de conta de usuário: * `/etc/passwd`:este arquivo armazena informações essenciais sobre cada usuário, incluindo seu nome de usuário, senha (hashed), ID do usuário (UID), ID do grupo (GID), diretório inicial e shell de login.
* `/etc/Shadow`:este arquivo (geralmente legível apenas por root) armazena as senhas criptografadas. A separação de informações de senha aprimora a segurança.
* `/etc/group`:este arquivo define grupos de usuários, concedendo a eles privilégios coletivos.
* Comandos `userAdd` e` userMod`:essas ferramentas são usadas para criar e modificar contas de usuário. Eles lidam com entradas adicionando entradas para `/etc/passwd` e`/etc/group`.
* Comando `passwd`:permite que os usuários alterem suas senhas.
2.
Gerenciamento de recursos: * `/etc/segurança/limits.conf`:Este arquivo permite definir limites de recursos (memória, tempo da CPU, arquivos abertos) para usuários e grupos. Isso impede que um usuário monopolize recursos.
* Cotas de disco (usando os comandos `quota` e configuração relacionada):limite o espaço em disco que cada usuário ou grupo pode utilizar.
* Limites de processo (via `ulimit` ou` limits.conf`):restrinja o número de processos que um usuário pode ser executado simultaneamente.
3.
Autenticação: * `/etc/pam.d/`:Módulos de autenticação plugable (PAM) Arquivos de configuração Controle métodos de autenticação (senha, chaves ssh, etc.). Isso permite flexibilidade na maneira como os usuários efetuam login.
* `SUDOERS` FILE (`/etc/sudoers`):define quais usuários podem executar comandos com privilégios root (usando `sudo`). A configuração cuidadosa é essencial para evitar o acesso não autorizado.
4.
Segurança: * Configuração do firewall (`iptables`,` firewalld` etc.):controla o acesso à rede ao sistema.
* Listas de controle de acesso (ACLs):refinar ainda mais as permissões do sistema de arquivos além da propriedade básica do usuário/grupo.
* Auditoria:Eventos do sistema de registro para monitorar a atividade do usuário e detectar possíveis violações de segurança.
* Selinux/Apparmor:Módulos de segurança que aprimoram a segurança, restringindo os recursos do processo.
em resumo: Um sistema de usuário único requer gerenciamento mínimo de usuários, enquanto um sistema multi-usuário precisa de uma extensa configuração para contas de usuário, alocação de recursos, autenticação e segurança, contando fortemente nos arquivos e comandos mencionados acima. Os detalhes e configurações específicos variam dependendo do sistema operacional do tipo UNIX (por exemplo, Distribuições Linux, BSD, MacOS) e sua configuração específica.