Configuração Servidor · 5 min read · Jan 04, 2026

A Configuração Perfeita - SUSE 9.3 - Página 6

Proftpd

Eu quero usar Proftpd em vez de vsftpd, que é o servidor FTP padrão do SUSE, porque o software do painel de controle que vou instalar neste servidor (ISPConfig) requer Proftpd no SUSE 9.3 (em outras distribuições isso é diferente). Como não há pacotes SUSE para Proftpd, eu tenho que compilá-lo manualmente:

cd /tmp/
wget –passive-ftp ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.10.tar.gz

tar xvfz proftpd-1.2.10.tar.gz
cd proftpd-1.2.10/
./configure –sysconfdir=/etc
make
make install

cd ../
rm -fr proftpd-1.2.10*

Agora crie o arquivo /etc/init.d/proftpd:

| #! /bin/sh # Copyright (c) 2000-2001 SuSE GmbH Nuernberg, Alemanha. # Todos os direitos reservados. # # Autor original: Marius Tomaschewski <[email protected]> # # Levemente modificado em 2003 para uso com SuSE Linux 8.1, # por http://www.learnlinux.co.uk/ # # Levemente modificado em 2005 para uso com SuSE Linux 9.2, # por Falko Timme # # /etc/init.d/proftpd # ### BEGIN INIT INFO # Provides: proftpd # Required-Start: $network $remote_fs $syslog $named # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: Inicia o servidor ProFTPD ### END INIT INFO # Determina a base e segue um nome de link de runlevel. base=${0##*/} link=${base#*[SK][0-9][0-9]} # Força a execução se não for chamado por um diretório de runlevel. test $link = $base && START_PROFTPD=yes # Modificado por learnlinux.co.uk test "$START_PROFTPD" = yes || exit 0 # Modificado por learnlinux.co.uk # Retorna valores de acordo com LSB para todos os comandos, mas # status (veja abaixo): # # 0 - sucesso # 1 - erro genérico ou não especificado # 2 - argumento(s) inválido(s) ou excessivo(s) # 3 - recurso não implementado (por exemplo, "reload") # 4 - privilégio insuficiente # 5 - programa não está instalado # 6 - programa não está configurado # 7 - programa não está em execução proftpd_cfg="/etc/proftpd.conf" proftpd_bin="/usr/local/sbin/proftpd" proftpd_pid="/usr/local/var/proftpd.pid" [ -r $proftpd_cfg ] || exit 6 [ -x $proftpd_bin ] || exit 5 # Fonte das funções de status . /etc/rc.status # Primeiro, redefina o status deste serviço rc_reset case "$1" in start) echo -n "Iniciando o Servidor ProFTPD: " test -f /etc/shutmsg && rm -f /etc/shutmsg /sbin/startproc $proftpd_bin rc_status -v ;; stop) echo -n "Desligando o Servidor ProFTPD: " test -x /usr/local/sbin/ftpshut && /usr/local/sbin/ftpshut agora && sleep 1 /sbin/killproc -TERM $proftpd_bin test -f /etc/shutmsg && rm -f /etc/shutmsg rc_status -v ;; restart) ## Se o primeiro retornar OK, chame o segundo, se o primeiro ou ## segundo comando falhar, defina o valor de retorno do echo. $0 stop $0 start rc_status ;; try-restart) ## Pare o serviço e, se isso for bem-sucedido (ou seja, o ## serviço estava em execução antes), inicie-o novamente. ## Nota: não (ainda) faz parte do LSB (a partir de 0.7.5) $0 status >/dev/null && $0 restart rc_status ;; reload|force-reload) ## Possibilidade exclusiva: Alguns serviços devem ser parados ## e iniciados para forçar um novo carregamento da configuração. echo -n "Recarregar Servidor ProFTPD: " /sbin/killproc -HUP $proftpd_bin rc_status -v ;; status) # O status tem uma ligeira diferença para o comando de status: # 0 - serviço em execução # 1 - serviço morto, mas o arquivo pid em /var/run/ existe # 2 - serviço morto, mas o arquivo de bloqueio em /var/lock/ existe # 3 - serviço não está em execução echo -n "Verificando o Servidor ProFTPD: " checkproc $proftpd_bin rc_status -v ;; probe) ## Opcional: Probar a necessidade de um recarregamento, ## fornecer o argumento que é necessário para um recarregamento. [ $proftpd_cfg -nt $proftpd_pid ] && echo reload ;; *) echo "Uso: $0 {start|stop|status|restart|reload|try-restart|probe}" exit 1 ;; esac # Defina um status de saída. rc_exit |

chmod 755 /etc/init.d/proftpd
chkconfig –add proftpd

/etc/init.d/proftpd start

Por razões de segurança, você pode adicionar as seguintes linhas a /etc/proftpd.conf:

DefaultRoot ~  
IdentLookups off  
ServerIdent on "Servidor FTP pronto."

Certifique-se de comentar as seguintes linhas para permitir que os usuários ftp usem CHMOD:

| # Bar use of SITE CHMOD by default # # DenyAll # |

E reinicie o Proftpd:

/etc/init.d/proftpd restart

Webalizer

Para instalar o webalizer, basta executar

apt-get install webalizer

Sincronizar o Relógio do Sistema

Se você deseja que o relógio do sistema seja sincronizado com um servidor NTP, faça o seguinte:

apt-get install netdate

netdate tcp time.nist.gov

Crie /var/spool/cron/tabs/root:

| # atualizar hora com servidor ntp 0 3,9,15,21 * * * /usr/sbin/netdate time.nist.gov |

Então execute

chmod 600 /var/spool/cron/tabs/root
/etc/init.d/cron restart

Instalar alguns Módulos Perl necessários pelo SpamAssassin (vem com ISPConfig)

Instalação usando o Shell Perl

Faça login na linha de comando como root e execute o seguinte comando para iniciar o shell Perl:

perl -MCPAN -e shell

Se você executar o shell Perl pela primeira vez, será solicitado a responder algumas perguntas. Na maioria dos casos, as respostas padrão estão ok.

Por favor, note: Se você executar um firewall em seu sistema, pode ser necessário desligá-lo enquanto trabalha no shell Perl para que o shell Perl possa buscar os módulos necessários sem um grande atraso. Você pode ligá-lo novamente depois.

A grande vantagem do shell Perl em comparação com os dois outros métodos descritos aqui é que ele cuida das dependências ao instalar novos módulos. Ou seja, se descobrir que um módulo Perl pré-requisito está faltando ao instalar outro módulo, o shell Perl pergunta se deve instalar o módulo pré-requisito para você. Você deve responder a essa pergunta com “Sim”.

Execute os seguintes comandos para instalar os módulos necessários pelo SpamAssassin:

install HTML::Parser
install Net::DNS
(quando solicitado a habilitar testes, escolha não)
install Digest::SHA1
install DB_File
q
(para sair do shell Perl)

Se um módulo já estiver instalado em seu sistema, você receberá uma mensagem semelhante a esta:

HTML::Parser está atualizado.

A instalação bem-sucedida de um módulo se parece com isto:

/usr/bin/make install – OK

O Fim

A configuração do servidor está agora concluída, e se você desejar, pode agora instalar o ISPConfig nele.

Uma Nota Sobre SuExec

Se você deseja executar scripts CGI sob suExec, deve especificar /srv/www como o diretório home para sites criados pelo ISPConfig, pois o suExec do SUSE 9.3 é compilado com /srv/www como Doc_Root. Execute /usr/sbin/suexec2 -V, e a saída deve ser assim:

Para selecionar /srv/www como o diretório home para sites durante a instalação do ISPConfig, faça o seguinte: Quando for solicitado o modo de instalação, selecione o modo especialista.

Mais tarde, durante a instalação, você será perguntado se o diretório padrão /home/www deve ser o diretório onde o ISPConfig criará sites. Responda n e insira /srv/www como o diretório home para sites.

Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.