Mostrando entradas con la etiqueta CentOS. Mostrar todas las entradas
Mostrando entradas con la etiqueta CentOS. Mostrar todas las entradas

lunes, 14 de octubre de 2013

RHEL / CentOS - Instalar Ajenti



Ajenti es un panel web de código abierto basado en el sistema de gestión de control de la gestión de las tareas de administración de sistema remoto desde el navegador web muy similar al módulo de Webmin. Ajenti es una herramienta muy potente y ligero, que proporciona una interfaz web rápido y sensible para la gestión de servidores pequeños montajes y también la más apropiada para VPS y servidores dedicados. Se ha construido con muchos plugins pre-hechos para la configuración y software de monitoreo y de servicios como Apache, Cron, sistema de archivos, Firewall, MySQL, Nginx, Munin, Samba, FTP, calamar y muchas otras herramientas como el Administrador de archivos, editor de código para el servidor desarrolladores y acceso a la terminal.

Lo primero es instalar el repositorio EPEL

$ sudo yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Luego, instalamos el repositorio

$ sudo yum install http://repo.ajenti.org/ajenti-repo-1.0-1.noarch.rpm

Después de tener el repositorio, podemos instalar Ajenti

$ sudo yum install ajenti

Ahora, debemos permitir el puerto 8000 a través de IPTables, para eso, debemos hacer lo siguiente:

$sudo iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
$ sudo iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
$ sudo service iptables restart

Reiniciamos el servicio

$ sudo service ajenti restart

Finalmente, ingresamos a la ip o hostname e indicamos en el puerto 8000

https://<ip>:8000/

Aquí nos pedirá el usuario y contraseña, el cual es:

User: root
Pass: admin

Una vez ingresadas las credenciales, nos enviará al Dashboard de Ajenti


Ahora nos queda sólo explorar Ajenti.

lunes, 18 de febrero de 2013

Cambiar zona horaria en RedHat/CentOS 6.x


Para cambiar la zona horaria, lo primero que debemos hacer es editar el siguiente fichero:

# nano /etc/sysconfig/clock

Nos encontraremos con algo parecido a:

ZONE="America/New_York"
UTC=True

Lo que debemos hacer es cambiar la ZONE por la que nosotros necesitemos, para saber las disponibles, simplemente:

# ls -l /usr/share/zoneinfo

Una vez sabido lo modificamos. Ya modificado, debemos hacer un enlace simbólico, por ejemplo, aquí haremos un enlace simbólico de Buenos Aires al localtime.

# ln -sf /usr/share/zoneinfo/America/Buenos_Aires /etc/localtime

Echo esto, comprobamos que la hora esté correcta con el comando date.

# date
Thu Nov  8 10:26:25 ART 2012

domingo, 11 de noviembre de 2012

Habilitar User/Group para cada VirtualHost

Para realizar esto, debemos utilizar mpm-itk, el cual lo podemos instalar desde los repositorios
# yum install httpd-itk
Una vez hecho esto,  editamos a nuestro VirtualHost, por ejemplo: mivh
# nano /etc/httpd/conf.d/mivh
Ahora, dentro del bloque <VirtualHost *:80></VirtualHost > debemos agregar lo siguiente:
<IfModule mpm_itk_module>   AssignUserId <UserName> <GroupName></IfModule>

*No olvidar agregar el Include correspondiente en /etc/httpd/conf/httpd.conf*

Ahora debemos editar:
# nano /etc/sysconfig/httpd
Y agregar la siguiente línea:
HTTPD=/usr/sbin/httpd.itk
Esto puede generar un conflicto con php, para esto debemos editar:
# nano /etc/httpd/conf.d/php.conf
Y modificar esto:
<IfModule prefork.c>   LoadModule php5_module modules/libphp5.so</IfModule>
Por:
LoadModule php5_module modules/libphp5.so
Luego debemos reiniciar Apache
# sudo service httpd restart
Y listo, debiese cargar el usuario definido, cabe considerar que el dueño de la carpeta a trabajar, debe ser el mismo que especificamos con la variable AssignUserID, lo podemos hacer de la siguiente forma:
# chown UserName:GroupName /path/to/webroot

viernes, 14 de septiembre de 2012

Instalar CentOS desde una imagen netinstall


Este es una breve guía de como instalar CentOS desde una imagen netinstall que pesan 13mb aprox. Para realizar esto, simplemente necesitamos una imagen de CentOS y una conexión a internet.

El paso de descargar la imagen me lo saltaré, por lo que explicare todo lo demás. Bueno, ya montado del cd/dvd/usb en el equipo, veremos la siguiente imagen


Aquí podemos elegir entre una instalación gráfica o una instalación por texto, podemos elegir la que más nos acomode, una vez elegida la instalación, tendremos que elegir el idioma.


Luego de esto elegimos la distribución del teclado




Ahora tenemos que elegir el método de instalación, en este caso elegiremos HTTP


Ahora debemos elegir la interfaz de red que ocuparemos para la conexión


Ahora aparecerá la configuración para IPv4 e IPv6, simplemente dejemoslo por default



Aquí nos aparecerán 2 campos por rellenar


Donde nombre de sitio debemos escribir: 
  • mirror.centos.org
En directorio CentOS tenemos varias opciones por ejemplo podemos:
  • /centos/5/os/i386
  • /centos/5.8/os/i386
  • /centos/5/os/x86_64
  • /centos/5.8/os/x86_64
  • /centos/6/os/i386
  • /centos/6.2/os/i386
  • /centos/6/os/x86_64
  • /centos/6.2/os/x86_64
Aquí empezará a cargar todo, y una vez descargado nos mostrará la instalación como normalmente lo conocemos:



miércoles, 27 de junio de 2012

Debian / CentOS / RHEL - Instalación y configuración del FTP VSFTP

Quizás el protocolo FTP sea uno de los más utilizados, a pesar de que no sea el más seguro. En primer lugar, debemos saber que es FTP.

“FTP (File Transfer Protocol) o Protocolo de Transferencia de Archivos (o archivos informáticos) es uno de los protocolos estándar más utilizados en Internet siendo el más idóneo para la transferencia de grandes bloques de datos a través de redes que soporten TCP/IP. El servicio utiliza los puertos 20, y 21, exclusivamente sobre TCP. El puerto 20 es utilizado para el flujo de datos entre cliente, y servidor. El puerto 21 es utilizando para el envío de órdenes del cliente hacia el servidor.”

Fuente: http://www.alcancelibre.org

Ahora que tenemos un poco más claro, que es FTP, debemos saber de lo que estamos hablando, es decir, saber que es VSFTP

“Vsftpd (Very Secure FTP Daemon) es un equipamiento lógico utilizado para implementar servidores de archivos a través del protocolo FTP. Se distingue principalmente porque sus valores predeterminados son muy seguros, y por su sencillez en la configuración, comparado con otras alternativas como ProFTPD, y Wu-ftpd. Actualmente se presume que vsftpd podría ser quizá el servidor FTP más seguro del mundo.”

Fuente http://www.alcancelibre.org/


Estando más claro conceptualmente, debemos pasar a la parte práctica, y obviamente lo primero que debemos hacer es instalar VSFTP, para lo cual: Debian:
$ sudo aptitude install vsftp
CentOS:
$ sudo yum install vsftp
Con VSFTP instalado, y como medio de seguridad, respaldaremos la configuración por defecto, para tener un respaldo en caso de que cometamos algún error. Debian:
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak 
CentOS:
$ sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
El fichero de configuración trae varias líneas ya configuradas, para trabajar de una manera más limpia, lo que haremos será vaciar el fichero. Debian:
$ sudo cat /dev/null > /etc/vsftpd.conf
CentOS:
$ sudo cat /dev/null > /etc/vsftpd/vsftpd.conf
Teniendo listo el fichero, comenzaremos a trabajar en él, aquí podemos utilizar nuestro editor de texto preferido (nano, vi, vim, etc), en mi caso, utilizaré nano. Debian:
$ sudo nano /etc/vsftpd.conf
CentOS:
$ sudo nano /etc/vsftpd/vsftpd.conf
Aquí debemos realizar la configuración, la cual es la siguiente: Debian:
anonymous_enable=YES #Permite usuarios anónimos (YES/NO)
write_enable=YES
use_localtime=YES #Hora local en vez de GTM (YES/NO)
dirmessage_enable=YES #Mensaje de directorio (YES/NO)
xferlog_enable=YES #Generación de log en /var/log/xferlog (YES/NO)
ftpd_banner=Bienvenido
pam_service_name=vsftpd #Nombre del servicio PAM
local_enable=YES #Conexión de usuarios del sistema (YES/NO)
chroot_local_user=YES
chroot_list_enable=YES #Los usuarios no pueden ver otros directorios (Enjaular)
chroot_list_file=/etc/vsftpd.chroot_list #Indica ubicación del fichero vsftpd.chroot_list
#Permitir modo pasivo
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30300
pasv_address=XX.XX.XX.XX #ip que resuelve
Centos:
listen=YES #Trabajar en modo independiente (YES/NO)
anonymous_enable=YES #Permite usuarios anónimos (YES/NO)
write_enable=YES
use_localtime=YES #Hora local en vez de GTM (YES/NO)
dirmessage_enable=YES #Mensaje de directorio (YES/NO)
xferlog_enable=YES #Generación de log en /var/log/xferlog (YES/NO)
ftpd_banner=Bienvenido
pam_service_name=vsftpd #Nombre del servicio PAM
local_enable=YES #Conexión de usuarios del sistema (YES/NO)
chroot_local_user=YES
chroot_list_enable=YES #Los usuarios no pueden ver otros directorios (Enjaular)
chroot_list_file=/etc/vsftpd/chroot_list #Indica ubicación del fichero chroot_list
#Permitir modo pasivo
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30300
pasv_address=XX.XX.XX.XX #ip que resuelve
Si tenemos iptables activados, debemos permitir el puerto 20 y 21, u otro puerto si es que queremos
# iptables -I INPUT 5 -p tcp -m tcp --dport 20 -j ACCEPT
# iptables -I INPUT 5 -p tcp -m tcp --dport 21 -j ACCEPT
# iptables -I INPUT 5 -p tcp -m tcp --dport 30000:30300 -j ACCEPT
# service iptables save
# service iptables restart
En el caso de CentOS / RHEL tenemos SELinux, y si no lo hemos desactivado, debemos permitir todo lo necesario para trabajar con FTP, esto lo trabajamos como boolan, es decir: 0 = no permitir 1 = si permitir Lo básico que debemos agregar es lo siguiente:
$ sudo setsebool -P ftp_home_dir 1
Aquí hay una lista de lo que podemos o no permitir


Booleans
Description
ftp_home_dir
Allows FTP to read and write files in the users’ home directories.
allow_ftpd_full_access
Allows FTP servers to log in to local users and read/write all files on the system, governed by DAC.
allow_ftpd_use_nfs
Allows FTP servers to use NFS for public file transfer services.
allow_ftpd_anon_write
Allows FTP servers to upload files used for public file transfer services. Directories must be labeled public_content_rw_t.
ftpd_connect_db
Allows FTP servers to connect to the MySQL database.
allow_ftpd_use_cifs
Allows FTP servers to use CIFS for public file transfer services.
httpd_enable_ftp_server
Allows httpd to act as an FTP server by listening on the FTP port.



Respecto a los usuarios para lograr la conexión, en este ejemplo estamos utilizando los usuarios del sistema, y estos deben ser añadidos en: Debian
/etc/vsftpd.chroot_list
CentOS / RHEL
/etc/vsftpd/chroot_list
Y dentro de este, escribimos el usuario línea a línea, por ejemplo
usuario1
usuario2
usuario3
Además, estos usuarios deben pertenecer al grupo ftp del sistema, para lograr eso debemos:
# gpasswd -a  ftp
Una buena recomendación es que se programe para que el servicio vsftpd inicie con el sistema.
# chkconfig vsftpd on
Finalmente, hacemos una conexión FTP, puede ser a través del comando ftp, o de un cliente como filezilla u otro.