Como montar un Servidor Ubuntu Server COMPLETO, con ISPConfig 3 Parte 3
Parte 3
Continuando con la parte 3 de este tutorial, Instalamos el FTP
apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
nano /etc/default/pure-ftpd-common
Cambiar a STANDALONE_OR_INETD=standalone
Cambiar a VIRTUALCHROOT=true
Ahora, habilitamos TLS, y generamos su certificado SSL:
echo 1 > /etc/pure-ftpd/conf/TLS
mkdir -p /etc/ssl/private/
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
chmod 600 /etc/ssl/private/pure-ftpd.pem
/etc/init.d/pure-ftpd-mysql restart
Continuamos instalando BIND, y las web stats:
apt-get install bind9 dnsutils
apt-get install vlogger webalizer awstats
Editamos el archivo cron.d, y eliminamos awstats, ya que luego, ISPConfig 3, insertará sus propias lineas en el cron.d
nano /etc/cron.d/awstats
(hay que comentar las unicas 2 lineas del archivo, y tiene que quedar asi:)
#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh # Generate static reports: #10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh
Ahora, instalamos Jailkit, que sirve para que cada usuario SSH, no se pueda salir de su directorio /home propio.
apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./debian/rules binary
cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*
Instalamos y configuramos SquirreMail, para poder acceder a nuestros webmails:
apt-get install squirrelmail
ln -s /usr/share/squirrelmail/ /var/www/webmail
squirrelmail-configure
Aqui, sigue las instrucciones de este archivo, para contestar las preguntas del sistema y configurar el squirreMail.
Una vez configurado el cliente para el webmail, antes de probarlo, configuraremos un par de cosas para hacer que el email funcione sin amavis y clamd, que son sumamente pesados para VPS con bajos recursos.
nano /etc/postfix/main.cf
Comentamos las siguientes lineas:
content_filter = amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings
Tienen que quedar asi:
#content_filter = amavis:[127.0.0.1]:10024
#receive_override_options = no_address_mappings
nano /etc/postfix/master.cf
Comentamos todas las lineas debajo de amavis unix – – – – 2 smtp
Tiene que quedar asi:
#amavis unix – – – – 2 smtp
# -o smtp_data_done_timeout=1200
# -o smtp_send_xforward_command=yes
#127.0.0.1:10025 inet n – – – – smtpd
# -o content_filter=
# -o local_recipient_maps=
# -o relay_recipient_maps=
# -o smtpd_restriction_classes=
# -o smtpd_client_restrictions=
# -o smtpd_helo_restrictions=
# -o smtpd_sender_restrictions=
# -o smtpd_recipient_restrictions=permit_mynetworks,rej ect
# -o mynetworks=127.0.0.0/8
# -o strict_rfc821_envelopes=yes
# -o receive_override_options=no_unknown_recipient_chec ks,no_header_body_checks
# -o smtpd_bind_address=127.0.0.1
Y por ultimo reiniciamos postfix:
/etc/init.d/postfix restart
Bueno, hemos llegado al ultimo paso, instalar ISPConfig 3. Si todo ha salido bien, con ejecutar estas ultimas 5 lineas, nuestro servidor estará perfectamente configurado, y listo para alojar paginas web!
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
php -q install.php
Ahora, se ejecutara el instalador de ISPConfig3, hay que presionar enter para dejar los valores por defecto, menos cuando nos pida la clave para MySQL, ahi hay que escribirla, y luego presionar enter…
Y eso es todo!
Ya podemos acceder a nuestro hosting desde el navegador, mediante la IP de nuestro server, y al puerto 8080, http://xxx.xxx.xxx.xxx:8080 ahi, hay que loguearse con admin:admin
Bueno gente, espero que les haya servido este tutorial…
Acepto comentarios y criticas!
Saludos
Click Aqui para ver la Parte 1 | Click Aqui para ver la Parte 2
12 Comments
[…] Aqui para ver la Parte 2 | Click Aqui para ver la Parte 3 Comparte […]
[…] Aqui para ver la Parte 1 | Click Aqui para ver la Parte 3 Comparte […]
Muy buen tutorial amigo. Muhas Gracias!.
Una pregunta. Los usuarios los agrego con el panel del ISPConfig? el lo hace automático? la jaula de ese cliente todo?
No entiendo bien tu pregunta, pero tenes que tener en cuenta lo siguiente, están los usuarios de ISPConfig, que serían, tus clientes, a los que les asignas un User y Pass para acceder al ISPConfig, y despúes, por cada sitio web, (cuenta), podés asignar usuarios independientes para FTP, base de datos, SSH… a esos los tenes que crear desde el ISPConfig y lsito!
Ok entiendo, eso quiere decir que el usuario que agregue con el ISPConfig, tendrá automáticamente su cuenta ssh? y esa cuenta estará limitada? en el sentido de que no tenga acceso completo al sistema? lo que se llama shell enjaulada?. eso lo hace automático al agregar el cliente con el ISPConfig? o hay que hacer un paso mas para eso?
Gracias!.
No, lo que dije es todo lo contrario. Una cosa son los usuarios del ISPConfig, y otra cosa distinta son los username y password para los distintos servicios, ftp/ssh/mysql.
Los usuarios ssh que crees, si tienes bien instalado el jailkit, si,están enjaulados.
Perfecto Lordblacksuca. Gracias nuevamente. Ya tengo todo claro. Saludos!.
Lordblacksuca, me va de 10+ La shell la agrego por el mismo ISPConfig. Desde “Sitios”, y se configura a “Consola chroot = Jailkit”. Debe estar trabajando bien el Jailkit, para que funcione. Después de crear “Usuario de consola” Esperar un poco para que la active el Jailki, de 2 a 3 minutos.
Y lo demás, cuenta ftp, email.. Todo perfecto me funciono.
Ahora, tengo una pregunta con lo del Jailkit. Conoces algún método o hay que agregar unas lineas para que cuando se cree la cuenta para acceso shell jailkit instale librerías adicionales, y así no de problema a la hora de que un cliente compile alguna aplicación?
Lo que pasa es que me cree una cuenta, la cuenta esta enjaulada perfecto, pero me da problemas al querer compilar una aplicación :(…
A que te referis con librerias adicionales? paquetes? si es así, en la parte de configuracion del jailkit, POR CADA SITIO, hay unos texbox que contienen las aplicaciones que pueden ejecutar los usuarios, por ejemplo, por más que en el server esté instalado la app ZIP, si no agregas, ZIP en el textbox que te digo, el cliente por ssh no lo va a poder ejecutar.
Ejemplo, en la configuración del Jailkit en:
“Aplicaciones Jailkit chrooted”
Agregue:
“/usr/bin/gcc /usr/bin/make /usr/bin/expr”
Mas las lineas que ya estaban.
Mi pregunta es, en “Aplicaciones Jailkit chrooted” tienes alguna linea mas completa?… para que al compilar no de problemas…
En mi caso , agregando esas 3 lineas, y aun me da un problema:
checking for gcc… gcc
checking for C compiler default output file name…
configure: error: C compiler cannot create executables
See `config.log’ for more details.
Ah, ya veo tu problema, no, no tengo nada preparado para eso.
Vas a tener que verlo. Además el problema que tienes ahí es que el usuario de la shell no tiene permisos para escribir en el directorio donde estás compilando.
Simplemente muy buen articulo me gusto mucho!