<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>tail -f &#124; sysadmin &#187; Directadmin</title>
	<atom:link href="http://www.tail-f.com.ar/category/paneles-de-control/directadmin/feed" rel="self" type="application/rss+xml" />
	<link>http://www.tail-f.com.ar</link>
	<description>Noticias y recursos para sysadmins Unix</description>
	<lastBuildDate>Mon, 28 Nov 2011 21:44:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Recalcular quota en Directadmin</title>
		<link>http://www.tail-f.com.ar/paneles-de-control/directadmin/recalcular-quota-en-directadmin.html</link>
		<comments>http://www.tail-f.com.ar/paneles-de-control/directadmin/recalcular-quota-en-directadmin.html#comments</comments>
		<pubDate>Mon, 16 Aug 2010 16:19:17 +0000</pubDate>
		<dc:creator>elbarto</dc:creator>
				<category><![CDATA[Directadmin]]></category>
		<category><![CDATA[quota]]></category>
		<category><![CDATA[tally]]></category>

		<guid isPermaLink="false">http://www.tail-f.com.ar/?p=406</guid>
		<description><![CDATA[Directadmin utiliza el sistema de quotas del sistema operativo para calcular el espacio que está siendo utilizado por cada usuario. A veces, por diversas circunstancias, puede ser que necesitemos recalcular estos datos. Particularmente, en estos días tuvimos un problema con el acceso a un dispositivo que generó problemas en la ejecución del comando repquota y [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.tail-f.com.ar/category/paneles-de-control/directadmin"><a href="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif"><img class="size-full wp-image-22 alignright" title="DirectAdmin" src="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif" alt="" width="281" height="162" /></a></p>
<p>Directadmin</a> utiliza el sistema de quotas del sistema operativo para calcular el espacio que está siendo utilizado por cada usuario. A veces, por diversas circunstancias, puede ser que necesitemos recalcular estos datos. Particularmente, en estos días tuvimos un problema con el acceso a un dispositivo que generó problemas en la ejecución del comando repquota y cuando solucioné el problema, tuve que recalcular la quota de todos los usuarios del sistema. Me pareció que sería útil explicar cómo hacerlo, porque si bien es algo que está explicado en la <a href="http://help.directadmin.com/item.php?id=42">Knowledge Base de Directadmin</a>, allí está en inglés.</p>
<p>Para que el sistema recalcule las quotas, es decir, analice todo el filesystem verificando el uso del disco y cree, confirme o repare los archivos de quotas, necesitamos correr el comando quotacheck. Para ello necesitamos deshabilitar las quotas, chequear y volver a habilitarlas.</p>
<pre># /sbin/quotaoff -a
# /sbin/quotacheck -avugm
# /sbin/quotaon -a
</pre>
<p>Esto tomará algunos minutos (particularmente el proceso quotacheck). Luego de lo cual podemos esperar que Directadmin corra el tally y recalcule los valores para cada usuario, o podemos indicarle explícitamente que lo haga en este momento. Para ello debemos agregar la tarea del tally a la cola:</p>
<pre># echo "action=tally&amp;value=all" &gt;&gt; /usr/local/directadmin/data/task.queue
</pre>
<p>El tally se ejecutará cuando corra el proceso dataskq de Directadmin (que se ejecuta cada minuto). Podemos ver los logs de este proceso en /var/log/directadmin/system.log.</p>
<p>Pero si somos demasiado impacientes o queremos ver información de debug, podemos correr explícitamente el dataskq.</p>
<pre># /usr/local/directadmin/dataskq d10
</pre>
<p>Listo. Una vez que Directadmin re-procese todos los usuarios, los datos de consumo de disco de cada uno se habrá sincronizado con la información actual del sistema.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tail-f.com.ar/paneles-de-control/directadmin/recalcular-quota-en-directadmin.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Actualizar software con Custombuild para Directadmin</title>
		<link>http://www.tail-f.com.ar/paneles-de-control/directadmin/actualizar-software-con-custombuild-para-directadmin.html</link>
		<comments>http://www.tail-f.com.ar/paneles-de-control/directadmin/actualizar-software-con-custombuild-para-directadmin.html#comments</comments>
		<pubDate>Sun, 07 Mar 2010 13:41:03 +0000</pubDate>
		<dc:creator>elbarto</dc:creator>
				<category><![CDATA[Directadmin]]></category>
		<category><![CDATA[actualizaciones]]></category>
		<category><![CDATA[custombuild]]></category>

		<guid isPermaLink="false">http://www.tail-f.com.ar/?p=334</guid>
		<description><![CDATA[En esta pequeña guía veremos cómo actualizar muy sencillamente el software de nuestro servidor Directadmin usando Custombuild. Ya en otro artículo habíamos visto lo sencillo que era instalar software con Custombuild. En esta oportunidad, veremos que es igual de sencillo utilizarlo para mantener nuestro software actualizado. Lo primero que debemos hacer es un update para [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif"><img class="size-full wp-image-22 alignright" title="DirectAdmin" src="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif" alt="" /></a></p>
<p>En esta pequeña guía veremos cómo actualizar muy sencillamente el software de nuestro servidor <a href="http://www.tail-f.com.ar/tag/directadmin">Directadmin</a> usando Custombuild. Ya en otro artículo habíamos visto lo sencillo que era instalar software con <a href="http://www.tail-f.com.ar/2008/11/22/paneles-de-control/directadmin/custombuild-en-directadmin.html">Custombuild</a>. En esta oportunidad, veremos que es igual de sencillo utilizarlo para mantener nuestro software actualizado.</p>
<p>Lo primero que debemos hacer es un update para descargar las nuevas versiones de las aplicaciones:</p>
<pre># cd /usr/local/directadmin/custombuild
# ./build update</pre>
<p>Ahora que tenemos actualizado el propio custombuild, verificadas las versiones locales del software y descargadas las actualizaciones, podemos ver qué podemos actualizar.</p>
<pre># ./build versions</pre>
<p>Esto nos va a mostrar por cada uno de los programas y librerías que maneja Custombuild, qué versión tenemos instalada y si hay una nueva para instalar. En base a esta lista, lo que podemos hacer es instalar la actualización para un programa/librería en particular, o actualizar todo.</p>
<p>Por ejemplo, si queremos actualizar solamente Apache, usaremos:</p>
<pre># ./build httpd</pre>
<p>En cambio, si queremos actualizar todo, ejecutaremos:</p>
<pre># ./build update_versions</pre>
<p><strong>El Cron</strong></p>
<p>Custombuild permite instalar un cronjob para manejar las actualizaciones. Tiene dos funcionalidades: avisarnos por mail cuando hay actualizaciones y actualizar automáticamente el software. Esto se configura en el archivo options.conf de Custombuild.</p>
<pre>#Cron settings
cron=yes
email=nuestroemail@dominio.com
notifications=yes
updates=no</pre>
<p>La variable &#8220;cron&#8221; habilita/deshabilita el cronjob. Si lo queremos instalar tiene que estar en &#8220;yes&#8221;. La variable &#8220;email&#8221; es la dirección donde recibiremos las notificaciones. Luego &#8220;notifications&#8221; habilita/deshabilita las notificaciones por email y &#8220;updates&#8221; habilita/deshabilita la actualización automática.</p>
<p>Personalmente, recomiendo <strong>no</strong> activar las actualizaciones automáticas, pues puede generar problemas inesperados en momentos en que no podemos resolverlos. Es preferible hacerlas manualmente cuando lo consideremos adecuado. Por otro lado, el cron se ocupa de actualizar automáticamente las aplicaciones web (los webmails), lo cual no suele traer problemas.</p>
<p>Para instalar el cron debemos configurar las opciones mencionadas en el options.conf (indicando cron=yes) y luego ejecutar:</p>
<pre># ./build cron</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.tail-f.com.ar/paneles-de-control/directadmin/actualizar-software-con-custombuild-para-directadmin.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Python-Directadmin: API para conectarse a Directadmin desde Python</title>
		<link>http://www.tail-f.com.ar/paneles-de-control/directadmin/python-directadmin-api-para-conectarse-a-directadmin-desde-python.html</link>
		<comments>http://www.tail-f.com.ar/paneles-de-control/directadmin/python-directadmin-api-para-conectarse-a-directadmin-desde-python.html#comments</comments>
		<pubDate>Sun, 14 Feb 2010 21:47:26 +0000</pubDate>
		<dc:creator>elbarto</dc:creator>
				<category><![CDATA[Directadmin]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[HTTP]]></category>

		<guid isPermaLink="false">http://www.tail-f.com.ar/?p=302</guid>
		<description><![CDATA[En esta entrada presento la librería python-directadmin: una implementación en Python de la API de Directadmin.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif"><img class="size-full wp-image-22 alignright" title="DirectAdmin" src="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif" alt="" /></a></p>
<p>Este post viene un poco postergado. Hace algún tiempo que empecé con un pequeño proyecto y tenía pensado escribir una entrada en el blog para presentarlo, pero por distintos compromisos no he podido hacerlo hasta ahora, así que aquí va.</p>
<p>Para los que no lo sepan, <a href="http://www.directadmin.com/">Directadmin</a> tiene una <a href="http://www.directadmin.com/api.html">API</a> para realizar distintas operaciones en el panel de control desde otra aplicación. La API no es más que una serie de URLs que reciben información por HTTP POST, ejecutan una acción y devuelven un resultado. De esa forma se pude acceder a muchas de las operaciones que uno realiza manualmente a través del panel (salvo algunas que parecen no estar muy bien implementadas/probadas).</p>
<p>En el <a href="http://www.directadmin.com/forum">foro de Directadmin</a> existe una <a href="http://www.directadmin.com/forum/showthread.php?t=258">clase hecha en PHP</a> a la que se le da bastante crédito, que lo que hace es abrir un socket y enviar requests HTTP a un servidor Directadmin y devolver la respuesta. Personalmente me parece que la clase es bastante mala y pobre, por las siguientes razones:</p>
<ul>
<li>Está pensada para PHP 4.</li>
<li>No utiliza cURL, con lo cual hay demasiado código para hacer tareas que ya están implementadas en otras librerías.</li>
<li>Tiene un manejo de errores muy pobre</li>
<li>No es una implementación de la API de Directadmin (no implementa comandos específicos), sino que, como su nombre lo indica, se limita a crear un socket a un puerto HTTP y enviar requests (nuevamente&#8230; cURL).</li>
<li>El código no sigue ningún estándar de formato y &#8220;mejores prácticas&#8221;.</li>
</ul>
<p>A pesar de todos estos problemas, tampoco me parecía un aporte muy interesante reescribir esa clase utilizando cURL. Además no tenía ganas de programar en PHP. Por lo tanto, lo que hice fue crear una implementación de la API en Python. Es decir, una librería que se ocupe de conectarse a un servidor Directadmin, enviar comandos, procesar sus respuestas y ofrecer una interfaz de programación cómoda para el desarrollador. De paso, el proyecto me sirvió para aprender un poco más de Python que es un lenguaje que me gusta mucho.</p>
<p>El resultado fue este proyecto que alojé en Google Code: <a href="http://code.google.com/p/python-directadmin/">http://code.google.com/p/python-directadmin/</a></p>
<p>El código es bastante sencillo (e incluso un poco tosco). Si ven el <a href="http://code.google.com/p/python-directadmin/source/browse/trunk/directadmin.py">código del módulo directadmin</a>, van a ver que hay una serie de clases. La más importante es la clase Api, que implementa los distintos métodos de la API de Directadmin (salvo algunos que no implementé aún). Esa clase hace uso de ApiConnector que es una clase muy sencilla que resume en unas pocas líneas lo que hacía la clase de PHP, utilizando <a href="http://docs.python.org/library/urllib2.html">urllib2</a>. Luego hay un par de clases más para representar los tipos de usuarios, que no revisten mayor interés.</p>
<p><strong>Posibles implementaciones</strong></p>
<p>Cuando publiqué mi contribución en el foro de Directadmin obtuve una respuesta bastante poco amistosa de un usuario que no le veía utilidad a mi aporte. Más allá de esa persona, que afirma no conocer a nadie que programe en Python (sin comentarios&#8230;), yo creo que hay al menos tres vías de implementación de esta librería:</p>
<ul>
<li>La más básica: crear scripts de consola para automatizar tareas (ver ejemplos más adelante).</li>
<li>Desarrollo web: así como el principal objetivo de la clase en PHP era que las empresas de hosting pudieran integrar sus sitios institucionales con el panel de control, esta implementación en Python permite el mismo tipo de integración para sitios desarrollados en Python (por ejemplo usando frameworks como Django, web2py, TurboGears, Pylons, etc.).</li>
<li>Aplicaciones de escritorio: no hay ni punto de comparación entre el soporte que ofrece Python para aplicaciones de escritorio con el que ofrece PHP. Hoy por hoy, un porcentaje muy alto de las aplicaciones de escritorio para Linux se escriben en Python y librerías como PyQt permiten hacer software desktop para Linux, Windows y Mac. Una aplicación de escritorio para monitorear y administrar múltiples servidores Directadmin se podría hacer sencillamente utilizando esta librería.</li>
</ul>
<p><strong>Ejemplos</strong></p>
<p>Utilizar la API es bastante sencillo. En la página del proyecto podrán ver algunos ejemplos básicos como éste, para listar todos los usuarios del panel.</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw1">import</span> directadmin</p>
<p>api = directadmin.<span class="me1">Api</span><span class="br0">&#40;</span><span class="st0">&quot;admin&quot;</span>, <span class="st0">&quot;password&quot;</span>, <span class="st0">&quot;hostname.com&quot;</span>, <span class="nu0">2222</span><span class="br0">&#41;</span><br />
<span class="kw1">print</span> api.<span class="me1">list_all_users</span><span class="br0">&#40;</span><span class="br0">&#41;</span></div>
<p>Además en el paquete incluí un archivo de ejemplo que se llama <a href="http://code.google.com/p/python-directadmin/source/browse/trunk/suspension.py">suspension.py</a>. Este script utiliza la API para suspender/desuspender usuarios desde la consola. Se utiliza de la siguiente forma:</p>
<pre>./suspension.py suspend</pre>
<p>Tiene algunas otras opciones para especifiar host, puerto, usuario y password para conectarse Directadmin. Para ver las opciones disponibles pueden poner:</p>
<pre>./suspension.py --help</pre>
<p><strong>Pendientes</strong></p>
<p>Aún quedan varias cosas pendientes por hacer. Hay algunos métodos que no he implementado aún. Hay otros que los he probado y no funcionan, pero porque obtengo errores de parte de Directadmin y todavía nadie me ha sabido contestar por qué. También me gustaría crear un script de instalación con <a href="http://pypi.python.org/pypi/setuptools">setuptools</a>, pero todavía debo interiorizarme un poco más en el tema. Por último, me gustaría también hacer una implementación de más alto nivel, pues ahora la clase Api es una especie de bolsa de funciones que no me convence del todo.</p>
<p><strong>Links</strong></p>
<ul>
<li><a href="http://code.google.com/p/python-directadmin/">Página del proyecto</a></li>
<li><a href="http://code.google.com/p/python-directadmin/downloads/list">Descargar python-directadmin</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.tail-f.com.ar/paneles-de-control/directadmin/python-directadmin-api-para-conectarse-a-directadmin-desde-python.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Instalar ConfigServer Security &amp; Firewall en Linux con Directadmin</title>
		<link>http://www.tail-f.com.ar/paneles-de-control/directadmin/instalar-configserver-security-firewall-en-linux-con-directadmin.html</link>
		<comments>http://www.tail-f.com.ar/paneles-de-control/directadmin/instalar-configserver-security-firewall-en-linux-con-directadmin.html#comments</comments>
		<pubDate>Tue, 29 Dec 2009 13:59:10 +0000</pubDate>
		<dc:creator>elbarto</dc:creator>
				<category><![CDATA[Directadmin]]></category>
		<category><![CDATA[seguridad]]></category>
		<category><![CDATA[ConfigServer]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[iptables]]></category>

		<guid isPermaLink="false">http://www.tail-f.com.ar/?p=297</guid>
		<description><![CDATA[En esta sencilla guía vamos a ver cómo instalar ConfigServer Security &#38; Firewall (CSF), un paquete de aplicaciones para Linux que incluye in firewall ampliamente configurable y herramientas para análisis de logs y detección de intrusiones. Además se integra como plugin a Directadmin, y chequea distintos items de la configuración del servidor para darnos ideas sobre [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_298" class="wp-caption alignright" style="width: 310px"><a href="http://www.tail-f.com.ar/wp-content/uploads/csf_large.png"><img class="size-medium wp-image-298" title="csf_large" src="http://www.tail-f.com.ar/wp-content/uploads/csf_large-300x120.png" alt="" width="300" height="120" /></a><p class="wp-caption-text">ConfigServer Security &amp; Firewall</p></div>
<p>En esta sencilla guía vamos a ver cómo instalar <a href="http://www.configserver.com/cp/csf.html">ConfigServer Security &amp; Firewall</a> (CSF), un paquete de aplicaciones para Linux que incluye in firewall ampliamente configurable y herramientas para análisis de logs y detección de intrusiones. Además se integra como plugin a <a href="http://www.tail-f.com.ar/category/paneles-de-control/directadmin">Directadmin</a>, y chequea distintos items de la configuración del servidor para darnos ideas sobre cuestiones a mejorar.</p>
<p>La instalación es muy sencilla.</p>
<pre>cd /usr/src
wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh</pre>
<p>Cuando lo probé yo me dio un error indicando que necesitaba el módulo LWP de Perl, el cual instalé con CPAN.</p>
<pre>cpan -i LWP</pre>
<p>Por último, es importante correr las pruebas que vienen incluidas para ver si tenemos todos los módulos de iptables necesarios. Aquí lo importante es que no dé FATAL ERRORS.</p>
<pre>perl /etc/csf/csftest.pl</pre>
<p>Eso es todo. Ahora ingresamos como admin a Directadmin, y en la sección de plugins encontraremos a ConfigServer. Allí podemos cambiar la configuración del firewall. Una vez terminado de configurar, cuando estamos seguros que todo funciona, debemos deshabilitar el testing mode. Este último lo que hace es limpiar el iptables regularmente, por si nos equivocamos, para no quedarnos sin acceder al servidor. También desde aquí podemos pedirle a ConfigServer que ejecute sus pruebas para ver la seguridad del servidor, y nos indique qué puntos nos quedan asegurar.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tail-f.com.ar/paneles-de-control/directadmin/instalar-configserver-security-firewall-en-linux-con-directadmin.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Instalar extensiones de FrontPage en Directadmin</title>
		<link>http://www.tail-f.com.ar/paneles-de-control/directadmin/instalar-extensiones-de-frontpage-en-directadmin.html</link>
		<comments>http://www.tail-f.com.ar/paneles-de-control/directadmin/instalar-extensiones-de-frontpage-en-directadmin.html#comments</comments>
		<pubDate>Mon, 24 Nov 2008 16:43:50 +0000</pubDate>
		<dc:creator>elbarto</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Directadmin]]></category>
		<category><![CDATA[customapache]]></category>
		<category><![CDATA[frontpage extensions]]></category>

		<guid isPermaLink="false">http://www.tail-f.com.ar/?p=62</guid>
		<description><![CDATA[Me da cierta vergüenza tener que publicar este artículo por las tecnologías de las que voy a hablar: FrontPage y Apache 1.3. Pero entenderán que son cosas que aún se usan y cada tanto nos vemos obligados a lidiar con ellas. Las extensiones de FrontPage son básicamente una serie de scripts que corren del lado [...]]]></description>
			<content:encoded><![CDATA[<p>Me da cierta vergüenza tener que publicar este artículo por las tecnologías de las que voy a hablar: FrontPage y Apache 1.3. Pero entenderán que son cosas que aún se usan y cada tanto nos vemos obligados a lidiar con ellas.</p>
<p>Las <a href="http://office.microsoft.com/en-us/frontpage/HP011032361033.aspx">extensiones de FrontPage</a> son básicamente una serie de scripts que corren del lado del servidor y que, como su nombre lo indica, extienden la funcionalidad del FrontPage. A pesar de ser un producto de Microsoft, es compatible con Apache.</p>
<p>El tema es que, al menos en Directadmin, solamente es compatible con Apache 1.3. Según entiendo, las extensiones en sí se pueden instalar con Apache 2.x, pero el Directadmin solamente las soporta cuando se usa la versión 1.3.</p>
<p>Ahora bien, esta instalación no vamos a poder realizarla con <a href="http://www.tail-f.com.ar/2008/11/22/paneles-de-control/directadmin/custombuild-en-directadmin.html">Custombuild</a>, sino que tenemos que recurrir al más antiguo <a href="http://directadmin.com/forum/showthread.php?t=104&amp;highlight=install+customapache">CustomApache</a>. Entonces los pasos serían los siguientes:</p>
<p>Descargar e instalar CustomApache:</p>
<pre>
cd /usr/local/directadmin
mkdir customapache
cd customapache
wget http://files.directadmin.com/services/customapache/build
chmod 755 build
./build update
</pre>
<p>Lo más sencillo ahora sería ejecutar build all, que va a instalar el Apache y las extensiones:</p>
<pre>
./build all
</pre>
<p>Si por alguna razón no se quiere compilar e instalar todo, se puede compilar Apache con:</p>
<pre>
./build apache_mod_ssl
</pre>
<p>Y luego habría que instalar las extensiones:</p>
<pre>
./build mod_frontpage
</pre>
<p>Por último, y esto es muy importante, hace falta habilitar las extensiones para que Directadmin muestre el correspondiente menú. Para ello es necesario editar el archivo /usr/local/directadmin/conf/directadmin.conf y poner el parámetro frontpage_on en 1.</p>
<pre>
frontpage_on=1
</pre>
<p>Luego se reinicia el servicio del Directadmin y listo:</p>
<pre>
service directadmin restart
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.tail-f.com.ar/paneles-de-control/directadmin/instalar-extensiones-de-frontpage-en-directadmin.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Custombuild en Directadmin</title>
		<link>http://www.tail-f.com.ar/paneles-de-control/directadmin/custombuild-en-directadmin.html</link>
		<comments>http://www.tail-f.com.ar/paneles-de-control/directadmin/custombuild-en-directadmin.html#comments</comments>
		<pubDate>Sun, 23 Nov 2008 00:09:46 +0000</pubDate>
		<dc:creator>elbarto</dc:creator>
				<category><![CDATA[Directadmin]]></category>
		<category><![CDATA[custombuild]]></category>
		<category><![CDATA[gestión de paquetes]]></category>
		<category><![CDATA[servicios]]></category>

		<guid isPermaLink="false">http://www.tail-f.com.ar/?p=16</guid>
		<description><![CDATA[Custombuild es un script muy completo e interesante que se distribuye con el panel de control Directadmin para instalar y actualizar los distintos servicios que el panel puede administrar. ¿Por qué usar custombuild? Básicamente porque es la forma de instalar los distintos servicios de manera que el Directadmin pueda gestionarlos. Esto incluye, fundamentalmente, el hecho [...]]]></description>
			<content:encoded><![CDATA[<p>Custombuild es un script muy completo e interesante que se distribuye con el panel de control <a href="http://www.directadmin.com/">Directadmin</a> para instalar y actualizar los distintos servicios que el panel puede administrar.</p>
<div id="attachment_22" class="wp-caption alignright" style="width: 291px"><a href="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif"><img class="size-medium wp-image-22" title="direct_admin" src="http://www.tail-f.com.ar/wp-content/uploads/direct_admin.gif" alt="Directadmin Control Panel" width="281" height="162" /></a><p class="wp-caption-text">Directadmin Control Panel</p></div>
<p><strong>¿Por qué usar custombuild?</strong></p>
<p>Básicamente porque es la forma de instalar los distintos servicios de manera que el Directadmin pueda gestionarlos. Esto incluye, fundamentalmente, el hecho de generar archivos de configuración iniciales y ubicarlos en las localizaciones adecuadas, para que el panel pueda administrar virtual hosts de Apache, cuentas de email, etc. Además custombuild permite mantener una configuración estándar en distintos servidores que usen Directadmin, lo cual simplifica el trabajo al momento de acceder a un nuevo equipo y tener que hacer alguna tarea de diagnóstico, upgrade o instalación. Por último, el script simplifica muchísimo el trabajo para el sysadmin, porque si bien no es un sistema completo de manejo de paquetes (como podría ser apt-get en Debian, los ports de FreeBSD, o el odioso yum de Red Hat/CentOS), sí resuelve algunas dependencias, encargandose de descargar y compilar las distintas librerías que va a requerir la aplicación para poder ser instalada.</p>
<p><strong>¿Qué permite instalar/actualizar Custombuild?</strong></p>
<ul>
<li>Apache 1.3, 2.0 or 2.2</li>
<li>AWstats</li>
<li>Autoconf</li>
<li>Automake</li>
<li>cURL</li>
<li>Dovecot</li>
<li>Archivos de configuración de Exim</li>
<li>FreeType</li>
<li>GD</li>
<li>libiconv</li>
<li>libjpeg</li>
<li>libpng</li>
<li>libmcrypt</li>
<li>libmhash</li>
<li>mod_perl</li>
<li>MySQL</li>
<li>PHP (con o sin suPHP) 4, 5 or 6</li>
<li>ProFTPD</li>
<li>Webalizer</li>
<li>Zend Optimizer</li>
<li>Zlib</li>
</ul>
<p>Y aplicaciones web como:</p>
<ul>
<li>Atmail Open webmail</li>
<li>Roundcube webmail</li>
<li>Squirrelmail webmail</li>
<li>phpMyAdmin</li>
<li>UebiMiau webmail</li>
</ul>
<p><strong>¿Cómo instalar Custombuild?</strong></p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 98px; text-align: left;" dir="ltr">cd /usr/local/directadmin
wget http://files.directadmin.com/services/custombuild/1.1/custombuild.tar.gz
tar xvzf custombuild.tar.gz
cd custombuild
./build</pre>
<p><strong>options.conf</strong></p>
<p>El Custombuild funciona con un archivo de configuración llamado options.conf. Este archivo define algunos parámetros básicos para el funcionamiento del script, indicando qué versiones se va a instalar de cada programa, etc.</p>
<p>Después de editar el archivo options.conf, siempre es necesario correr el siguiente comando para actualizar las dependencias.</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 34px; text-align: left;" dir="ltr">./build update_data</pre>
<p>Por otro lado, la primera vez que se utiliza Custombuild es conveniente correr el siguiente comando, que descargará e instalará TODO con las opciones por default.</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 34px; text-align: left;" dir="ltr">./build all d</pre>
<p><strong>¿Qué es cada opción del options.conf?</strong></p>
<p>PHP:</p>
<ul>
<li><strong>default_php</strong> &#8211; Esta opción se utiliza cuando hay dos versiones de PHP en el sistema (4, 5, ó 6), para definir cual es la default. Por defecto este valor es igual a la última versión de PHP.</li>
<li><strong>php<span style="color: red;">X</span>_cli</strong> &#8211; instalar/actualizar PHP como CLI (opción default) al hacer &#8220;./build php&#8221; or&#8221;./build all&#8221;. Valores posibles yes/no (default: yes).</li>
<li><strong>php<span style="color: red;">X</span>_cgi</strong> &#8211; instalar/actualizar PHP como CGI (opción default) al hacer &#8220;./build php&#8221; or&#8221;./build all&#8221;. Valores posibles yes/no (default: no).</li>
<li><strong>php_ini </strong>- actualizar el archivo de configuración de PHP al hacer &#8220;./build php-ini&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
<li><strong>php_ini_type </strong>- Esta opción define el tipo de php.ini a utilizar al momento de ejecutar &#8220;./build php-ini&#8221;. Valores posibles: dist/recommended (default: recommended).</li>
<li><strong>zend </strong>- Instalar/actualizar Zend Optimizer al usar &#8220;./build zend&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
</ul>
<p>MySQL:</p>
<ul>
<li><strong>mysql </strong>- Versión de MySQL. Valores posibles: 4.1, 5.0, 5.1 (default: 5.0).</li>
<li><strong>mysql_inst</strong> &#8211; instalar/actualizar MySQL al utilizar &#8220;./build mysql&#8221; or &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
<li><strong>mysql_backup </strong>- hacer backup de MySQL cada vez que se actualiza MySQL. Valores posibles: yes/no (default: yes).</li>
</ul>
<p>Apache:</p>
<ul>
<li><strong>apache_ver </strong>- Versión de Apache. Valores posibles: 1.3, 2.0, 2.2 (default: 2.2).</li>
</ul>
<p>Aplicaciones web:</p>
<ul>
<li><strong>phpmyadmin</strong> &#8211; instalar/actualizar phpMyAdmin al hacer &#8220;./build phpmyadmin&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: yes).</li>
<li><strong>atmail</strong> &#8211; instalar/actualizar Atmail Open webmail al hacer &#8220;./build atmail&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
<li><strong>squirrelmail </strong>- instalar/actualizar SquirrelMail webmail al hacer &#8220;./build squirrelmail&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: yes).</li>
<li><strong>roundcube</strong> &#8211; instalar/actualizar RoundCube webmail al hacer &#8220;./build roundcube&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: yes).</li>
<li><strong>uebimiau </strong>- instalar/actualizar UebiMiau webmail al hacer &#8220;./build uebimiau&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
</ul>
<p>Mail:</p>
<ul>
<li><strong>exim</strong> &#8211; instalar/actualizar Exim al hacer &#8220;./build exim&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
<li><strong>mail-header-patch</strong> &#8211; usar el patch del header de la función mail() de PHP al instalar/actualizar Valores posibles: yes/no (default: yes).</li>
<li><strong>dovecot </strong>- instalar/actualizar Dovecot al hacer &#8220;./build dovecot&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: yes).</li>
<li><strong>eximconf</strong> &#8211; actualizar el archivo de configuración de exim (/etc/exim.conf) al hacer &#8220;./build exim_conf&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
</ul>
<p>Jailed shell:</p>
<ul>
<li><strong>jail </strong>- instalar/actualizar programas de jailed shell al hacer &#8220;./build apache&#8221;, &#8220;./build all_jail&#8221;. Valores posibles: yes/no (default: no).</li>
</ul>
<p>FTP:</p>
<ul>
<li><strong>proftpd </strong>- instalar/actualizar ProFTPD al hacer &#8220;./build proftpd&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: yes).</li>
</ul>
<p>Estadísticas:</p>
<ul>
<li><strong>awstats </strong>- instalar/actualizar AWstats al hacer &#8220;./build awstats&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: no).</li>
<li><strong>webalizer </strong>- instalar/actualizar webalizer al hacer &#8220;./build webalizer&#8221; o &#8220;./build all&#8221;. Valores posibles: yes/no (default: yes).</li>
</ul>
<p>Crontab:</p>
<ul>
<li><strong>cron </strong>- habilitar crontad para Custombuild, al usar &#8220;./build cron&#8221; para configurarlo. Valores posibles: yes/no (default: no).</li>
<li><strong>email </strong>- definir notificaciones por email. Valores posibles: cualquier dirección de email (default: <a href="mailto:email@domain.com">email@domain.com</a>).</li>
<li><strong>notifications </strong>- habilitar notificaciones por email para actualizaciones. Valores posibles: yes/no (default: yes).</li>
<li><strong>updates &#8211; </strong>actualizar software/applicaciones automáticamente cuando hay actualizaciones disponibles. Valores posibles: yes/no (default: no).</li>
</ul>
<p>CustomBuild:</p>
<ul>
<li><strong>custombuild </strong>- version del script CustomBuild que se quiere utilizar. Valores posibles: 1.1/1.2 (default: la versión instalada).</li>
<li><strong>autover &#8211; </strong>descargar versions.txt cada vez que se ejecuta el comando &#8220;./build&#8221;.  Valores posibles: yes/no (default: no).</li>
<li><strong>bold </strong>- habilitar/deshabilitar texto en negrita. Valores posibles: yes/no (default: yes).</li>
<li><strong>clean</strong> &#8211; ejecutar &#8220;./build clean&#8221; cada vez. Valores posibles: yes/no (default: yes).</li>
<li><strong>cleanapache</strong> &#8211; excluir al apache del &#8220;./build clean&#8221;. Valores posibles: yes/no (default: no).</li>
<li><strong>clean_old_webapps </strong>- ejecutar &#8220;./build clean_old_webapps&#8221; cada vez. Valores posibles: yes/no (default: no).</li>
<li><strong>fileserver</strong> &#8211; definir el servidor desde el cual descargar los archivos. &#8220;1&#8243; significa files.directadmin.com y &#8220;2&#8243; significa files4.directadmin.com server (Europa). Valores posibles: 1/2 (default: 1).</li>
</ul>
<p><strong>¿Cómo ejecutar Custombuild?</strong></p>
<p>Para instalar todo:</p>
<pre>
./build all
</pre>
<p>Otras opciones:</p>
<pre>
./build apache
./build autoconf
./build automake
./build curl
./build cron
./build dovecot
./build exim_conf
./build freetype
./build iconv
./build icu
./build libjpeg
./build libpng
./build libtool
./build libxml2
./build libxslt
./build mcrypt
./build mhash
./build mod_perl
./build mysql
./build pcre
./build php
./build proftpd
./build rewrite_confs
./build update_versions
./build used_configs
./build versions
./build webalizer
./build zend
./build zlib
</pre>
<p>Aplicaciones:</p>
<pre>
./build phpmyadmin
./build atmail
./build roundcube
./build squirrelmail
./build uebimiau
</pre>
<p>Jailed shell:</p>
<pre>
./build all_jail
./build coreutils
./build shell
./build smtp_mail
./jail/jail_user.sh user
</pre>
<p>Borrar información vieja:</p>
<pre>
./build clean
</pre>
<p>Obtener la última versión del script y de la información:</p>
<pre>
./build update
./build update_script
</pre>
<p>Obtener la información para el script actual:</p>
<pre>
./build update_data
</pre>
<p>Funciones recomendadas sólo para usuarios experimentados:</p>
<pre>
./build php4-cli
./build php5-cli
./build php4-cgi
./build php5-cgi
./build todovecot
</pre>
<p>Se puede pasar un segundo argumento a los comandos:</p>
<pre>
./build &lt;option&gt; d : ejecutar la acción default
./build &lt;option&gt; y : responder "yes" a todas las preguntas
./build &lt;option&gt; n : responder "no" a todas las preguntas
</pre>
<p>Fuente: <a href="http://directadmin.com/forum/showthread.php?t=19221">Directadmin Custombuild FAQ</a>.</p>
<p>Traducción propia.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tail-f.com.ar/paneles-de-control/directadmin/custombuild-en-directadmin.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

