Se você quer ver todas as partes do tutorial estão aqui:

Parte 1 - Parte2 - Parte3 - Parte4 - Parte 5 - Parte 6

Demorou mas está ai! A sexta e última parte do toturial de configuração do OpenSUSE 10.3

12 ProftpdQuero utilizar o Proftpd em vez de vsftpd, que é o servidor de FTP default do SUSE, porque o software de painel de controle que vou instalar neste servidor (ISPConfig) requer Proftpd no OpenSUSE 10.3 (em outras distribuições, isto é diferente). Já que não há pacotes OpenSUSE para o Proftp, terei que compilá-lo manualmente:

cd /tmp/
wget –passive-ftp ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.1rc3.tar.gz
tar xvfz proftpd-1.3.1rc3.tar.gz
cd proftpd-1.3.1rc3/
./configure –sysconfdir=/etc
make
make install
cd ..
rm -fr proftpd-1.3.1rc3*

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

vi /etc/init.d/proftpd

#! /bin/sh
# Copyright (c) 2000-2001 SuSE GmbH Nuernberg, Germany.
# All rights reserved.
#
# Original author: Marius Tomaschewski <mt@suse.de>
#
# Slightly modified in 2003 for use with SuSE Linux 8.1,
# by http://www.learnlinux.co.uk/
#
# Slightly modified in 2005 for use with SuSE Linux 9.2,
# by 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:                Starts ProFTPD server
### END INIT INFO 

# Determine the base and follow a runlevel link name.
base=${0##*/}
link=${base#*[SK][0-9][0-9]} 

# Force execution if not called by a runlevel directory.
test $link = $base && START_PROFTPD=yes  # Modified by learnl
inux.co.uk
test “$START_PROFTPD” = yes || exit 0    # Modified by learnl
inux.co.uk 

# Return values acc. to LSB for all commands but
# status (see below):
#
# 0 - success
# 1 - generic or unspecified error
# 2 - invalid or excess argument(s)
# 3 - unimplemented feature (e.g. “reload”)
# 4 - insufficient privilege
# 5 - program is not installed
# 6 - program is not configured
# 7 - program is not running 

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 

# Source status functions
. /etc/rc.status 

# First reset status of this service
rc_reset 

case “$1″ in
    start)
  echo -n “Starting ProFTPD Server: ”
  test -f /etc/shutmsg && rm -f /etc/shutmsg
  /sbin/startproc $proftpd_bin
  rc_status -v
  ;; 

    stop)
  echo -n “Shutting down ProFTPD Server: ”
  test -x /usr/local/sbin/ftpshut && /usr/local/sbin/ftpshut n
ow && sleep 1
  /sbin/killproc -TERM $proftpd_bin
  test -f /etc/shutmsg && rm -f /etc/shutmsg
  rc_status -v
  ;; 

    restart)
  ## If first returns OK call the second, if first or
  ## second command fails, set echo return value.
  $0 stop
  $0 start
  rc_status
  ;; 

    try-restart)
  ## Stop the service and if this succeeds (i.e. the
  ## service was running before), start it again.
  ## Note: not (yet) part of LSB (as of 0.7.5)
  $0 status >/dev/null &&  $0 restart
  rc_status
  ;; 

    reload|force-reload)
  ## Exclusive possibility: Some services must be stopped
  ## and started to force a new load of the configuration.
  echo -n “Reload ProFTPD Server: ”
  /sbin/killproc -HUP $proftpd_bin
  rc_status -v
  ;; 

    status)
  # Status has a slightly different for the status command:
  # 0 - service running
  # 1 - service dead, but /var/run/  pid  file exists
  # 2 - service dead, but /var/lock/ lock file exists
  # 3 - service not running
  echo -n “Checking for ProFTPD Server: ”
  checkproc $proftpd_bin
  rc_status -v
  ;; 

    probe)
  ## Optional: Probe for the necessity of a reload,
  ## give out the argument which is required for a reload.
  [ $proftpd_cfg -nt $proftpd_pid ] && echo reload
  ;; 

    *)
  echo “Usage: $0 {start|stop|status|restart|reload|try-restar
t|probe}”
  exit 1
  ;;
esac 

# Set an exit status.
rc_exit

Tenha certeza de comentar as linhas seguintes para permitir que os usuários de ftp façam CHMOD:

[...]# Bar use of SITE CHMOD by default#<Limit SITE_CHMOD>         

#  DenyAll         

#</Limit>         

[...]

e reinicialize o Proftpd:

/etc/init.d/proftpd restart

13 Webalizer

Para instalar o webalizer, apenas execute

yast2 -i webalizer

14 Sincronize o Relógio do Sistema

Se você quiser ter o relógio so sistema sincronizado com um servidor NTP, faça o seguinte:

yast2 -i xntp

Então, adicionaremos os links de inicialização do sistema para o ntp e o inicializaremos:

chkconfig –add ntp
/etc/init.d/ntp start

15 Instale alguns módulos Perl necessários pelo SpamAssassin (vêm com o ISPConfig)

Execute

yast2 -i perl-HTML-Parser perl-Net-DNS perl-Digest-SHA1

16 Desabilite AppArmor

AppArmor é uma extensão de segurança do SUSE (similar ao SELinux do Fedora) que deveria fornecer segurança estendida. Na minha opinião, você não precisa dele para configurar um sistema e, em geral, ele causa mais problemas do que vantagens (pense nisto após fazer uma semana de troubleshooting porque algum serviçao não estava funcionando como desejado e, então, descobrir que tudo estava ok e somente o AppArmor estava causando o problema). Contudo, eu o desabilitei (isto é necessário se você quiser instalar o ISPConfig posteriormente).

Podemos desabilitá-lo da seguinte maneira:

/etc/init.d/boot.apparmor stop
chkconfig -d boot.apparmor

17 Final

Está terminada a configuração do servidor e, se você desejar, poderá instalar agora o ISPConfig nele, seguindo estas instruções: http://www.ispconfig.org/manual_installation.htm

17.1 Uma observação sobre o SuExec

Se você quiser executar CGI scripts sob o suExec, você deveria especificar /srv/www como o diretório raiz web para websites criados pelo ISPConfig já que o suExec do SUSE é compilado com /srv/www como Doc_Root. Execute

/usr/sbin/suexec2 -V

e a saída deverá se parecer com esta:

server1:~ # /usr/sbin/suexec2 -V
-D AP_DOC_ROOT=”/srv/www”
-D AP_GID_MIN=96
-D AP_HTTPD_USER=”wwwrun”
-D AP_LOG_EXEC=”/var/log/apache2/suexec.log”
-D AP_SAFE_PATH=”/usr/local/bin:/usr/bin:/bin”
-D AP_UID_MIN=96
-D AP_USERDIR_SUFFIX=”public_html”
server1:~ #

Então, se você quiser utilizar suExec com o ISPconfig, não altere a raiz web padrão (que é /srv/www) se você utiilza o modo expert durante a instalação do ISPConfig (em modo padrão você, não poderia alterar a raiz web de qualquer forma. Então, você poderia utilizar o suExec em qualquer situação).

18 Links

OpenSUSE: http://www.opensuse.org

ISPConfig: http://www.ispconfig.org



Confira aqui!


CPU Dual Core E2180 2GB 250GB DVDRW Linux Qbex + LCD 19" 931FW - AOC
R$ 1.299,00
12X sem juros de R$ 108,25 no cartão
Roteador Wireless Linksys WRT54G-LA 802.11g 54Mbps
R$ 199,00
12X sem juros de R$ 16,58 no cartão
Notebook Dual Core T2310 2GB 160GB Linux SempToshiba + Roteador
R$ 1.999,00
12X sem juros de R$ 166,58 no cartão