[Setor13]

Até 1967 o uso do LSD era permitido na California.

Segurança Linux

com um comentário

Ae galera, vou disponibilizar aqui algumas dicas sobre segurança de sistemas GNU/Linux, vale lembrar que são apenas dicas, não é nenhum “Manual de Segurança”, são dicas que fui “ajuntando” aqui e que acabo usando no dia-a-dia, aconselho fortemente uma pesquisa sobre os assuntos que você não conhecer, o pai google ta ae pra isso :-) conforme for lembrando de mais vou postando ae, ok!?

Lembrando que criticas são sempre bem vindas, se acharem que tem algo a melhorar (é claro q tem :-)   ou sugerir algum artigo que gostariam de ver por aqui, deixe nos comments.

My 2 cents:

-Bios: É recomendável desabilitar o boot por unidades removiveis como disquetes e CD-ROM, defina uma senha para acesso ao Setup, assim evita-se que pessoas não autorizadas possam usar discos de boot especias e/ou alterar a configuração da BIOS. É valido lembrar que se alguem tiver acesso fisico ao interior da maquina pode-se simplesmente resetar a BIOS usando o jumper ou simplesmente retirando a bateria por um tempo.

-Modo Single-user: No processo de inicialização você pode passar parâmetros para o kernel através da linha de comando. Um desses parâmetrs é o “linux single”, conhecido como “single-user mode”, é geralmente usado para manutenção do sistema. O problema é que assim o sistema é logado como root, sem ter que digitar nenhuma senha.

Para resolver isso procuramos no /etc/inittab a seguinte linha:

id:3:initdefault:

e adicionamos, abaixo, a seguinte linha:

~~:S:wait:/sbin/sulogin”

ficando assim:

id:3:initdefault:
~~:S:wait:/sbin/sulogin”

Para completar temos que reiniciar o init:
# /sbin/init q

-Ctrl+Alt+Del: Para evitar a reinicialização por esse meio, basta comentar umaa linha no /etc/inittab (como mostra abaixo), isso é importante caso você não tenha uma boa segurança fisica para o servidor.

Basta comentar a linha:

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

adcionando um # no inicio, ficando assim:

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

Para completar temos que reiniciar o init:
# /sbin/init q

-Pacotes desnecessários: Nunca tenha pacotes desnecessários no sistema. Eles são uma ameaça, e podem ser prejudiciais posteriormente. Qualquer pacote que desconheça e/ou seja desnecessário, desinstale.

-Usuários: certifique-se de excluir todas as contas de usuário que não forem ser usadas, muitas distribuições vem com contas padões que podem muito bem serem excluidas, certifique-se quais usuário realmente necessitam de acesso ao shell, monitore as permissões, só de acesso ao que realmente é necessário.
Os arquivos passwd e shadow devem somente estar acessiveis para o usuário root, nem mesmo a leitura é permitida para outros usuários. Para uma maio segurança pode-se atribuir o “stick bit” para torna-lo imutavel, mas lembre-se de retira-lo quando for adcionar ou remover algum usuário.
Periodicamente use o Jhon the Ripper para testar as senhas de seus usuários.

-Senhas: Uma password “inquebravel”, ao contrario do que muitos imaginam, não existe, com tempo e poder de processamento necessário toda password pode ser descoberta por força bruta. É muito comum também o uso de engenharia social. Engenharia Social é o jeito mais fácil de se conseguir acesso a contas em um servidor. Engenharia social é tema pra um artigo e até livros inteiros, pretendo falar um pouco sobre isso em outro artigo, mas uma busca no google pode render resultados valiosos :)

Algumas dicas recomendadas para senhas:

- Devem conter, no minimo, seis caracteres. Mas é fortemente recomendado o uso de oito, numa mistura de letras, numeros e caracteres especias, incluindo também letras em caixa alta com caixa baixa.
- Não deve ser facil de advinhar, senhas baseadas no user name, em pessoas da familia, trabalho, documentos, etc, não são uma boa idéia.
- Deve ter um prazo de expiração, forçando a sua troca periodicamente.

-Shell: Alem de restringir o uso de shell apenas pra quem precisa dele, uma boa solução é criar um outro usuário com UID baixo (com privilégios de root) e usá-lo para dar manutenção no sistema, um login como root seria um motivo de alerta. Para reforçar a segurança, podemos fazer alterações no codigo do bash para logar todo comando digitado, ao invés de salva-los no arquivo .bash_history. E usar tornar esse o shell o padrão d usuário root e do usuário com privilégios de root.

-A conta root: A conta de root não tem nenhuma restrição de segurança imposta, você pode fazer tudo sem que lhe seja perguntado nada, por esse motivo assume-se que se o você tem acesso a uma conta com esses privilégios,você sabe o que esta fazendo. Por isso, preste muita atenção e tome muito cuidado quando estiver usando essa conta, o ideal é somente usar uma conta root quando é extremamente necessário, mesmo assim prefira logar com uma conta comum e usar o comando su ou sudo.

Mas caso você tenha mesmo que logar como root, não seria legal esquecer um terminal logado com a senha de root (acredite, isso acontece bastante :-). Pra evitar isso basta definir a variável “TMOUT” com o tempo (em segundos) que a sessão pode permanecer ativa sem que nada seja digitado.
Para isso adcione a a linha “TMOUT=3600″ (sem aspas) em seu profile (vi /etc/profile), logo abixo da linha HISTSIZE. Ficando assim:

HOSTNAME=`/bin/hostname`
HISTSIZE=1000
TMOUT=3600

També, é necessário exportar as variaceis que foram definidas, para isso procure a seguinte linha:

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC JAVA_HOME CVSROOT

Adcione a variável TMOUT, ficando assim:

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC JAVA_HOME CVSROOT TMOUT

Note que 3600 é o equivalente a uma hora, e que definindo essa variavel no /etc/profile, a regra estará valendo para todos os usuários, mas se você quiser definir isso para usuários especificos basta usar o .bashrc do usuário. Para que tenha efeito é preciso “relogar” no sistema (logout – login)

-Logs: Logs são essenciais para a administração de segurança, por isso conheça seus logs, saiba tudo o que acontece neles e com eles, mas como nos tempos de hoje onde o tempa para ser dedicado aos logs é uma coisa rara, existem varios programas que podem auxiliar nessa tarefa, com opções de enviar email, sms e um monte de frescuras a mais, mas não pense que isso lhe isenta da tarefa de analisar pessoalmente os logs.
Para uma maior segurança pode-se usar uma maquina como servidor de logs, para onde as demais deverão ser configuradas para enviar os logs. Lembre-se também de sempre fazer backup de seus logs.

Escrito por gfavaro

5 Setembro, 2006 às 4:51 pm

Publicado em GNU/Linux, Segurança Linux

Uma resposta

Subscreva aos comentários comRSS.

  1. “linux single”, tô lembrado disto.. hahahaha Ótimo para botar keylogs por aí… hehehe

    edenis

    7 Setembro, 2006 em 3:45 pm


Deixe uma resposta