Configuración · 5 min read · Feb 12, 2026
La Configuración Perfecta - SUSE 9.2 - Página 6
Proftpd
Quiero usar Proftpd en lugar de vsftpd, que es el servidor FTP predeterminado de SUSE, porque el software del panel de control que voy a instalar en este servidor (ISPConfig) requiere Proftpd en SUSE 9.2 (en otras distribuciones esto es diferente). Dado que no hay paquetes de SUSE para Proftpd, tengo que compilarlo 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*
Ahora crea el archivo /etc/init.d/proftpd:
| #! /bin/sh # Copyright (c) 2000-2001 SuSE GmbH Nuernberg, Alemania. # Todos los derechos reservados. # # Autor original: Marius Tomaschewski <[email protected]> # # Ligeramente modificado en 2003 para su uso con SuSE Linux 8.1, # por http://www.learnlinux.co.uk/ # # Ligeramente modificado en 2005 para su uso con 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 el servidor ProFTPD ### END INIT INFO # Determina la base y sigue un nombre de enlace de nivel de ejecución. base=${0##*/} link=${base#*[SK][0-9][0-9]} # Fuerza la ejecución si no se llama desde un directorio de nivel de ejecución. test $link = $base && START_PROFTPD=yes # Modificado por learnlinux.co.uk test "$START_PROFTPD" = yes || exit 0 # Modificado por learnlinux.co.uk # Valores de retorno según LSB para todos los comandos pero # estado (ver abajo): # # 0 - éxito # 1 - error genérico o no especificado # 2 - argumento(s) inválido(s) o excesivo(s) # 3 - característica no implementada (por ejemplo, "recargar") # 4 - privilegio insuficiente # 5 - programa no está instalado # 6 - programa no está configurado # 7 - programa no está en ejecución 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 # Funciones de estado de origen . /etc/rc.status # Primero restablecer el estado de este servicio rc_reset case "$1" in start) echo -n "Iniciando el Servidor ProFTPD: " test -f /etc/shutmsg && rm -f /etc/shutmsg /sbin/startproc $proftpd_bin rc_status -v ;; stop) echo -n "Apagando el Servidor ProFTPD: " test -x /usr/local/sbin/ftpshut && /usr/local/sbin/ftpshut now && sleep 1 /sbin/killproc -TERM $proftpd_bin test -f /etc/shutmsg && rm -f /etc/shutmsg rc_status -v ;; restart) ## Si el primero devuelve OK llama al segundo, si el primero o ## segundo comando falla, establece el valor de retorno de eco. $0 stop $0 start rc_status ;; try-restart) ## Detener el servicio y si esto tiene éxito (es decir, el ## servicio estaba en ejecución antes), inícialo nuevamente. ## Nota: no (aún) parte de LSB (a partir de 0.7.5) $0 status >/dev/null && $0 restart rc_status ;; reload|force-reload) ## Posibilidad exclusiva: Algunos servicios deben ser detenidos ## y reiniciados para forzar una nueva carga de la configuración. echo -n "Recargando Servidor ProFTPD: " /sbin/killproc -HUP $proftpd_bin rc_status -v ;; status) # El estado tiene un ligero diferente para el comando de estado: # 0 - servicio en ejecución # 1 - servicio muerto, pero el archivo pid de /var/run/ existe # 2 - servicio muerto, pero el archivo de bloqueo de /var/lock/ existe # 3 - servicio no en ejecución echo -n "Verificando el Servidor ProFTPD: " checkproc $proftpd_bin rc_status -v ;; probe) ## Opcional: Sondear la necesidad de una recarga, ## dar el argumento que se requiere para una recarga. [ $proftpd_cfg -nt $proftpd_pid ] && echo reload ;; *) echo "Uso: $0 {start|stop|status|restart|reload|try-restart|probe}" exit 1 ;; esac # Establecer un estado de salida. rc_exit |
chmod 755 /etc/init.d/proftpd
chkconfig –add proftpd
/etc/init.d/proftpd start
Por razones de seguridad, también puedes agregar las siguientes líneas a /etc/proftpd.conf:
| DefaultRoot ~ IdentLookups off ServerIdent on "Servidor FTP listo." |
Asegúrate de comentar las siguientes líneas para permitir que los usuarios ftp hagan CHMOD:
| # Prohibir el uso de SITE CHMOD por defecto # |
y reiniciar Proftpd:
/etc/init.d/proftpd restart
Webalizer
Para instalar webalizer, simplemente ejecuta
apt-get install webalizer
Sincronizar el Reloj del Sistema
Si deseas tener el reloj del sistema sincronizado con un servidor NTP, haz lo siguiente:
apt-get install netdate
netdate tcp time.nist.gov
Crea /var/spool/cron/tabs/root:
| # actualizar hora con servidor ntp 0 3,9,15,21 * * * /usr/sbin/netdate time.nist.gov |
Luego ejecuta
chmod 600 /var/spool/cron/tabs/root
/etc/init.d/cron restart
Instalar algunos Módulos de Perl necesarios por SpamAssassin (viene con ISPConfig)
Instalación usando el Shell de Perl
Inicia sesión en tu línea de comandos como root y ejecuta el siguiente comando para iniciar el shell de Perl:
perl -MCPAN -e shell
Si ejecutas el shell de Perl por primera vez, se te harán algunas preguntas. En la mayoría de los casos, las respuestas predeterminadas están bien.
Ten en cuenta: Si ejecutas un firewall en tu sistema, es posible que debas desactivarlo mientras trabajas en el shell de Perl para que el shell de Perl pueda obtener los módulos necesarios sin un gran retraso. Puedes volver a activarlo después.
La gran ventaja del shell de Perl en comparación con los otros dos métodos descritos aquí es que se ocupa de las dependencias al instalar nuevos módulos. Es decir, si resulta que falta un módulo Perl previo cuando instalas otro módulo, el shell de Perl te pregunta si debe instalar el módulo previo por ti. Debes responder a esa pregunta con “Sí”.
Ejecuta los siguientes comandos para instalar los módulos necesarios por SpamAssassin:
install HTML::Parser
install Net::DNS (cuando se te pida habilitar pruebas, elige no)
install Digest::SHA1
install DB_File
q (para salir del shell de Perl)
Si un módulo ya está instalado en tu sistema, recibirás un mensaje similar a este:
HTML::Parser está actualizado.
La instalación exitosa de un módulo se ve así:
/usr/bin/make install – OK
El Fin
La configuración del servidor ahora está terminada, y si lo deseas, puedes instalar ISPConfig en él.
Una Nota Sobre SuExec
Si deseas ejecutar scripts CGI bajo suExec, debes especificar /srv/www/htdocs como el directorio home para los sitios web creados por ISPConfig, ya que el suExec de SUSE está compilado con /srv/www/htdocs como Doc_Root. Ejecuta /usr/sbin/suexec2 -V, y la salida debería verse así:
Para seleccionar /srv/www/htdocs como el directorio home para sitios web durante la instalación de ISPConfig, haz lo siguiente: Cuando se te pregunte por el modo de instalación, selecciona el modo experto.
Más tarde, durante la instalación, se te preguntará si el directorio predeterminado /home/www debería ser el directorio donde ISPConfig creará sitios web. Responde n e ingresa /srv/www/htdocs como el directorio home para sitios web.
Enlaces
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.