Apache Listado personalizado

Apache Listado personalizado


Hay muchas forma de hacer Apache Listado personalizado personalizado , yo me he decantado por Webmin. No he encontrado mucha información y la traducción al castellano no tiene ningún sentido , así que recomiendo ponerlo en ingles al menos para configurar lo.

Apache Listado personalizado
Apache Listado personalizado

 

A nivel de configuración en el site de Apache que elijas sería así:

		Options Indexes MultiViews
		AuthName "Titulo para mostrar automaticamente"
		AuthType Basic
		AuthUserFile .htpasswd
		require valid-user
		AllowOverride None
		IndexOptions SuppressHTMLPreamble FoldersFirst
		IndexIgnore *oto*
		HeaderName "/header.shtml"
		ReadmeName "/footer.html"

		Order allow,deny
		allow from all

La parte de estilos , cabecera y pie son Apache Directory Listing

                IndexOptions SuppressHTMLPreamble FoldersFirst
		IndexIgnore *oto*
		HeaderName "/header.shtml"
		ReadmeName "/footer.html"

Notas:

El parametro ReadmeName hace referencia al Footer de la web y la traducción en el Webmin es tambien infumable.  No se como recordarlo para otras veces.

Respecto a lo demas , hay mil de opciones para ahbilitar , por ejemplo iconos personalizados imagenes de fondo y mucho CSS para que quede más bonito.

Fuentes:

Apache Doc IndexOptions
Apache Doc IndexIgnore
Apache Doc HeaderName
Apache Doc ReadmeName

directorio virtual y autenticación en Apache

directorio virtual

directorio virtual , estas palabras me hace recordado una etapa de mi vida con Apache , y que sea rápido porque esto es «para ayer». Estaba entretenido montado unos directorios virtuales y he recurrido a mis almacén de notas

Viejos Post:

  • Truco Apache
  • Apache2: directorio virtual

Bien ya tengo tengo un poco de seguridad , sin pasarse  ,  y los directorios. Todo fácil y sencillo en pequeñas unidades. Ahora toca unirlo todo.

Tras generar el directorio virtual con Webmin y ver que se  dejaba demasiados parámetros en el tintero  , atacamos a la directivas de forma manual.  La disyuntiva entraba cuando a retocar al configuración de la seguridad. Las configuraciones las podíamos hacer utilizando el típico de .htaccess o bajo la directiva de <Directory>.  Por versatilidad he utilizado .htaccess . A mi pareces es más fácil colocar el fichero en todos los directorios a proteger y estable un fichero de contraseñas fijo para todos.

Tal como esta indicado no funcionaría nunca , se ha de corregir la directiva :

AllowOverride none   por  AllowOverride AuthConfig

El resultado final:

Alias /prueba "ruta absoluta"
<Directory "ruta absoluta">
Options Indexes MultiViews
AllowOverride AuthConfig
Order allow,deny
Allow from all

 

Fuente: Authentication and Authorization

Optimizando el NFSv4

Dispositivos de bloques

Primero debemos parametrizar el fstab del servidor , aquí se montan por primera vez los dispositivos en el sistema.

Originariamente tenía:

UUID=5      /media/Ext4     ext4    user,rw    0       2

Y ahora tengo

UUID=5       /media/Ext4     ext4    user,rw,noatime,data=journal    0       2

data=journal tiene efectos positivos para ficheros que se leen y se escriben a la vez

Nota:

As quoted in the IBM doc «The results were astounding. data=journal mode allowed the 16-meg-file to be read from 9 to over 13 times faster than other ext3 modes, ReiserFS, and even ext2 (which has no journaling overhead): … repeated this test, but tried to read a 16Mb file from the test filesystem (rather than a different filesystem), and he got identical results. So, what does this mean? Somehow, ext3’s data=journal mode is incredibly well-suited to situations where data needs to be read from and written to disk at the same time. Therefore, ext3’s data=journal mode, which was assumed to be the slowest of all ext3 modes in nearly all conditions, actually turns out to have a major performance advantage in busy environments where interactive IO performance needs to be maximized.»

 Ahora los exports son montajes que debemos de retocar

/exports/Caso1   *(sync,insecure,no_subtree_check,rw,nohide,no_wdelay)

Se ha añadido el parámetro no_wdelay y escritura síncrona con sync

Servidor NFS

Ahora toca el servidor NFS , vamos a aumentar el numero de hilos que pueden escribir.

/etc/default/nfs-kernel-server

RPCNFSDCOUNT=128

Configurar el TCP/IP

/etc/sysctl.conf

net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65535 16777216
net.core.netdev_max_backlog = 30000

FUENTES:

DreamSpark

Este es el programa de Microsoft para las universidades. Te da la posibilidad de tener software con licencia , son muy listos y sistemas operativos de escritorio no están dentro del programa.

La verdad es que me ha gustado mucho la idea ya que mis maquinas virtuales con Windows 2008 R2 y SQL Server 2008 Express edition están perfectamente licenciados. Para los desarrolladores hay muchas más herramientas , que ni entiendo los nombres , así que echarle un ojo

El pequeño de la casa se actualiza

Después de meses por casa y otros tanto dando servicio , el equipo estaba maduro y tocaba una actualización. Empecé el proceso de mejora continua , el primer paso el hardware y el segundo el software.

La memoria RAM se me antoja costa si quiero virtualizar , así que se marco como prioridad. La compatibilidad es reducida por el modelo de memoria que lleva (ECC) , así que localicé un módulo de 4 GB y me tiré a la piscina.  Por limitaciones de la infraestructura solo puede llevar 8 GB de RAM el equipo así por esta vía no se va a vitaminar más. Como siempre he tardo media hora en sacar el dichoso cable

Por lo demás con las herramientas que vienen con el equipo se desmonta en un par de minutos.

La segunda parte corresponde al software y en especial al sistema operativo. Aunque soy de los que habilitan la instalación de actualizaciones automáticas el cambio de versión requiere un espacio en disco que no tenía. Actualmente sigue corriendo el sistema operativo en el  mismo pincho USB de 4GB TDK y para el proceso hace falta 1,6 GB de espacio y libre , se antojaba difícil «inventar  espacio «. La solución pasa por un cambio de soporte , con un pincho más grandes todo solucionado  , pero una instalación limpia es mucho trabajo  , ya la tengo configurada y no me apetece mucho repetir el proceso. La idea vino a mi mente , utilizar la  copia binaria del USB TDK. Perfecto , con un dd tengo una imagen binaria del disco:

sudo dd  if=/dev/sdb of=tdk.img

Preparamos el futuro soporte , un pincho de 32 GB que me regalaron en navidad ,

 

Pincho de 32GB
Pincho de 32GB

eliminamos las particiones y volcamos el fichero imagen con otro dd

sudo dd if=tdk.img of=/dev/sdb

Parece que esta todo  , pero «una aldea de irreductibles galos sobreviven al invasor» y nosotros tenemos una partición de 4 GB en un pincho de 32GB  , lo veo como que desaprovechado  e inútil. Editamos las particiones y la hago crecer hasta los 18GB. Ya tenemos espacio de sobra , podemos iniciar el servidor con el nuevo soporte para el SO y verificar si reconoce el espacio nuevo. Con el sistema de archivos correcto  , la actualización esperemos que se realice correctamente.

 

El resultado final:

Webmin Proliant
Webmin Proliant

Fuente :

Linuxcomandos.blogspot.com.es

Preparando los recursos

Lo primero es lo primero, manos a la obra con fstab . Los parámetros utilizados son simples no backup y si a verificar los disco (0,1). Lo discos duros son accesibles

NFSv4 server

Con los dispositivos montados en el sistema de ficheros , al método tradicional. Configuraremos el NFS y los recurso a exportar mediante el fichero export , nfs-kernel-server y nfs-commons. En este caso el NFSv4 requiere para su funcionamiento un pseudo filesystem donde estén montados los recurso a compartir.

 mount --bin origen destino

Nota:

Este es el sistema que vamos a exportar

mkdir -p /exports/caso1
mkdir -p /exports/caso2

Vamos a cargar de contenido nuestro pseudo filesystem , montado directorios reales en el.

mount --bind /media/aux1  /exports/caso1
mount --bind /media/aux2  /exports/caso2

En /etc/default/nfs-kernel-serverwe configuramos esto:

NEED_SVCGSSD=no # no is default

En /etc/default/nfs-commonwe configuramos esto:

NEED_IDMAPD=yes
NEED_GSSD=no # no is default

Especificaremos las partes en las que queramos dividir nuestro sistema de ficheros a compartir.Marcamos un export grande , pero identificamos las diferentes partes en las que lo queremos dividir. Cada una con su segmento de red o equipo con permisos.

 /exports               *(rw,sync,fsid=0,insecure,no_subtree_check)
 /exports/caso1  *(rw,sync,nohide,insecure,no_subtree_check)
 /exports/caso2  *(rw,sync,nohide,insecure,no_subtree_check)

Especial son el caso delos elementos menores ya que se les atribuye el parámetro nohide. Ahora podremos decidir que recurso montamos.

Como crear el pseudo filesystem de NFS es un trabajo que queremos automatizar , utilizaremos el fstab para ello.

/media/aux1    /export/caso1   none    bind  0  0
/media/aux2    /export/caso2   none    bind  0  0

 

NFS cliente

Ahora toca montar en el equipo cliente los recursos del NFS , un simple mount nos da acceso para realizar las pruebas

user@host:~$ sudo mount 172.1.1.21:/media/aux1 /media/caso1
mount: tipo fs incorrecto, opción incorrecta, superbloque incorrecto en 172.1.1.21:/media/caso1,
falta página de código o programa ayudante, u otro error
(para varios sistemas de archivos (ej. nfs, cifs) tal vez
necesite un /sbin/mount.<type> programa de ayuda)
En algunos casos se encuentra información en syslog, pruebe
dmesg | tail   o algo parecido

La primera en la frente , con este error tenemos que instalar nfs-common

sudo apt-get install nfs-common

Ahora ya podemos volver a intentar cargar y realizar la pruebas de permisos. Como estamos con NFSv4 no hay que especificar exports , de esta manera tendremos el directorio raíz con un solo montaje.

sudo mount -t nfs4 -o proto=tcp,port=2049 172.1.1.21:/ /media/server

Si todo es correcto debemos de fijar estos cambios como permanentes. Al inicio del sistema se monten los recursos NFS , para ello utilizaremos el fstab

172.1.1.21:/   /media/server   nfs4    rw,auto,user,sync,exec,proto=tcp,port=2049  0  0


Fuente:
NFSv4Howto
Fstab
Wikipedia

Mi server casero + USB

Ya está enchufado y colocadito. Necesita de un sistema operativo acorde con las necesidades de servidor de fichero , impresión y web. Como todo el mundo tiene fallos he elegido Ubuntu Server , me han llamado de todo por no poner un CentOS o Red-Hat o Debian. Pero bueno es lo que hay y ta esta decidido.

El pequeño tiene un usb interno y le he calzado un pincho de 4 GB. Aqui tengo el sistema raiz , sin swap. El objetivo es evitar el uso de los disco duro , así los dejo destinados a almacenamiento. Con la tarjeta de red de Giga y una reda bien cableada tengo  4 TB para trabajar sin perdidas de rendimiento por acceso del sistema operativo. También me he librado de hacer particiones y mover varios gigas.

 

 

En la instalación aplicamos las tareas de :

  • Samba File Server
  • Print Server
  • OpenSSH Server
  • LAMP Server

HP MicroServer Proliant

Ya tengo mi nuevo servidor , una pequeña caja con 4 HDD slot y un procesador de bajo consumo. Algo más pequeño que un  mini-ATXHP Proliant MicroServer

Con este formato lo que tenemos entre manos , según HP , un servidor de fichero para no mas de 30 conexiones. Eso si con sistema Red-Hat o Windows Foundation.

Un inciso sobre este escabroso tema de los sistemas operativos , hoy estaba escuchado el podcast de dabo , forat y mas gente , cuando el comentario «estoy orgulloso de formar parte de la minoría , linux en el escritorio.»

Ahora toca prepara una Ubuntu Server con lo mínimo , para dar el máximo rendimiento.

La idea es tener :

  • Samba
  • Apacha
  • MySQL

Ahora tengo un AMD Neo x2 40L  con 4GB de RAM y 4TB. Está claro que la máquina es perfecta. Como detalle son 50w de consumo asi que no va tener una afectación muy alta en el recibo de la luz.

Empezamos a montar una tarjeta gráfica para reproducir h264 vía GPU.

Actualización:

Elegí una gráfica silent de Nvidia y el radiador es tan grande que no la he podido montar.Hay muy poco espacio así que debe de ser super fina.

Una bonita puerta con su llave nos da acceso al interior

 

HP Proliant MicroServer

Estos tornillos se retiran con la llave propia de HP que viene dentro

HP Proliant MicroServer

A la izquierda de la imagen se puede ver. Digamos que yo no lo vi

HP Proliant MicroServer

Este es el resultado  , mi MacMini actualizado y el Proliant , juntos pero no revueltos

HP Proliant MicroServer

Bocazas un hosting en casa

Diós mio en la que me he metido con esta idea. Un hosting casero tiene muchas variables que te da cualquier servicio y tiene un coste de tiempo de implantación elevado , y ya no pienso en la curva de aprendizaje.

Nadie te cuenta que un servidor de correo es necesario para cualquier forma de interacción con servidor. Típicas alertas de cualquier software como antivirus , monitorización , aplicaciones web o el propio sistema operativo.

Tras dejar el sistema operativo con las aplicaciones básicas , una arquitectura LAMP , te das cuenta de la de tareas que no se comentan su existencia. Damos a entender que con cuatro cosas tenemos un servicio montado , cuando no es así. He buscado guías por internet para esta necesidad y realmente omiten muchos detalles importantes. Un lanza a favor de la red es el blog de Vicente Navarro , titulado «Lo hice y lo entendí»   un ejemplo de contenido de calidad , completo y perfectamente estructurado. En este caso me refiero a Hosting Casero HOWTO. Con esto podemos articular mejor el coste de trabajo para un no iniciado en estas lindes.

Mencionar a un compañero empresario Serincas , es mi hosting y siempre me ayuda en cosas de servidores.

Tip: ESXi 4 (maquians a 64Bits)

Para habilitar el poder utilizar maquinas virtuales de 64 bits es un VMware ESX/ESXi  es necesario habilitar la tecnología propia de virtualización del procesador. En este caso un Inter Xeon se llama «Intel-VT technology»  y se habilita en BIOS

Nota: Para poder utilizar EVC (Enhanced VMotion Compability), la BIOS debe tener  «No-execute memory» habilitada.

Yo he realizado estos pasos desde la iLO

Acceder a la BIOS con la tecla F9
Opciones Avanzadas -> Processor Options -> Intel ® Virtualization Technology
Elegir «Habilitar»
Ya que estamos  podemos dejar ‘No-Execute Memory Protection’  para tener VMware EVC
Save and exit

Nota : Si tiene sun cluster , todos los nodos deben de tener la misma configuración de BIOS .