Isso é um pouco não específico, mas em geral você precisará
-
Execute um firewall como iptables ou ufw para gerenciar a conexão a portas abertas.
-
Somente instale o software que você precisa.
-
Somente execute serviços essenciais para a execução do servidor.
-
Mantenha esse software atualizado com todos os patches de segurança.
-
Configure novos usuários com o mínimo de privilégios que eles precisam para executar suas tarefas.
-
Execute denyhosts ou fail2ban para verificar ataques de força bruta.
-
Execute logwatch para enviar um e-mail para você sobre quaisquer anomalias nos arquivos de log.
-
Verifique seus registros com frequência em busca de atividades suspeitas.
-
Use sudo sempre e use senhas strongs.
-
Desabilite cifras de força fraca e média em SSL para apache, exim, proftpd, dovecot, etc.
-
Defina serviços para apenas ouvir o host local (quando apropriado).
-
Execute o chkrootkit diariamente.
-
Execute clamscan com a frequência necessária para verificar se há vírus do Windows (se apropriado).
-
Seja vigilante, conheça seu servidor, saiba o que ele deve estar fazendo e o que ele não deveria estar fazendo.
Você só manterá as coisas seguras, verificando e protegendo constantemente. Se você não sabe o que algo faz ou como ou por quê, ou algo parece suspeito, basta pedir conselhos aos outros.