domingo, 16 de dezembro de 2012

Cotas de Disco no Linux

Olá!

Uma funcionalidade do Linux não muito usada, mas bem útil em algumas situações é o controle de cotas em disco.

Um bom exemplo para utilização de cotas em disco é um cenário onde as estações de trabalho usam Linux com uma base de autenticação centralizada e perfil remoto por NFS. 

Certa vez administrei um servidor nesse cenário.
Esse servidor possuia o diretório /home compartilhado via NFS com os Desktops. Isso tornava o ambiente bem flexível mas tinha um limite de espaço em disco. Sem o uso de cotas um usuário poderia encher seu diretório home com arquivos pesados e impedir os demais usuários de gravarem nos seus respectivos diretórios. Para evitar isso, as cotas em disco são uma ótima escolha.

Nesse post, colocarei os passos para habilitar e configurar cotas. Explicarei alguns comandos e no final há um vídeo demonstrando todo o procedimento na prática.

O ambiente consiste em uma máquina virtual (VirtualBox) com um disco de sistema operacional e um segundo disco de 5 GB com LVM. Foi criado um LV de 2 GB para ser usado nos testes de Cotas.
Durante os testes serão usados dois usuários e um grupo:

Usuários: mbsec e mbsec2
Grupo: mbsec

Vamos lá!!

Basicamente, os passos serão os seguintes:
1 - Habilitar recurso de cotas na partição.
2 - Configurar cotas para um determinado usuário.
3 - Fazer testes de cópia e gravação na partição com esse usuário.
4 - Repetir os passos 2 e 3, porém com cotas de grupos.

Seguem os comandos de forma abreviada:
1 - Primeiramente precisamos habilitar os recursos de cotas na partição.

Para isso, abra o arquivo /etc/fstab e adicione as opções usrquota e grpquota nas opções da partiação.
Veja o exemplo:
 /dev/MBSEC/LV1  /mnt/Cotas/LV1 ext4 defaults,usrquota,grpquota  0  0

Após adicionar as opções no /etc/fstab, aplique elas remontando a partição:
# mount -o remount /dev/MBSEC/LV1

Para conferir se as opções foram habilitadas, digite o comando mount e verifique os detalhes da partição.

2 - Como as cotas foram recém habilitadas, precisamos criar os arquivos de configurações de cotas.

São dois arquivos. Um deles armazena configurações de usuários e outro de grupo. 
Seus nomes são aquota.user e aquota.group, respectivamente. Eles são arquivos binários e não podemos editá-los em texto claro com o vi, por exemplo.

Para criação desses arquivos, a melhor forma é executar o comando quotacheck.
Esse comando verifica as configurações de cotas das partições com o recurso habilitado e grava as informações nos arquivos mencionados acima. Caso esses arquivos não existam, ele cria. : )

Então, digite o seguinte comando:
# quotachek -augv

-a : diz para ele checar todas as partições com cotas habilitadas.
-u : verifica as configurações de cotas para os usuários.
-g : verifica as configurações de cotas para os grupos.
-v : modo verbose, para mostrar detalhes do que ele está fazendo.

Após executar o comando, verifique o ponto de montagem da partição. Deverão aparecer os dois arquivos mencionados acima. 
OBS.: Eles sempre são criados na raíz do ponto de montagem da partição.

3 - Agora vamos habilitar o controle de cotas no sistema:
# quotaon -a

OBS.: Se quiser desabilitar é só digitar quotaoff -f

4 - Agora é só editar as cotas e fazer os testes.

O comando para edição de cotas é o edquota. Os principais parâmetros são descritos abaixo:
-u usuário : edita as configurações de cotas de usuário
-g grupo    : edita as configurações de cotas de grupo.
-t               : define as configurações de grace time para os usuários.
-t -g           : define as configurações de grace time para os grupos.
-p usuário1 usuário2 : copia as configurações de cotas de usuário1 para usuário2.

5 - Verificar as cotas de usuários e grupos.

Para ver o status das cotas de usuários e grupos, use o comando repquota. Ele mostra um relatório das configurações de cotas. Abaixo seguem as principais opções:
-a : lista configurações de todas as partições que tenham cotas habilitadas.
-u : lista as configurações de usuários (é a opção default).
-g : lista as configurações de grupos.

OBS.: As cotas são atualizadas de tempos em tempos. Se estiver fazerndo algum teste e precisar forçar a atualização das cotas, execute o comando quotacheck.

Ok. Esses comandos acima são o que precisamos conhecer para gerenciar cotas. Agora temos alguns conceitos de cotas.

Quando editar as cotas de um usuário ou grupo, haverão as seguintes colunas:

Filesystem
Indica a partição onde as cotas serão aplicadas.

blocks
Indica a quantidade de blocos atualmente sendo usada por aquele usuário ou grupo.
Considere 1 bloco = 1 KB

soft
Essa é a cota soft de arquivos, ou seja, os usuários podem usar até esse limite sem problemas. Após esse limite eles terão um tempo (grace time) de tolerância para limpar alguns arquivos e ficar abaixo desse limite. Se eles não limparem nada até o grace time expirar, qualquer cópia será bloqueada até que algo seja apagado.

hard
Esse é o limite absoluto que cada usuário ou grupo tem. Em nenhuma hipótese os usuários conseguirão ocupar mais espaço do que definido aqui.

As próximas 3 colunas (inodes, soft e hard) tem os mesmos conceitos explicados acima, porém para o controle de inodes e não de arquivos.

Ok. Agora já sabemos os comandos e os conceitos. Vamos aos testes práticos para resolver as dúvidas remanescentes:



Tutorial LVM

Olá!

LVM (Logical Volume Management) é uma solução excelente para servidores que mudam com certa frequencia seus requisitos de espaços em discos. Alguns exemplos são servidores de Banco de Dados que de tempos em tempos precisam ser reajustados para comportar o crescimento das databases, servidores de e-mails que precisam disponibilizar espaços para novas contas, etc. Bom, são diversas aplicações que aplicações do dia-a-dia que precisam dessas mudanças e o LVM torma a vida do administrador bem mais fácil.

Nesse post, colocarei os passos para criação de LVM e logo abaixo um vídeo demonstrando todo o procedimento na prática. Vamos lá.

A configuração de LVM, basicamente, consiste dos seguintes passos:

1 - Criar uma partição em um disco destinado à LVM.
2 - Transformar essa partição em uma partição de LVM.
3 - Apresentar a partição ao LVM através do comando pvcreate.
4 - Criar um Volume Group (VG) com essa partição.
5 - Criar um ou mais Logical Volumes (LV).
6 - Formatar esses LVs com um sistema de arquivos de sua preferência.
7 - Criar um ponto de montagem para esse LV.

Para referência, seguem as informações do ambiente:
Disco:                          /dev/sdb
Partição para LVM:     /dev/sdb1
Nome do VG:              MBSEC
Nome do LV:               LV1

Seguem os comandos de forma abreviada:
1 - Criar uma partição destinada à LVM no disco /dev/sdb.
# fdisk /dev/sdb
> n para nova partição.
> t para alterar o ID da partição de Linux (83) para Linux LVM (8e).
> w para salvar e sair.

2 - Transformar essa partição em uma partição de LVM.
# pvcreate /dev/sdb1

3 - Criar um Volume Group (VG) com essa partição. 
# vgcreate MBSEC /dev/sdb1

4 - Criar um ou mais Logical Volumes (LV).
# lvcreate -L 1G -n LV1 MBSEC

5 - Formatar esses LVs com um sistema de arquivos de sua preferência.
# mkfs.ext4 /dev/MBSEC/LV1

Segue o video com os passos na prática:


domingo, 29 de julho de 2012

Forense - Recovery de Dados

Olá, Pessoal!

Sábado (28/07/12), as 14:00 ocorreu a minha palestra sobre "Forense - Recovery de Dados" no 13º Fórum Internacional do Software Livre (FISL).

Gostaria de agradecer à todos que puderam estar presentes prestigiando a palestra. Graças à vocês pudemos encher a sala 41-E, o que é sempre muito gratificante para qualquer palestrante.

Bom, conforme prometido, segue o link da apresentação mais os links individuais dos videos apresentados.


Video Extundelete:

Video Foremost:

Espero que tenham gostado da apresentação e para aqueles que não puderam assisti-la, espero que possam aproveitar as informações dessa apresentação pelos links acima.

Nos vemos no próximo FISL com mais novidades.

Abração!

terça-feira, 19 de junho de 2012

Palestra FISL 13

Olá!

Pelo quarto ano consecutivo, fico contente de informar que ontem pela noite recebi a confirmação de aceite da minha primeira proposta de palestra para o 13° Fórum Internacional do Software Livre.

Convido a todos que estiverem presentes no evento entre os dias 25 e 28 de Julho de 2012 para prestigiarem a palestra. Como sempre, meu desafio será levar conteúdos interessantes e bem úteis em Segurança da Informação.

O dia exato e o horário deverão ser divulgados pela organização do FISL nos próximos dias, mas o título da palestra já está definido: "Forense - Recovery de Dados"

DATA: 28/07/2012
SALA: 41E
HORÁRIO: 14:00

Abração!

sexta-feira, 8 de junho de 2012

Lei para Crimes Digitais

Olá!

Essa semana vi uma notícia interessante no endereço http://www.ibliss.com.br/2433/brasil-finalmente-tera-lei-para-cibercrime/

Trata-se de um projeto de lei que define os crimes cibernéticos e suas respectivas penalidades. Espero que dessa vez estejamos próximos daquele discurso repetitivo de que "não existem leis para crimes na Internet..." e coisas do gênero. : )

Embora o projeto tenha sido aprovado na Câmara dos Deputados, ainda precisará passar pelo Senado e, por último, pela Presidência. Mas já podemos ter um pouco de esperança... : )

O projeto de lei PL-2793/2011 pode ser conferido aqui:

Também é interessante dar uma olhada no Marco Civil da Internet, mencionado no projeto de lei:

Abraço!

sexta-feira, 11 de maio de 2012

Recuperar arquivos deletados em Ext4

Olá!

Pessoal, hoje passei por uma experiência ruim e ao mesmo tempo boa.

Estive algumas boas horas trabalhando em um projeto e já nas fases finais, momento em que faria os backups em um repositório oficial, acabei deletando uma pasta em um sistema de arquivos Ext4 da VM que fiz especificamente para esse projeto. Nenhum problema quanto a deletar a pasta, o problema é que passei a pasta errada como parâmetro.

Foi aí que me dei conta do erro que cometi e do problemão que havia criado. : )
Como já trabalho há vários anos com isso, já estou vacinado e tinha uma carta na manga. Antes disso havia feito uma cópia dos principais arquivos em um documento que imprimi para o projeto.

Lição: Mesmo com vários anos de experiência estamos suscetíveis a falhas. A diferença está em quão experientes e preparados nós estamos para lidar com essas questões. A pró-atividade SEMPRE faz a diferença.

De qualquer forma achei interessante prosseguir como se eu não tivesse essa cópia de backup. Aí que veio a vantagem ser especialista em Forense Digital. Se eu realmente precisasse recuperar esses dados e não soubesse como, teria que mandar o disco para uma análise. Gastaria muito tempo e muito dinheiro para isso.

Se passarem por uma situação semelhante, espero que esse post possa auxiliá-los a economizarem tempo e dinheiro.

Cenário:
- Tenho um Linux instalado com um sistema de arquivos Ext4.
- Tenho uma pasta com arquivos importantes salvos em /root/PASTA.
- Acidentalmente executei o comando # rm -Rf /root/PASTA
- Estou desesperado e suando mesmo com uma temperatura de 5º C. hehe

Primeiros Socorros:
- Desligue o disco o mais rápido possível.

- Qualquer alteração que tentar fazer ou tentativa desesperada de recuperar algo com o disco montado em "rw" só vai piorar a situação.

- Monte esse disco em "ro" em um outro Linux. Para esse exemplo, a partição / do disco que quero recuperar está representada por /dev/sdb1 no sistema usado para o recover.

Passos para recover:
Bom, essa é uma situação bem simples e fácil de ser resolvida. Nesse caso, apenas uma ferramenta de forense já vai nos trazer de volta aquele sorriso de alegria. hehe

Para essa situação, indico fortemente a ferramenta extundelete.
É uma ferramenta bem robusta e mais inteligente para trabalhar com restaurações em sistemas ext*

- Download:

# tar -xvjf extundelete-0.2.0.tar.bz2

- Precisamos instalar alguns requisitos para compilação:
# yum install gcc-c++ e2fsprogs e2fsprogs-libs e2fsprogs-devel

- Agora compilamos a ferramenta:
# ./configure
# make
# make install (Isso é opcional. Você pode executar os binários direto da pasta src)

- Vamos para os exemplos de restauração:
Recuperar arquivo:
./extundelete /dev/sdb1 --restore-file root/PASTA/arquivo

Recuperar diretório:
./extundelete /dev/sdb1 --restore-directory root/PASTA

Se não conseguir recuperar por ter feito algo no disco antes de desligá-lo, pode tentar restaurar tudo.
./extundelete /dev/sdb2 --restore-all

Tudo que for encontrado será restaurado em uma pasta chamada RECOVERED_FILES.

Espero que isso ajude.
Agora se o negócio estiver bem feio e em uma situação mais complexa, entre em contato com minha empresa: www.timbs.com.br

Faremos o possível para ajudá-lo.

Abraço!

quinta-feira, 10 de maio de 2012

90% dos sites estão Vulneráveis

No final do mês passado (23/04/12) foi divulgada uma interessante pesquisa feita pela Trustworthy Internet Movement (TIM) à respeito da segurança em diversos sites da Internet.

Foram analisados sites de redes sociais, instituições financeiras, e-commerce, etc. Os testes consistiam basicamente em testar a segurança da criptografia usada nesses sites (SSL e TLS em todas as verões). Foram analisados aproximadamente 200.000 sites e, surpreendentemente, 90% dos sites não foram robustos o suficiente para impedir que informações sensíveis fossem capturadas através de ferramentas de captura de tráfego e quebra de criptografia.


É uma boa pesquisa para ficarmos alertas quanto a segurança dos serviços que usamos ou servimos aos nossos clientes. Obviamente a captura de informações desse tipo é um pouco complexa para uma pessoa normal, porém algo trivial para um especialista em Segurança da Informação.

Recentemente fui contratado para um Pentest e fiz um teste semelhante em uma das redes privadas com cerca de 10 usuários. Estendi o teste durante 1 hora e, surpreendentemente, consegui coletar informações sensíveis de todos os usuários que usaram essa rede durante o período.

As dicas que recomendo para evitarmos a captura das nossas informações sensíveis:
- Evite, ao máximo, usar qualquer rede aberta, pública e compartilhada.

- Se precisar usar uma rede compartilhada, jamais acesse sites com suas informações pessoais. Para ser bem claro, não coloque sua senha em nenhum site ou serviço.

- Aquela rede Wireless aberta do seu visinho pode não ser apenas um Access Point mal configurado. Pode estar aberta de propósito. : )

- Caso precise de Internet para o seu note em "qualquer lugar", compre um modem 3G com um plano que lhe atenda. Existem planos bem acessíveis e certamente mais baratos que o prejuízo possível caso suas informações sejam comprometidas.

sábado, 28 de abril de 2012

Palestra FLISOL 2012

Olá!

Gostaria de parabenizar a organização do FLISOL 2012 de Caxias do Sul. Realmente foi um evento legal e com uma organização comprometida. Pudemos trocar boas idéias e, como sempre ocorre nesses eventos, aprender algo novo.

Bom, segue a apresentação da minha palestra sobre Segurança da Informação para os Negócios.

Aos que estiveram presentes, espero que tenham gostado. E para os que não puderam estar na apresentação, fiquem a vontade para olhá-la e se tiverem qualquer questão, por favor, deixe-me saber. Espero que gostem.


Abraço!

quinta-feira, 26 de abril de 2012

FLISOL 2012 - Caxias do Sul

Olá!

Nesse sábado (28/04) ocorrerá o FLISOL 2012 em diversas cidades e países.

O FLISOL (Festival Latino-americano de Instalação de Software Livre) é o maior evento de divulgação de Software Livre da América Latina. Ele acontece desde 2005 e seu principal objetivo é promover o uso de software livre, apresentando sua filosofia, seu alcance, avanços e desenvolvimento ao público em geral.

Com esta finalidade, diversas comunidades locais de software livre (em cada país, em cada cidade/localidade), organizam simultaneamente eventos em que se instala gratuitamente e totalmente legal, software livre nos computadores levados pelos participantes. Também, paralelamente, são oferecidas apresentações, palestras e oficinas, sobre temas locais, nacionais e latinoamericanos sobre Software Livre, com toda sua variedade de expressões: artística, acadêmica, empresarial e social.

Aproveitarei a oportunidade de contribuir com o evento ministrando uma palestra menos técnica e mais informativa sobre Segurança da Informação. 

O objetivo é transmitir a necessidade e importância da Segurança da Informação para os negócios. A palestra é destinada a todos que gostariam de entender melhor o que realmente é a Segurança da Informação e como ela permite um crescimento saudável e competitivo dos negócios das empresa. 

Através de uma linguagem acessível para todos os níveis de conhecimento falarei sobre os pilares da Segurança da Informação, os principais riscos externos e internos e como podemos melhorar a Segurança da Informação dos nossos negócios de forma ágil e simplificada.

Convido todos a prestigiarem este evento totalmente grátis graças aos inúmeros voluntários que sempre contribuem para essa inclusão digital.

Links com maiores informações:

FLISOL 2012 no Brasil:

terça-feira, 3 de abril de 2012

Filmes relacionados a TI

Boa tarde!

Estava revendo uns links antigos dos meus favoritos e encontrei essa pérola. Tem uma lista considerável de filmes que, de alguma forma, estão relacionados a TI em geral.

http://www.felipemartins.info/2011/08/security-and-hacking-complete-movie-list/?goback=.gde_3038504_member_64344862

Abraço!

quinta-feira, 29 de março de 2012

Jboss 7.1 + CentOS 6.2

Buenas!

Pessoal, por esses dias precisei fazer uma implementação do Jboss 7.1 em cima de um CentOS 6.2 x86_64.
Bom, dei uma olhada na net se já havia alguma documentação mais prática para esse cenário, como não encontrei algo atualizado resolvi compartilhar meus passos.

Basicamente os passos são:
1 - Instalação mínima do CentOS
2 - Instalação de algumas dependências.
3 - Instalação do JDK.
4 - Instalação do Jboss.
5 - Configuração do serviço Jboss.
6 - Configurações do Jboss.

1 - Instalação mínima do CentOS.

Basicamente é instalar o SO sem qualquer pacote desnecessário. No menu de instalação do CentOS existe a opção "Minimal". Escolha ela e mande bala.

2 - Instalação de algumas dependências.

Esse ponto é opcional, mas eu costumo fazer para facilizar o trabalho e agora e posteriormente.

yum install vim tcpdump iptraf wget gunzip
yum upgrade

3 - Instalação do JDK.

Pode ser usado o OpenJDK ou o JDK da Sun. Eu preferi colocar o JDK da Sun devido a maior demanda deste por parte dos programadores que conheço.

- Download do JDK:

Essa é a última versão enquanto escrevo esse artigo.

- Instale o RPM:
rpm -ivh jdk-7u3-linux-x64.rpm

Ele deve instalar a estrutura principal em /usr/java/jdk*
OBS.: Onde eu coloco *, ajuste de acordo com o nome correto da pasta.

Uma prática legal é criar link simbólico padrão para o jdk. Dessa forma, sempre que precisar atualizar bastará alterar o link. Nesse exemplo criei uma pasta em /opt chamada java:

mkdir /opt/java

Dentro dessa pasta criei um link para o jdk instalado.

cd /opt/java
ln -s /usr/java/jdk* jdk

- Criar as variáveis de ambiente
cd /etc/profile.d

Cria o arquivo java.sh  e colocar o conteúdo abaixo:
vim java.sh

################
JAVA_HOME=/opt/java/jdk
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/lib
LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amb64

export JAVA_HOME PATH CLASSPATH LD_LIBRARY_PATH
################

chmod 755 java.sh

4 - Instalação do Jboss

- Fazer o download da última versão:

- Descompacte em um lugar de sua escolha:
No meu caso decompactei em uma área reservada montada em /storage

cd /storage
gunzip jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.zip

Assim como o JDK, criaremos um link para essa pasta:
cd /opt/java
ln -s /storage/jboss-as-7.1.1.Final jboss

- Criar as variáveis de ambiente:
cd /etc/profile.d

Criar o arquivo jboss.sh e colocar o conteúdo abaixo:
vim jboss.sh

################
JBOSS_HOME=/opt/java/jboss
PATH=$PATH:$JBOSS_HOME/bin

export JBOSS_HOME PATH
################ 

chmod 755 jboss.sh

- Criar usuário para executar o Jboss:
useradd jboss
passwd jboss

5 - Configuração do serviço Jboss. 

Esse passo é para criarmos um script de inicialização do Jboss, ou seja, padronizarmos a aplicação.
O próprio Jboss já vem com o exemplo de script para o init.d, usaremos ele fazendo apenas alguns ajustes.

cd /etc/init.d
cp -a  /opt/java/jboss/bin/init.d/jboss-as-standalone.sh jboss

Agora precisamos apenas ajustar a variável JBOSS_HOME nesse script. Ela fica na linha 28.
vim jboss
JBOSS_HOME=/opt/java/jboss

A documentação oficial sugere a criação de uma pasta para colocar o conf de inicialização:

mkdir /etc/jboss-as
cd /etc/jboss-as
cp -a /opt/java/jboss/bin/init.d/jboss-as.conf .

OBS.: Isso não influencia no funcionamento do Jboss. É apenas para o script de inicialização.

Nesse arquivo, apenas descomentei a variável JBOSS_USER colocando o usuário criado para o jboss.
No meu caso:

JBOSS_USER=jboss

- Criar entrada no chkconfig:
chkconfig --add jboss
chkconfig jboss on

6 - Configurações do Jboss.
 
Por último precisamos ajustar as permissões de acesso ao Jboss.
Inicialmente basta publicarmos a console de gerenciamento dele para uma interface acessível remotamente.
OBS.: Por padrão ela vem publicada apenas em localhost.

cd /opt/java/jboss/standalone/configuration/
vim standalone.xml

Perto da linha 275 edite o endereço das interfaces "public" e "management":

################
    <interfaces>
       <interface name="management">
           <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
        </interface>
        <interface name="public">
            <inet-address value="${jboss.bind.address:0.0.0.0}"/>
        </interface>
        <!-- TODO - only show this if the jacorb subsystem is added  -->
        <interface name="unsecure">
            <!--
              ~  Used for IIOP sockets in the standard configuration.
              ~                  To secure JacORB you need to setup SSL
              -->
            <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
        </interface>
    </interfaces>

################

Assim você já conseguirá acessar e usar o seu jboss, mas ainda aconselho fortemente ler as dicas de segurança no endereço abaixo (em referências).

Pessoal, desculpe se eu esquecer algum detalhe mas escrevi bem rápido com a maioria das informações de cabeça (fiz a instalação esses dias). Se lembrar de mais alguma informação vou colocando aqui e se verificarem que esqueci algo, por favor, fiquem a vontade para contribuir.

Em breve pretendo publicar algo sobre hardening em Jboss.

Abraço!

Referências adicionais:

terça-feira, 27 de março de 2012

Boas Práticas de Segurança - Apache

Seguem algumas boas práticas de Segurança para protejer um servidor apache.
Fiz todos os testes com uma distro CentOS Linux.

Remover página de teste (Welcome)

1 - Edite o arquivo /etc/httpd/conf.d/welcome.conf.
2 - Comente todas as linhas desse arquivo.
#
#    Options -Indexes
#    ErrorDocument 403 /error/noindex.html
#
3 - Recarregue a configuração do apache: /etc/init.d/httpd reload

Personalizar página default para endereço não publicado

1 - Acesse o diretório /etc/httpd/conf.d e crie um arquivo de configuração seguindo o exemplo abaixo:

# vim security.conf

    Options -Indexes
    ErrorDocument 403 /error/security.html

    Options -Indexes
    ErrorDocument 403 /error/security.html

2 - Depois é só criar e personalizar a página security.html

Desabilitar versão do Apache

1 - Edite o arquivo httpd.conf
2 - Modifique a linha ServerTokens para:
ServerTokens Prod
3 - Recarregue as configurações do apache.

http://httpd.apache.org/docs/current/mod/core.html#servertokens

Desabilitar assinatura do servidor

Quando uma página que não existe é acessada, por exemplo, o apache mostra uma página de erro default com informações do servidor, porta, etc.
Não há nenhuma necessidade disso ser mostrado.

1 - Edite o arquivo httpd.conf.
2 - Modifique a linha ServerSignature para:
ServerSignature Off
3 - Recarregue a configuração do apache.

http://httpd.apache.org/docs/current/mod/core.html#serversignature

Desabilitar Trace

1 - Edite o arquivo httpd.conf.
2 - Adicione a linha abaixo no final do arquivo:
TraceEnable Off
3 - Recarregue a configuração do apache.

http://httpd.apache.org/docs/current/mod/core.html#traceenable

Negar acesso ao /

1 - Edite o arquivo httpd.conf.

    Options FollowSymLinks
    AllowOverride None
    Order Deny,Allow
    Deny from all

OBS.: Se tiver mais algum diretório que não precise ser publicado, bloqueie também.

Bom, conforme eu for me lembrando de mais dicas, vou colocando aqui.
Caso alguém tenha mais dicas, por favor, fique a vontade para comentar.

Abraço!