<?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>Linux Hispano &#187; servidor</title> <atom:link href="http://www.linuxhispano.net/etiqueta/servidor/feed/" rel="self" type="application/rss+xml" /><link>http://www.linuxhispano.net</link> <description>Noticias, tira, podcast, juegos, Linux y software libre</description> <lastBuildDate>Fri, 10 Feb 2012 14:00:58 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Instalar y configurar servidor TFTP en Ubuntu</title><link>http://www.linuxhispano.net/2012/02/09/instalar-y-configurar-servidor-tftp-en-ubuntu/</link> <comments>http://www.linuxhispano.net/2012/02/09/instalar-y-configurar-servidor-tftp-en-ubuntu/#comments</comments> <pubDate>Thu, 09 Feb 2012 11:00:47 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[comunicación]]></category> <category><![CDATA[instalar]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[tftp]]></category> <category><![CDATA[ubuntu]]></category> <category><![CDATA[xinetd]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=9051</guid> <description><![CDATA[Es muy frecuente que los equipos de comunicaciones como los controladores WiFi, los switches de cierto nivel o los cortafuegos, soporten protocolo TFTP (no confundir con FTP) para poder subir configuraciones o hacer respaldos. Puesto que no es tan frecuente &#8230; <a
href="http://www.linuxhispano.net/2012/02/09/instalar-y-configurar-servidor-tftp-en-ubuntu/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Es muy frecuente que los equipos de comunicaciones como los controladores WiFi, los switches de cierto nivel o los cortafuegos, soporten protocolo <a
target="_blank" href="http://es.wikipedia.org/wiki/TFTP" target="_blank">TFTP</a> (no confundir con <a
target="_blank" href="http://es.wikipedia.org/wiki/File_Transfer_Protocol" target="_blank">FTP</a>) para poder subir configuraciones o hacer respaldos. Puesto que no es tan frecuente el uso de este FTP Trivial como se llama, os  traigo un manual de cómo poner a punto un servidor TFTP en tu equipo con Linux (más concretamente he usado para las pruebas Ubuntu 11.10).</p><p><span
style="color: #000000;"><strong>Instalación de los paquetes</strong></span></p><p>Para administrar el servicio usaremos <a
target="_blank" href="http://es.wikipedia.org/wiki/Xinetd" target="_blank">xinetd</a>, así que además de los paquetes propios de TFTP instalaremos a este (atentos al -y que asume que sí a todas las peticiones y no pregunta):</p><pre>sudo apt-get install xinetd tftpd tftp -y</pre><p><strong>Configuración</strong></p><p>Una vez instalado, creamos el fichero <em>tftp</em> dentro de <em>/etc/xinetd.d/</em>. Por ejemplo:</p><p><span
id="more-9051"></span></p><pre>sudo vi /etc/xinetd.d/</pre><p>Dentro del fichero indicamos:</p><pre>service tftp
{
   protocol = udp
   port = 69
   socket_type = dgram
   wait = yes
   user = nobody
   server = /usr/sbin/in.tftpd
   server_args = var/lib/tftpboot -s
   disable = no
}</pre><p>Como podéis ver, estamos estableciendo un directorio raíz para el servidor, en concreto, <em>/var/lib/tftpboot</em> por lo que deberemos crearlo y darle los permisos, usuarios y grupos oportunos:</p><pre>sudo mkdir /var/lib/tftpboot
sudo chown -R nobody:nobody /var/lib/tftpboot
sudo chmo7 -R 777 /var/lib/tftpboot</pre><p>Si os da error de grupo no existente, lo creamos:</p><pre>sudo addgroup nobody</pre><p>Reinicamos <em>xinetd</em> para que los cambios surtan efecto:</p><pre>sudo service xinetd stop
sudo service xinetd start</pre><p><strong>Pruebas</strong></p><p>Pasamos a la parte de las pruebas. Primero intentamos subir un fichero a nuestro servidor. La idea es la siguiente:</p><ul><li>Tenemos un fichero: foto.jpg en nuestro escritorio</li><li>La subo al servidor</li><li>Debe aparecer la foto en el directorio que hemos creado</li></ul><p>Los pasos a dar son los siguientes. Comenzamos por iniciar sesión con el cliente de consola en el servidor, paso seguido subimos el fichero y salimos:</p><pre>tftp localhost
tftp&gt; put foto.jpg
q</pre><p>La idea es comprobar que el fichero se ha subido al directorio oportuno. Ahora para completar la prueba hacemos el proceso inverso:</p><pre>cd cualquier_otro_directorio
tftp localhost
tftp&gt; get foto.jpg</pre><p>La foto debe estar en ese otro directorio.</p><p><strong>Posibles problemas</strong></p><p>Os comento algunos problemas que pueden apareceros:</p><ul><li>Error code 2: Access violation</li><li>File not found</li></ul><p>A priori con el tema de los permisos no deberían salir, pero si aún así, si tenéis problemas, vía comentarios de esta entrada podemos ir resolviéndolos.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2012/02/09/instalar-y-configurar-servidor-tftp-en-ubuntu/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Enviar correo usando un servidor SMTP con PHP</title><link>http://www.linuxhispano.net/2012/02/02/enviar-correo-usando-un-servidor-smtp-con-php/</link> <comments>http://www.linuxhispano.net/2012/02/02/enviar-correo-usando-un-servidor-smtp-con-php/#comments</comments> <pubDate>Thu, 02 Feb 2012 11:09:48 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[correo]]></category> <category><![CDATA[php]]></category> <category><![CDATA[programación]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[smtp]]></category> <category><![CDATA[spam]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=8829</guid> <description><![CDATA[Dentro de las funcionalidades básicas de cualquier aplicación web se encuentra la comunicación con el usuario a través de correo electrónico. Tenemos la opción fácil y directa de usar la función mail() de PHP que usa un demonio de SMTP propio &#8230; <a
href="http://www.linuxhispano.net/2012/02/02/enviar-correo-usando-un-servidor-smtp-con-php/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Dentro de las funcionalidades básicas de cualquier aplicación web se encuentra la comunicación con el usuario a través de correo electrónico. Tenemos la opción fácil y directa de usar la función <a
target="_blank" href="http://php.net/manual/es/function.mail.php" target="_blank">mail()</a> de <a
target="_blank" href="http://www.linuxhispano.net/etiqueta/php/" target="_blank">PHP</a> que usa un demonio de <a
href="http://www.linuxhispano.net/?s=smtp" target="_blank">SMTP</a> propio (suele ser <a
href="http://www.sendmail.com/sm/open_source/" target="_blank">sendmail</a>), sin embargo, los filtros de spam harán su labor y aunque seamos confiables, tenemos todas las papeletas para que nos tachen de los contrario y el correo no llegará a su destino.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2012/02/Mail.png"><img
class="aligncenter size-full wp-image-8987" title="Mail" src="http://www.linuxhispano.net/wp-content/uploads/2012/02/Mail.png" alt="Enviar correo usando servidor SMTP con PHP" width="256" height="256" /></a></p><p>La solución es usar un servidor SMTP externo, aquí mismo explicamos <a
href="http://www.linuxhispano.net/2011/03/02/suscribir-comentarios-en-wordpress-usando-gmail/" target="_blank">cómo hacer uso del servidor SMTP de Gmail para usarlo dentro de WordPress</a>, pero vamos a explicaros un método válido para cualquier aplicación que desarrolléis con PHP.</p><p>Lo primero que tenemos que hacer es descargar la clase que se encargará del trabajo, es software libre bajo licencia GPL, hablamos del proyecto <a
target="_blank" href="http://sourceforge.net/projects/phpmailer/" target="_blank">PHPMailer</a>. Descargamos la última versión disponible para nuestra versión de PHP (aquí hablaremos de la versión más actual, la que corresponde con PHP 5) y descomprimimos.</p><p><span
id="more-8829"></span></p><p>La clase tiene otras funcionalidades, pero nosotros como sólo vamos a enviar correo, usaremos el código de los ficheros:</p><ul><li>class.phpmailer.php</li><li>class.smtp.php</li></ul><p>El procedimiento es el siguiente: incluimos los ficheros en cuestión, instanciamos un objeto, asignamos sus atributos (asunto, remitente, destinatario, cuerpo del mensaje) y finalmente ejecutamos un método que lo envía.</p><p>Veamos un ejemplo completo:</p><pre>require(‘class.phpmailer.php’);
require(‘class.smtp.php’);
$mail = new PHPMailer();
$body = “Cuerpo del mensaje”;
$mail-&gt;IsSMTP();
// la dirección del servidor, p. ej.: smtp.servidor.com
$mail-&gt;Host = “direccion_servidor”;
// dirección remitente, p. ej.: no-responder@miempresa.com
$mail-&gt;From = “Dirección_remitente”;
// nombre remitente, p. ej.: "Servicio de envío automático"
$mail-&gt;FromName = “Nombre_remitente”;
// asunto y cuerpo alternativo del mensaje
$mail-&gt;Subject = “Asunto”;
$mail-&gt;AltBody = “Cuerpo alternativo
    para cuando el visor no puede leer HTML en el cuerpo”;
// si el cuerpo del mensaje es HTML
$mail-&gt;MsgHTML($body);
// podemos hacer varios AddAdress
$mail-&gt;AddAddress(“dirección_destino”, “Nombre_destino”);
// si el SMTP necesita autenticación
$mail-&gt;SMTPAuth = true;
// credenciales usuario
$mail-&gt;Username = “Usuario”;
$mail-&gt;Password = “Contraseña”;
if(!$mail-&gt;Send()) {
echo “Error enviando: ” . $mail-&gt;ErrorInfo;
} else {
echo “¡¡Enviado!!”;
}</pre>]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2012/02/02/enviar-correo-usando-un-servidor-smtp-con-php/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Diferencias entre un servicio de alojamiento con Linux y otro con Windows</title><link>http://www.linuxhispano.net/2012/01/02/diferencias-entre-un-servicio-de-alojamiento-con-linux-y-otro-con-windows/</link> <comments>http://www.linuxhispano.net/2012/01/02/diferencias-entre-un-servicio-de-alojamiento-con-linux-y-otro-con-windows/#comments</comments> <pubDate>Mon, 02 Jan 2012 18:28:45 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Noticias]]></category> <category><![CDATA[.net]]></category> <category><![CDATA[asp]]></category> <category><![CDATA[hosting]]></category> <category><![CDATA[iis]]></category> <category><![CDATA[linux+]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[php]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[windows]]></category> <category><![CDATA[windows server]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=8758</guid> <description><![CDATA[En muchas ocasiones cuando contratamos un plan de hosting, no nos fijamos en uno de los detalles más importantes, el sistema operativo sobre el que va a estar ejecutando el servidor que nos provea de alojamiento web y otras muchas &#8230; <a
href="http://www.linuxhispano.net/2012/01/02/diferencias-entre-un-servicio-de-alojamiento-con-linux-y-otro-con-windows/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>En muchas ocasiones cuando contratamos un plan de hosting, no nos fijamos en uno de los detalles más importantes, el sistema operativo sobre el que va a estar ejecutando el servidor que nos provea de alojamiento web y otras muchas funciones. Aparte de otras alternativas que existen derivadas de sistemas como la familia BSD, las empresas que proporcionan hosting suelen decantarse mayoritariamente por dos sistemas operativos, GNU/Linux y Windows. Sin tener estadísticas fiables, no puedo decir a ciencia cierta que la mayoría usan GNU/Linux, aunque dando una paseo por la red, podemos hacernos una idea de que sí puede ser cierta dicha afirmación. También podremos ver bastantes empresas de hosting que ofrecen planes basados en servidores de Microsoft, por lo que en este artículo veremos en qué influye como clientes de un servicio de alojamiento web, que elijamos uno u otro sistema.</p><h2>Introducción</h2><p>Como en otros tantos aspectos de las nuevas tecnologías, en el mercado del hosting, tenemos varias posibilidades en cuanto a sistema operativo se refiere. Las dos mayoritarias a día de hoy, GNU/Linux y <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Microsoft Windows</a>, se reparten una gran cuota de mercado lo que no quiere decir que no existan otras alternativas, como por ejemplo servidores basados en NetBSD o FreeBSD. En este artículo veremos desde el punto de vista de cliente de una empresa de hosting, qué puede hacer que nos decantemos entre una u otra opción.</p><p><span
id="more-8758"></span></p><p>A priori, cualquier linuxero (entre los que me incluyo) no pensaría en ningún momento en usar un servidor basado en Internet Information Services (el servidor web de Microsoft) sobre un Microsoft Windows Server 2008. Sin embargo, os puedo asegurar que hay circunstancias en las que no sólo es recomendable usar esta opción, sino necesario. De todas maneras si nosotros somos los que elegimos la tecnología a usar y no nos imponen ciertas restricciones (si estamos trabajando para alguien) un poco “especiales”, en líneas generales podríamos decir que la mejor opción es usar GNU/Linux.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2012/01/logo_windows_server.jpg" class="broken_link"><img
class="aligncenter" title="logo_windows_server" src="http://www.linuxhispano.net/wp-content/uploads/2012/01/logo_windows_server.jpg" alt="Logo Windows Sever 2008" width="440" height="330" /></a></p><p>Veamos a continuación, desglosados un poco más los detalles que pueden hacer que nos decantemos por una alternativa o por otra.</p><h2>Precio</h2><p>Puesto que a la hora de la verdad en todo lo referente a negocios privados, el aspecto más determinante de todos es el presupuesto, comencemos por el precio medio de los hosting. Dado que para poder tener un servidor corriendo bajo Microsoft Windows Server 2003 o 2008, hace falta pagar una licencia comercial y a un precio que no es bajo ni mucho menos, los hosting que ofrecen sistemas <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Windows</a> suelen ser más caros que los basados en GNU/Linux. Antes de seguir me gustaría aclarar que hay muchas empresas que venden hosting con las dos posibildiades y uno a la hora de contratarlo, elige cuál le interesa.</p><p>Siguiendo con el tema económico, hay que contar que en un servicio de hosting, el precio que se paga por un sistema o por otro, no es sólo la licencia del sistema operativo en sí. Hay muchos factores aparte como por ejemplo, el coste del soporte, el gasto energético o la necesidad de comprar licencias de terceros programas, entre otras.</p><p>El coste del soporte era una de las excusas esgrimidas por Microsoft sobre el coste real de mantener un servidor en GNU/Linux, porque afirmaban que el soporte era bastante más caro que en GNU/Linux. Sin embargo, debido a la mayor automatización de muchos procesos en GNU/Linux y lo que es más importante, a su mayor difusión, cada vez el soporte es más barato y fácil para este sistema.</p><p>En cuanto a los otros factores que hemos también mencionado, el gasto de energía y la necesidad de comprar licencias a terceros, decir de la primera que para ver un consumo de energía real habría que hacer una serie de test y benchamarks con mucha exactitud para poder emitir un juicio objetivo. En el segundo caso, en el de comprar software de terceros, en <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Windows</a> suele ser más frecuente esta necesidad, aunque en GNU/Linux también puede darse este caso y por supuesto, en ambos se puede utilizar software libre para satisfacer muchas necesidades.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2012/01/fundacion_apache.gif" class="broken_link"><img
class="aligncenter size-full wp-image-8775" title="fundacion_apache" src="http://www.linuxhispano.net/wp-content/uploads/2012/01/fundacion_apache.gif" alt="Logo Apache" width="356" height="107" /></a></p><h2>Seguridad</h2><p>Se ha hablado tantísimo de este aspecto, comparando además a <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Windows</a> y a Linux, que creo que no es necesario dar mucha información. La seguridad de los sistemas GNU/Linux está más que contrastada, más aún en ambientes de hosting; y además la facilidad de actualización que tiene el software instalado en este sistema hace que ante cualquier versión nueva que tape algún agujero, la actualización sea rápida y no haya de por medio problemas como obligar a reiniciar el servidor.</p><p>Este y otros muchos detalles, provenientes de un sistema que nació en un ambiente profesional, hacen de GNU/Linux el ganador por diferencia de este apartado.</p><h2>Eficiencia</h2><p>Este aspecto depende mucho del hardware que se use en la máquina en la que resida el servidor así como de la línea que tenga contratado con su ISP (proveedor de servicios de Internet) nuestro servicio de hosting. A priori puede que GNU/Linux distribuya mejor la carga de trabajo que <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Microsoft Windows</a>, pero es un aspecto que más que preocuparnos a nosotros que somos los que contratamos el host debe preocuparle al que ofrece el servicio.</p><p>También es verdad que cada vez son más las aplicaciones web basadas en tecnologías no tan eficientes como PHP, por ejemplo Ruby On Rails o Python (bastante más eficiente que Ruby pero aún así más lento que PHP) con Django o Turbo Gears; que requieren una mayor cantidad de recursos.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2012/01/logo_internet_information_services.png"><img
class="aligncenter size-full wp-image-8777" title="logo_internet_information_services" src="http://www.linuxhispano.net/wp-content/uploads/2012/01/logo_internet_information_services.png" alt="Logo Intenet Information Services" width="160" height="76" /></a></p><h2>Posibilidades y necesidades específicas</h2><p>En este punto es donde quizás nos tengamos que decantar por una solución Microsoft Windows por obligaciones de los requisitos. Imaginemos que necesitamos usar por obligación una base de datos SQL Server, de Microsoft. Ante este caso, dado que este sistema gestor de base de datos sólo ejecuta en el sistema operativo de Microsoft, estaremos obligados a usar un host con Windows Server que ofrezca esta posibilidad. También es verdad que éste no suele ser el caso más común, por fortuna, y que para muchísimas otras circunstancias, la solución correcta es Linux, por razones casi idénticas. Por ejemplo, a día de hoy, es difícil encontrar un sistema basado en <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Windows</a> que ofrezca soporte para ejecutar aplicaciones web implementadas con Ruby o Python, dos tecnologías en alza.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2012/01/tux-servidor.jpg" class="broken_link"><img
class="aligncenter size-full wp-image-8778" title="tux-servidor" src="http://www.linuxhispano.net/wp-content/uploads/2012/01/tux-servidor.jpg" alt="Tux Servidor" width="200" height="230" /></a></p><p>Por lo tanto en este apartado, dependiendo de nuestro caso deberemos elegir una plataforma u otra, aunque como repito en la mayor parte de los casos el resultado es favorable para GNU/Linux. De hecho, en mi caso personal, por ejemplo, nunca elegiría trabajar con ASP.NET y SQL Server, por ejemplo, pudiendo trabajar con tecnologías libres que cubren las mismas necesidades ya que además de resultarme más barato, dispongo de una cantidad de documentación y soporte mucho mayor (aparte de que las tecnologías de Microsoft no son código abierto). Sin embargo, si tenemos un encargo profesional y por razones ajenas a nosotros hay que utilizar dichas tecnologías, tendremos que dencantarnos por un host con Windows Server.</p><h2>Adaptabilidad</h2><p>Normalmente, las tecnologías libres suelen estar mejor estandarizadas que sus equivalentes propietarias, por lo que de cara a migrar datos de un sistema gestor de base de datos a otro distinto, o a la hora de cambiar el servidor, si estamos operando con un host que trabaje con GNU/Linux, posiblemente se nos presenten menos problemas.</p><h2>Futuro</h2><p>Tanto el soporte como las nuevas versiones de software, están prácticamente aseguradas en los dos sistemas. Los costes de actualización de una versión a otra en el caso de software privado, no os repercutirán demasiado, dado que al igual que el coste de la licencia, estos son gastos que paga la empresa a la que contratamos. Por esta razón suelen ser más caros los servicios de host basados en sistemas <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Windows</a>. Aparte de eso, aunque este es un tema importante a la hora de elegir un servicio de host, el asegurarnos que el software está siempre actualizado y alejado de posibles vulnerabilidades, no existen diferencias de un sistema a otro.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2012/01/logo_mysql.jpg" class="broken_link"><img
class="aligncenter size-full wp-image-8779" title="logo_mysql" src="http://www.linuxhispano.net/wp-content/uploads/2012/01/logo_mysql.jpg" alt="Logo MySQL" width="399" height="291" /></a></p><h2>Conclusiones</h2><p>A lo largo del artículo, habréis observado que para la mayor parte de las necesidades, excepto para las que necesitan expresamente ciertas tecnologías como .NET, podemos usar GNU/Linux por multitud de razones. Comenzando por el precio, terminando en la seguridad y pasando por variedad de otros aspectos como por ejemplo la capacidad de adaptación, GNU/Linux suele ser el más idóneo o en casos extraños, estar al nivel de su rival. También es cierto que como digo haya aplicaciones que por cuestiones de los requisitos necesiten sistemas <a
href="http://www.linuxhispano.net/etiqueta/windows/" target="_blank">Windows</a> o en todo caso ejecuten con Mono (no os lo recomiendo si vais a usarlo como un sistema en producción y no en pruebas o de uso personal). En un futuro, también habrá que tener en cuenta aspectos como la virtualización en servidores, tecnología bastante avanzada ya pero que no se ofrece en muchos servicios de host.</p><p>Elegido el sistema, tenéis que elegir la empresa de hosting que contratar. En otros artículos os contarán mejor cómo seleccionar a dicha empresa de entre todas las que se ofertan en la red, pero como primer paso os recomiendo no comprobar sólo la cantidad de servicios que ofrecen, sino la calidad de los mismos.</p><p>Por último, os dejo unos cuantos enlaces en la sección “En la red”, de servidores web disponibles para GNU/Linux y un poco más de información para que leáis en la red sobre las versiones de servidor de Microsoft Windows y el servidor web que usan, Internet Information Services.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2012/01/02/diferencias-entre-un-servicio-de-alojamiento-con-linux-y-otro-con-windows/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Configurar un servidor Samba de forma básica</title><link>http://www.linuxhispano.net/2011/11/24/configurar-un-servidor-samba-de-forma-basica/</link> <comments>http://www.linuxhispano.net/2011/11/24/configurar-un-servidor-samba-de-forma-basica/#comments</comments> <pubDate>Thu, 24 Nov 2011 13:01:49 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[almacenamiento]]></category> <category><![CDATA[cliente]]></category> <category><![CDATA[configuración]]></category> <category><![CDATA[disco]]></category> <category><![CDATA[gnome]]></category> <category><![CDATA[instalación]]></category> <category><![CDATA[linux+]]></category> <category><![CDATA[nas]]></category> <category><![CDATA[nautilus]]></category> <category><![CDATA[red]]></category> <category><![CDATA[samba]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[smbclient]]></category> <category><![CDATA[unidad]]></category> <category><![CDATA[virtual]]></category> <category><![CDATA[windows]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=7661</guid> <description><![CDATA[Hasta hace no mucho, usaba en mi centro de trabajo un servidor NAS doméstico que hacía sus funciones de forma algo lenta pero sin problemas de seguridad ni estabilidad. Sin embargo, a raíz de un problema de reinicio y pérdida &#8230; <a
href="http://www.linuxhispano.net/2011/11/24/configurar-un-servidor-samba-de-forma-basica/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Hasta hace no mucho, usaba en mi centro de trabajo <a
target="_blank" href="http://es.wikipedia.org/wiki/Network-attached_storage" target="_blank">un servidor NAS</a> doméstico que hacía sus funciones de forma algo lenta pero sin problemas de seguridad ni estabilidad. Sin embargo, a raíz de un problema de reinicio y pérdida de acceso al mismo, decidir dar el salto y poner en marcha un auténtico servidor NAS.</p><p>Preparé una máquina virtual con Xen, preparé el almacenamiento en mis módulos SAS, configuré el direccionamiento del mismo y arranqué la máquina. ¿Qué me quedaba por instalar y configurar? Un servidor Samba. Veamos cómo hacerlo.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/11/samba_logo.gif" class="broken_link"><img
class="aligncenter size-full wp-image-8453" title="samba_logo" src="http://www.linuxhispano.net/wp-content/uploads/2011/11/samba_logo.gif" alt="Samba logo" width="200" height="200" /></a></p><p>El siguiente procedimiento vale sobre cualquier distribución de GNU/Linux. Sólo deberéis cambiar ciertos detalles de sistemas de paquetes, pero el método es el mismo y es una solución genial. Multitud de empresas u organizaciones disponen de un servidor Linux y de clientes finales con Microsoft Windows. Tanto si el cliente final es Windows como si es Linux o Mac OS, esta solución provee un método sencillo, robusto y fiable para implantar algo tan necesario como almacenamiento en red (ya sea para copias de seguridad, para trabajo en equipo, para crear un repositorio central o para lo que se busque).</p><p>He usado Scientific Linux, por lo que será el mismo procedimiento en Fedora, Red Hat, Cent OS y derivados. En Ubuntu, Debian y derivadas usaremos apt y el resto, sus propios paquetes (o compilaciones del fuente).</p><p><span
id="more-7661"></span></p><p><strong>Instalación de los paquetes</strong></p><p>Lo primero será instalar los paquetes necesarios. Hablamos de:</p><ul><li>samba: servidor SMB</li><li>samba-client: clientes para el protoclo SMB</li><li>samba-common: ficheros comunes a ambos</li></ul><p>Hacemos lo siguiente:</p><pre>yum install samba samba-common</pre><p>Y en los clientes:</p><pre>yum install samba-client samba-common</pre><p>En los clientes Windows no es necesario instalar nada.</p><p><strong>Alta de usuarios</strong></p><p>Los usuarios de Windows, deberán darse alta con el mismo usuario que usan en Windows, es decir, si se llama &#8220;Javier&#8221; su usuario Windows, &#8220;Javier&#8221; deberá ser su usuario Samba. Podéis evitar esto haciendo un conector, yo he implementado uno en .NET que me resuelve esta cuestión pero lo más simple, es usar el mismo nombre.</p><p>Veamos, lo primero será crear el usuario:</p><pre>useradd -s /sbin/nologin nombre-usuario</pre><p>Indicamos que no puede iniciar sesión en la parte de la shell porque suponemos que a un servidor SAMBA no se van a conectar por SSH o Telnet. Si sí van a hacerlo, sería de la siguiente forma (incluimos la creación de contraseña para el usuario):</p><pre>useradd -s /bin/bash nombre-usuario
passwd nombre-usuario</pre><p>Una vez el usuario existe en el sistema, indicamos que es un usuario de SAMBA y creamos su contraseña para acceder al sistema SAMBA.</p><pre>smbpasswd -a nombre-usuario</pre><p>Introducimos la contraseña y estará todo listo.</p><p><strong>Configuraciones en smb.conf</strong></p><p>El fichero <em>smb.conf</em>, controla a través de opciones especificadas en texto plano, como les gusta a los puristas Unix (a mí también), las opciones. Lo editamos con el editor que queramos y cambiamos las opciones según nos interese. Está situado en el directorio <em>/etc/samba</em>.</p><p>Veamos los más importantes para una configuración rápida y básica:</p><ul><li><strong>workgroup</strong>: grupo de trabajo</li><li><strong>server string</strong>: cadena del servidor que anuncia cuando te conectas a modo de anuncio (parecido a lo que hacen los servidores FTP)</li><li><strong>hosts-allow</strong>: lista de direcciones que podrán conectarse</li></ul><p><strong>Directorios compartidos</strong></p><p>Dentro de este mismo fichero, encontramos las directrices que permitirán compartir los directorios. La siguiente orden, hace que cada usuario tenga accesible a través del servidor SAMBA su propio directorio $HOME:</p><pre>[homes]
        comment = Home Directories
        browseable = yes
        writable = yes
;       valid users = %S
;       valid users = MYDOMAIN\%S</pre><p>Dejando comentados <em>valid users</em> todos los usuarios por defecto tendrán acceso. Si queremos especificar un directorio más a compartir, simplemente añadiremos:</p><pre>[nombre_directorio]
        comment = Otro directorio que estamos compartiendo
        path = /ruta/directorio
        public = no
        writable = yes
        browseable = yes</pre><p>Podemos controlar mediante la política de permisos de directorios de Unix (permisos, grupos y usuarios) quiénes podrán escribir y quienes no sobre dicho directorio.</p><p><strong>Inicio, parada y arranque por defecto del servicio</strong></p><p>Para iniciar el servicio haremos:</p><pre>service smb start</pre><p>Para pararlo:</p><pre>service smb stop</pre><p>Y para reiniciarlo:</p><pre>service smb restart</pre><p>Ahora deberemos incluirlo en el arranque, para asegurarnos de que todo funciona correctamente tras los diferentes reinicios:</p><pre>chkconfig smb on</pre><p><strong>Conexiones desde clientes</strong></p><p>Veamos una a una las posibilidades que tenemos para conectarnos (suponiendo que hay direccionamiento y no hay problemas de cortafuegos).</p><p><em><strong>Desde Linux con la terminal</strong></em></p><p>Con <em>smbclient</em>:</p><pre>smbclient //direccion_maquina/usuario -U usuario</pre><p>El recurso puede ser el mismo, por ejemplo para su $HOME:</p><pre>smbclient //direccion_maquina/recurso -U usuario</pre><p><em><strong>Desde Linux usando Nautilus (el explorador de ficheros de Gnome)</strong></em></p><p>Nos dirigimos a la barra de direcciones, si tenemos los directorios desplegados en forma de botones en la parte superior, presionamos &#8220;Control+L&#8221; y listo, aparecerá una barra de direcciones. En dicha barra escribimos: <em>smb://usuario@direccion_servidor/recurso</em> y tras pedirnos la autenticación accederemos.</p><p><strong>Desde Windows con la terminal</strong></p><p>Abrimos la terminal (cmd.exe) y escribimos:</p><pre>net use * \\direccion_servidor\recurso /USER:usuario</pre><p>Tras autenticarnos, ya estaremos en el sistema. El asterisco, sirve para que el sistema elija la primera letra que tenga libre.</p><p><strong>Desde Windows con el entorno gráficos</strong></p><p>Al igual que hemos hecho antes con Nautilus en Gnome, accedemos al explorador de ficheros de Windows y en la barra de direcciones indicamos:</p><pre>\\direccion_servidor\recurso</pre><p>Saldrá una pantalla pidiéndonos los credenciales y estaremos conectados. Otra opción es conectar el recurso en el servidor como una unidad de red.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/11/24/configurar-un-servidor-samba-de-forma-basica/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Configurar de forma básica servicio NTP en Windows Server 2008</title><link>http://www.linuxhispano.net/2011/08/29/configurar-de-forma-basica-servicio-ntp-en-windows-server-2008/</link> <comments>http://www.linuxhispano.net/2011/08/29/configurar-de-forma-basica-servicio-ntp-en-windows-server-2008/#comments</comments> <pubDate>Mon, 29 Aug 2011 13:25:34 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[hora]]></category> <category><![CDATA[ntp]]></category> <category><![CDATA[server]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[virtualizar]]></category> <category><![CDATA[windows]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=7145</guid> <description><![CDATA[Lo sé, este blog se llama Linux Hispano y esta entrada no es la más apropiada aquí, pero tengo excusa, soy entre otras cosas, administrador de sistemas y algunos de los equipos que mantengo ejecutan Windows Server 2008. La virtualización &#8230; <a
href="http://www.linuxhispano.net/2011/08/29/configurar-de-forma-basica-servicio-ntp-en-windows-server-2008/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Lo sé, este blog se llama Linux Hispano y esta entrada no es la más apropiada aquí, pero tengo excusa, soy entre otras cosas, administrador de sistemas y algunos de los equipos que mantengo ejecutan <a
target="_blank" href="http://es.wikipedia.org/wiki/Windows_Server_2008" target="_blank">Windows Server 2008</a>.</p><p>La virtualización tiene enormes ventajas pero también tiene sus inconvenientes. Uno de los más frecuentes a la vez que importantes que he encontrado (aunque pueda parecer lo contrario), es los problemas de hora. Debido al modelo de ejecución de las máquinas virtuales, es muy frecuentes que éstas soporten problemas de puntualidad en la hora mostrada.</p><p>Para evitarlo, es más conveniente aún de lo normal que configuremos el servicio <a
target="_blank" href="http://es.wikipedia.org/wiki/Network_Time_Protocol" target="_blank">NTP (Network Time Protocol)</a>. Este tema ya lo he tratado en equipos Linux en varias ocasiones anteriormente:</p><ul><li><a
href="http://www.linuxhispano.net/2010/11/27/configurar-ntp-hora-en-red-en-nuestro-equipo/" target="_blank">Configurar NTP (hora en red) en nuestro equipo<br
/> </a></li><li><a
href="http://www.linuxhispano.net/2010/08/31/definir-la-zona-horaria-en-nuestro-sistema-con-tzselect/" target="_blank">Definir la zona horaria en nuestro sistema con tzselect<br
/> </a></li><li><a
href="http://www.linuxhispano.net/2010/11/26/%C2%BFcomo-cambiar-la-fecha-y-la-hora-desde-la-consola/" target="_blank">¿Cómo cambiar la fecha y la hora desde la consola?<br
/> </a></li></ul><p>Pero nunca antes lo había tratado para Windows Server. Veamos, lo primero que tenemos que hacer es crear un script para la <em>shell</em> de Windows, un .bat con el siguiente contenido:</p><pre>@echo off
echo Configuramos el servicio para que se sincronice con: hora.roa.es
echo.
w32tm /config /manualpeerlist:hora.roa.es,0x8 /syncfromflags:MANUAL /reliable:yes /update
w32tm /resync
echo.
Pause</pre><p>Una vez hecho esto, nos aseguramos que el script se va a ejecutar de forma periódica por lo que programamos una tarea para esta labor. Para ello entramos en Inicio -&gt; Herramientas administrativas -&gt; Programador de tareas y ahí creamos una tarea nueva que se ejecute cada cierto tiempo (una hora no está mal) y que ejecute el script que acabamos de crear.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/08/29/configurar-de-forma-basica-servicio-ntp-en-windows-server-2008/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Clasificación de servicios de alojamiento</title><link>http://www.linuxhispano.net/2011/07/08/clasificacion-de-servicios-de-alojamiento/</link> <comments>http://www.linuxhispano.net/2011/07/08/clasificacion-de-servicios-de-alojamiento/#comments</comments> <pubDate>Fri, 08 Jul 2011 07:54:54 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Noticias]]></category> <category><![CDATA[alojamiento]]></category> <category><![CDATA[clasificación]]></category> <category><![CDATA[dedicado]]></category> <category><![CDATA[hosting]]></category> <category><![CDATA[servicios]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[vps]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=6848</guid> <description><![CDATA[Relacionada con la entrada anterior, os presento una breve clasificación de los distintos servicios que ofrecen las compañías de hosting o alojamiento web. Aunque la clasificación podríamos ampliarla, los tipos de servicio serían los siguientes. Cuenta en servidor compartido Sin &#8230; <a
href="http://www.linuxhispano.net/2011/07/08/clasificacion-de-servicios-de-alojamiento/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Relacionada con <a
href="http://www.linuxhispano.net/2011/07/06/%c2%bfque-debo-comparar-a-la-hora-de-contratar-un-servicio-de-alojamiento-web/" target="_blank">la entrada anterior</a>, os presento una breve clasificación de los distintos servicios que ofrecen las compañías de <em>hosting</em> o alojamiento web. Aunque la clasificación podríamos ampliarla, los tipos de servicio serían los siguientes.</p><p><strong>Cuenta en servidor compartido</strong></p><p>Sin lugar a dudas la más popular. Ofrece un usuario con el que conectarnos a una máquina en la que hay más usuarios con sus datos y aplicaciones web. Tiene la ventaja de ser la más barata pero es la más limitada de todas.</p><p><strong>Cuenta de revendedor</strong></p><p>Similar a la anterior pero con una particularidad importante, permite crear nuevos usuarios a los que asignarles cuotas de espacio y volumen de transferencia. Como su nombre indica su uso principal es ser revendedores de hosting. A partir de este nivel todos los servicios pueden ser revendidos.</p><p><strong>Servidores privados virtuales</strong></p><p>Servidor virtual funcionando sobre una máquina física en la que hay más servidores virtuales. Se nos asignan unos recursos de cálculo, memoria y espacio en disco y actuamos remotamente como si tratáramos con un servidor propio. Popularmente llamados VPS (Virtual Private Server).</p><p><strong>Servidor dedicado</strong></p><p>Servidor físico que lo tenemos alquilado en la empresa de alojamiento. Sus potencialidades son muy similares al anterior pero a diferencia de éste el equipo es a efectos prácticos, “nuestro”. Es la solución más cara.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/07/08/clasificacion-de-servicios-de-alojamiento/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Enviar correos con C# usando Mono</title><link>http://www.linuxhispano.net/2011/06/06/enviar-correos-con-c-usando-mono/</link> <comments>http://www.linuxhispano.net/2011/06/06/enviar-correos-con-c-usando-mono/#comments</comments> <pubDate>Mon, 06 Jun 2011 13:00:20 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[c]]></category> <category><![CDATA[cliente]]></category> <category><![CDATA[correo]]></category> <category><![CDATA[enviar]]></category> <category><![CDATA[mono]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[smtp]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=6439</guid> <description><![CDATA[Si necesitáis conectaros a un servidor SMTP para hacer envíos de correos desde una aplicación que corre Mono, os dejo el código siguiente que seguro que os es de utilidad. Este ejemplo en concreto envía un mensaje usando un SMTP &#8230; <a
href="http://www.linuxhispano.net/2011/06/06/enviar-correos-con-c-usando-mono/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Si necesitáis conectaros a un servidor <a
target="_blank" href="http://es.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol" target="_blank">SMTP </a>para hacer envíos de correos desde una aplicación que corre <a
href="http://www.linuxhispano.net/curso-c-con-mono/">Mono</a>, os dejo el código siguiente que seguro que os es de utilidad. Este ejemplo en concreto envía un mensaje usando un SMTP que requiere autenticación, si necesitáis alguna variantes: varios destinatarios, SMTP sin autenticación o cualquier otra cosa, ¡preguntad en los comentarios!</p><pre>public static void Main (string[] args)
{
	MailAddress para = new MailAddress("para@direccion.com");
	MailAddress desde = new MailAddress("desde@direccion");
	MailMessage mensaje = new MailMessage(desde, para);
	mensaje.Subject = "Asunto";
	mensaje.Body = @"Cuerpo del correo";
	SmtpClient cliente = new SmtpClient("direccion_servidor", puerto);
	cliente.Credentials = new System.Net.NetworkCredential
("nombre_usuario", "contraseña_usuario");
	Console.WriteLine("Enviando mensaje de correo para: " + para.User
 + " en " + para.Host + " usando el servidor=" + cliente.Host + ".");
      	try {
	  cliente.Send(mensaje);
	  Console.WriteLine("Mensaje enviado");
	}
	catch (Exception ex) {
	  Console.WriteLine("Problemas enviando mensaje: " + ex.ToString());
	 }
}</pre><p>Tened en cuenta que estamos trabajando con el espacio de nombres del ensamblado: <em>System.Net.Mail</em>.</p><p>Como veis el procedimiento es simple:</p><ol><li>Se crean dos objetos para las direcciones de correo</li><li>Se crea el mensaje en sí</li><li>Se instancia el cliente SMTP, inicializando las credenciales</li><li>Para finalmente llamar al método de envío</li></ol><p>Respondemos las dudas y sugerencias en los comentarios.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/06/06/enviar-correos-con-c-usando-mono/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Instalar LAMP en Ubuntu 11.04</title><link>http://www.linuxhispano.net/2011/04/08/instalar-lamp-en-ubuntu-11-04/</link> <comments>http://www.linuxhispano.net/2011/04/08/instalar-lamp-en-ubuntu-11-04/#comments</comments> <pubDate>Fri, 08 Apr 2011 05:30:49 +0000</pubDate> <dc:creator>Alberto Hornero Luque</dc:creator> <category><![CDATA[Noticias]]></category> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[apache]]></category> <category><![CDATA[lamp]]></category> <category><![CDATA[linux+]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[php]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[web]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=5912</guid> <description><![CDATA[Al igual que hicimos en su día con Ubuntu 10.10, ahora le llega el turno a la nueva versión Ubuntu. Para instalar LAMP (Linux Apache MySQL PHP) muchos de vosotros usaríais el selector de paquetes por tareas del gestor de paquetes Synaptic, pero en esta &#8230; <a
href="http://www.linuxhispano.net/2011/04/08/instalar-lamp-en-ubuntu-11-04/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Al igual que <a
href="http://www.linuxhispano.net/2010/10/18/instalar-lamp-en-ubuntu-10-10/">hicimos en su día con Ubuntu 10.10</a>, ahora le llega el turno a la nueva versión Ubuntu.</p><p>Para instalar LAMP (<strong>L</strong>inux <strong>A</strong>pache <strong>M</strong>ySQL <strong>P</strong>HP) muchos de vosotros usaríais el <em>selector de paquetes por tareas</em> del gestor de paquetes <strong>Synaptic</strong>, pero en esta versión de Ubuntu y en la anterior no existe el paquete, así que tendremos que instalarlo manualmente.</p><p>La tarea, al igual que en el caso que os mencionaba antes, es bien sencilla, desde la terminal, instalamos el paquete <em>tasksel</em>, el mismo que utiliza <a
href="http://www.linuxhispano.net/?s=Synaptic">Synaptic</a> internamente para realizar esta tarea:</p><blockquote><p>ahornero@6581-D:~$ sudo apt-get install tasksel</p></blockquote><p>Ahora lanzamos la herramienta, ya sea directamente desde la misma terminal o a través de Synaptic, aquí lo veremos con la primera opción que es más directa:</p><blockquote><p>ahornero@6581-D:~$ sudo tasksel</p></blockquote><p><strong>Seleccionamos la tarea <em>LAMP</em></strong>, que se encargará automáticamente de instalarnos todos los paquetes y dependencias necesarias:</p><p><img
title="LAMP1_linux_hispano" src="http://www.linuxhispano.net/wp-content/uploads/2010/10/LAMP1_linux_hispano.jpg" alt="" width="648" height="364" /></p><p>y luego no solicitará un contraseña para el administrador de la base de datos:</p><p><img
title="LAMP2_linux_hispano" src="http://www.linuxhispano.net/wp-content/uploads/2010/10/LAMP2_linux_hispano.jpg" alt="" width="599" height="217" /></p><p>Una vez terminada la instalación, vamos a comprobar que todo funciona como esperamos, así que crearemos un fichero <em>test.php</em> en el directorio <em>/var/www/</em>, donde por defecto se encuentra nuestra web.</p><p>Cambiamos los permisos del directorio,</p><blockquote><p>ahornero@6581-D:~$ cd /var/www/<br
/> ahornero@6581-D:/var/www$ sudo chown -R ahornero .<br
/> [sudo] password for ahornero: *******</p></blockquote><p>y creamos el fichero<em> test.php</em> incluyendo la siguiente línea,</p><blockquote><p>ahornero@6581-D:/var/www$ nano test.php</p></blockquote><p>Finalmente, reiniciamos el servidor Web</p><blockquote><p>ahornero@6581-D:~$ sudo /etc/init.d/apache2  restart<br
/> * Restarting web server apache2 … waiting [ OK ]</p></blockquote><p>¡Y terminamos! Al entrar en la dirección <em>http://localhost/test.php </em>nos tenemos que encontrar algo similar a esto:</p><p><img
title="LAMP3_linux_hispano" src="http://www.linuxhispano.net/wp-content/uploads/2010/10/LAMP3_linux_hispano.jpg" alt="" width="623" height="367" /></p><p>Bien, espero vuestros comentarios y dudas.</p><p>&nbsp;</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/04/08/instalar-lamp-en-ubuntu-11-04/feed/</wfw:commentRss> <slash:comments>29</slash:comments> </item> <item><title>Instalar cliente Oracle y librerías OCI para PHP</title><link>http://www.linuxhispano.net/2011/03/07/instalar-cliente-oracle-y-librerias-oci-para-php/</link> <comments>http://www.linuxhispano.net/2011/03/07/instalar-cliente-oracle-y-librerias-oci-para-php/#comments</comments> <pubDate>Mon, 07 Mar 2011 11:51:32 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[apache]]></category> <category><![CDATA[fedora]]></category> <category><![CDATA[httpd]]></category> <category><![CDATA[oci]]></category> <category><![CDATA[oracle]]></category> <category><![CDATA[php]]></category> <category><![CDATA[red hat]]></category> <category><![CDATA[scientific linux]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[web]]></category> <category><![CDATA[yum]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=5269</guid> <description><![CDATA[Ahora mismo estoy poniendo un producción un servidor en mi centro de trabajo, en el que además de tener que dar servicio para la base de datos PostgreSQL (explique hace poco cómo permitir conexiones entrantes a esta BBDD), debe hacer &#8230; <a
href="http://www.linuxhispano.net/2011/03/07/instalar-cliente-oracle-y-librerias-oci-para-php/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Ahora mismo estoy poniendo un producción un servidor en mi centro de trabajo, en el que además de tener que dar servicio para la base de datos <a
target="_blank" href="http://es.wikipedia.org/wiki/PostgreSQL" target="_blank">PostgreSQL </a>(explique hace poco <a
target="_blank" href="http://www.linuxhispano.net/2011/02/15/permitir-conexiones-entrantes-a-un-servidor-postgresql/" target="_blank">cómo permitir conexiones entrantes</a> a esta BBDD), debe hacer conexiones externas a una base de datos <a
href="http://es.wikipedia.org/wiki/Oracle" target="_blank">Oracle</a>.</p><p><strong>Estas conexiones las hará un script en PHP</strong> por lo que además, deberemos instalar <a
target="_blank" href="http://www.oracle.com/technetwork/database/features/oci/index.html" target="_blank">OCI (Oracle Call Interface)</a> para <a
target="_blank" href="http://php.net/manual/es/book.oci8.php" target="_blank">PHP</a>. Suponemos que está ya instalado el servidor web Apache 2 y los componentes básicos de PHP.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/03/oracle1.jpg"><img
class="aligncenter size-full wp-image-5558" title="oracle" src="http://www.linuxhispano.net/wp-content/uploads/2011/03/oracle1.jpg" alt="" width="432" height="110" /></a></p><p><strong>Instalación de Oracle instantclient</strong></p><p><strong> </strong>Antes de instalar el <em>instantclient</em> como tal, debemos instalar la librería <em>libaio</em>, necesaria para<strong> gestionar entradas/salidas asíncronas al kernel</strong>. La instrucción será (utilizo &#8220;#&#8221; en el <em>prompt </em>para indicar como superusuario, &#8220;$&#8221; en caso contrario):</p><blockquote><p># yum install libaio1</p></blockquote><p>O si usamos una distribución que use APT:</p><blockquote><p># apt-get install libaio1</p></blockquote><p>Lo siguiente será acceder <a
target="_blank" href="http://www.oracle.com/technetwork/indexes/downloads/index.html" target="_blank">al portal de descargas de Oracle</a> y descargar los componentes necesarios para el <em>instantclient</em>:</p><ul><li>Basic</li><li>Devel</li><li>SQLPlus</li></ul><p>Elegimos la última versión, nuestra arquitectura  y descargamos <strong>los paquetes RPM</strong>. La instalación será inmediata si tenemos una distribución basada en Red Hat:</p><blockquote><p># yum install paquete.rpm</p></blockquote><p>En caso contrario, deberemos instalar <a
target="_blank" href="http://es.wikipedia.org/wiki/Alien_(aplicaci%C3%B3n)" target="_blank">alien </a>previamente para que convierta los paquetes <a
target="_blank" href="http://es.wikipedia.org/wiki/RPM_Package_Manager" target="_blank">RPM </a>en paquetes <a
target="_blank" href="http://es.wikipedia.org/wiki/Deb" target="_blank">DEB</a>:</p><blockquote><p># apt-get install alien</p><p># alien paquete.rpm</p><p># dpkg -i paquete.deb</p></blockquote><p>Ahora ya nos tocar configurar el famoso fichero <a
target="_blank" href="http://www.orafaq.com/wiki/Tnsnames.ora" target="_blank">Tnsnames.ora</a>. Este fichero variará de una configuración a otra por lo que sólo vamos a comentar dónde situarlo. Su ruta debe ser: <em>/etc/oracle/tnsnames.ora</em>, en caso de no existir, deberemos crearla.</p><p>Para terminar, deberemos crear unas variables de entorno. Para ello accedemos al fichero /root/.bashrc como superusuario e incluimos las siguientes líneas:</p><blockquote><p>export TNS_ADMIN=/etc/oracleexport SQLPATH=/usr/lib/oracle/11.1.0.1/client/binexport LD_LIBRARY_PATH=/usr/lib/oracle/11.1.0.1/client/lib:$LD_LIBRARY_PATHexport PATH=$PATH:$SQLPATH</p></blockquote><p>En algunas distribuciones, también podréis hacer ese cambio en otro fichero:<em> /etc/environment</em>.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/03/pear.gif"><img
class="aligncenter size-full wp-image-5559" title="pear" src="http://www.linuxhispano.net/wp-content/uploads/2011/03/pear.gif" alt="" width="360" height="180" /></a></p><p><strong>Instalación de OCI en PHP</strong></p><p>Ahora nos toca la parte de PHP, es decir, instalar los componentes necesarios para poder hacer llamadas a Oracle desde PHP usando el <em>instantclient </em>que acabamos de instalar (con lo fácil que es hacer esto mismo con <a
target="_blank" href="http://es.wikipedia.org/wiki/Mysql" target="_blank">MySQL </a>o PostgreSQL&#8230;, las cosas del software cerrado).</p><p>Suponemos que tenemos instalado <a
target="_blank" href="http://es.wikipedia.org/wiki/Servidor_HTTP_Apache" target="_blank">Apache2 </a>y PHP, pero aún así instalaremos dos paquetes más:</p><blockquote><p># yum install php-pear php5-dev</p><p># apt-get install php-pear php5-dev</p></blockquote><p><a
target="_blank" href="http://pear.php.net/" target="_blank">PHP-PEAR</a> es según definen sus siglas: PHP Extension and Application Repository, es decir, un repositorio de extensiones y aplicaciones para PHP que <strong>nos permite instalar sin problemas ciertos componentes de PHP</strong> que no podemos instalar a través de nuestro gestor de paquetes habitual (me recuerda a <a
target="_blank" href="http://www.cpan.org/" target="_blank">CPAN con Perl</a>, pero esa es otra historia para otra entrada).</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/03/php.png"><img
class="aligncenter size-full wp-image-5560" title="php" src="http://www.linuxhispano.net/wp-content/uploads/2011/03/php.png" alt="" width="397" height="255" /></a></p><p>Ya estamos en disposición de ejecutarlo para instalar OCI:</p><blockquote><p>pecl install oci8</p></blockquote><p>En la terminal nos aparecerá algo así como:</p><blockquote><p>1-1, &#8216;all&#8217;, &#8216;abort&#8217;, or Enter to continue:</p></blockquote><p>Pulsamos &#8220;1&#8243; luego ENTER y escribimos las siguientes opciones (debemos saber <strong>el PATH exacto de nuestras librerías Oracle</strong>, cambiará en función de la versión):</p><blockquote><p>shared,instantclient,/usr/lib/oracle/mi_version/client/lib/</p></blockquote><p>PHP-PEAR descargará, configurará, compilará e instalará el módulo. Finalmente, tenemos que añadir a nuestro fichero <em>php.ini </em>una línea para que cargue la librería dinámica de OCI y puedan hacerse llamadas desde los ficheros PHP.</p><p>La ruta del fichero será: <em>/etc/php5/apache2/php.ini </em>y la línea a agregar junto a las demás extensiones la siguiente:</p><blockquote><p>extension=oci8.so</p></blockquote><p><strong>Reiniciamos el servidor web</strong> y listo:</p><blockquote><p>services httpd restart</p></blockquote><p>O:</p><blockquote><p>/etc/init.d/apache2 reload</p></blockquote> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/03/07/instalar-cliente-oracle-y-librerias-oci-para-php/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Configurar soporte HTTPS en Apache</title><link>http://www.linuxhispano.net/2011/02/21/configurar-soporte-https-en-apache/</link> <comments>http://www.linuxhispano.net/2011/02/21/configurar-soporte-https-en-apache/#comments</comments> <pubDate>Mon, 21 Feb 2011 16:42:49 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[apache]]></category> <category><![CDATA[centos]]></category> <category><![CDATA[https]]></category> <category><![CDATA[red hat]]></category> <category><![CDATA[scientific linux]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[ssl]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=5209</guid> <description><![CDATA[Este tutorial describe cómo poner en marcha un servidor web con soporte HTTPS. El procedimiento lo he utilizado en un equipo con Scientific Linux, distribución derivada de Red Hat, por lo que en esta distribución y en otras derivadas como &#8230; <a
href="http://www.linuxhispano.net/2011/02/21/configurar-soporte-https-en-apache/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Este tutorial describe <strong>cómo poner en marcha un servidor web con soporte HTTPS</strong>. El procedimiento lo he utilizado en un equipo con <a
target="_blank" href="http://es.wikipedia.org/wiki/Scientific_Linux" target="_blank">Scientific Linux</a>, distribución derivada de <a
target="_blank" href="http://es.wikipedia.org/wiki/Red_Hat_Enterprise_Linux" target="_blank">Red Hat</a>, por lo que en esta distribución y en otras derivadas como <a
target="_blank" href="http://es.wikipedia.org/wiki/Fedora_(distribuci%C3%B3n_Linux)" target="_blank">Fedora</a> o <a
target="_blank" href="http://es.wikipedia.org/wiki/CentOS" target="_blank">CentOS</a> debería ser el mismo. En <a
target="_blank" href="http://es.wikipedia.org/wiki/Ubuntu" target="_blank">Ubuntu</a>, <a
target="_blank" href="http://es.wikipedia.org/wiki/Debian" target="_blank">Debian </a>y compañía será muy similar pero cambiarán algunas rutas y el sistema de paquetería.</p><p>El certificado utilizado es autogenerado y suponemos que tenemos ya instalado <a
target="_blank" href="http://es.wikipedia.org/wiki/Servidor_HTTP_Apache" target="_blank">Apache</a>.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/02/openssl_logo.png"><img
class="aligncenter size-full wp-image-5318" title="openssl_logo" src="http://www.linuxhispano.net/wp-content/uploads/2011/02/openssl_logo.png" alt="" width="300" height="80" /></a></p><p><strong>Instalación de OpenSSL y mod_ssl</strong></p><p>Lo primero que necesitamos es tener instalado el software necesario, para ello a través de yum hacemos lo siguiente:</p><pre>yum install mod_ssl openssl</pre><p><strong>Generación del certificado</strong></p><p>Primero generamos <strong>la clave privada</strong>, elegimos algoritmo RSA y 1024 bits:</p><pre>openssl genrsa -out ca.key 1024</pre><p>Ahora <strong>generamos el CSR</strong> (<a
target="_blank" href="http://en.wikipedia.org/wiki/Certificate_signing_request" target="_blank">Certificate Signing Request</a>), un fichero que crea una entidad para pedirle a una tercera que lo firme, verificando así que los datos de la primera entidad son correctos. De esta forma unas entidades van certificando a otras creando una cadena de certificación, donde la primera entidad de llama la raí­z de certificación.</p><pre>openssl req -new -key ca.key -out ca.csr</pre><p>Finalmente, nos autofirmamos el certificado:</p><pre>openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt</pre><p>Le hemos puesto un período de validez de un año, pero podéis cambiar a vuestro gusto este tiempo. OpenSSL os pedirá una serie de datos sobre el certificado y su entidad emisora (vosotros): correo electrónico, ciudad, país&#8230; a través de un interfaz en texto.</p><p><strong>Cambio de rutas</strong></p><p>El siguiente paso es mover los ficheros de la firma que acabamos de generar a la ruta correcta.</p><pre>mv ca.crt /etc/pki/tls/certs
mv ca.key /etc/pki/tls/private/ca.key
mv ca.csr /etc/pki/tls/private/ca.csr</pre><p><strong>Configuración de Apache</strong></p><p>Ya estamos listos para comenzar con la configuración de Apache. En las versiones más modernas de Apache, el fichero de configuración viene dividido en varios ficheros separados por temática para un acceso más rápido a la parte deseada. El fichero que vamos a editar es el siguiente: <em>/etc/httpd/conf.d/ssl.conf</em>.</p><p>Buscamos las siguientes líneas y le asignamos el valor correcto (no tienen por qué estar seguidas una de la otra):</p><pre>SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key</pre><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/02/apache-logo1.png"><img
class="aligncenter size-full wp-image-5317" title="apache-logo" src="http://www.linuxhispano.net/wp-content/uploads/2011/02/apache-logo1.png" alt="" width="241" height="122" /></a></p><p><strong>Host virtual</strong></p><p>Para terminar crearemos un <em>host</em> virtual donde indicaremos a Apache dónde buscar las peticiones dirigidas al puerto 443 (las peticiones HTTPS). Definimos un <em>host </em>virtual al final de <em>/etc/httpd/conf/httpd.conf:</em></p><pre>NameVirtualHost *:443</pre><p>Y luego la definición de las características en sí:</p><pre>
&lt;VirtualHost *:443&gt;
        SSLEngine on
        SSLCertificateFile /etc/pki/tls/certs/ca.crt
        SSLCertificateKeyFile /etc/pki/tls/private/ca.key
        AllowOverride All
        DocumentRoot /var/www/httpsdocs
        ServerName nombresitio.com
&lt;/VirtualHost&gt;</pre><p><strong>Reiniciar el servicio</strong></p><p>Para que los cambios tengan validez, deberemos reiniciar el servicio:</p><pre>service httpd restart</pre><p>Y <strong>ya tendremos listo el sitio seguro</strong>. Tened en cuenta que como la firma es autogenerada, los navegadores no la contemplarán como segura y aparecerá la típica pantalla de &#8220;Error SSL&#8221; o similar, que seguro que conocéis.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/02/error_ssl.png"><img
class="aligncenter size-full wp-image-5316" title="error_ssl" src="http://www.linuxhispano.net/wp-content/uploads/2011/02/error_ssl.png" alt="" width="550" height="347" /></a></p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/02/21/configurar-soporte-https-en-apache/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Configurar un servidor de FTP anónimo con VSFTPD</title><link>http://www.linuxhispano.net/2011/02/17/configurar-un-servidor-de-ftp-anonimo-con-vsftpd/</link> <comments>http://www.linuxhispano.net/2011/02/17/configurar-un-servidor-de-ftp-anonimo-con-vsftpd/#comments</comments> <pubDate>Thu, 17 Feb 2011 11:03:31 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[anónimo]]></category> <category><![CDATA[ftp]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[vsftpd]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=5274</guid> <description><![CDATA[A raíz de un comentario aparecido en una entrada anterior, que por cierto no entendí bien, comenté brevemente cómo poner en marcha un servidor de FTP anónimo usando VSFTPD. Sin embargo, el tema tiene mucho más que decir, por lo &#8230; <a
href="http://www.linuxhispano.net/2011/02/17/configurar-un-servidor-de-ftp-anonimo-con-vsftpd/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>A raíz de <a
href="http://www.linuxhispano.net/2010/09/14/configurar-servidor-ftp-en-linux-con-vsftpd/comment-page-1/#comment-11353" target="_blank">un comentario aparecido en una entrada anterior</a>, que por cierto no entendí bien, comenté brevemente cómo poner en marcha un servidor de FTP anónimo usando VSFTPD. Sin embargo, el tema tiene mucho más que decir, por lo que aquí viene esta entrada que va a complementar a otras dos ya aparecidas anteriormente:</p><ul><li><a
href="http://www.linuxhispano.net/2010/09/14/configurar-servidor-ftp-en-linux-con-vsftpd/" target="_blank">Configurar un servidor FTP en Linux con VSFTPD</a></li><li><a
href="http://www.linuxhispano.net/2011/02/07/configurar-vsftp-para-conexiones-seguras-tlssslsftp/" target="_blank">Configurar VSFTPD para conexiones seguras (TLS/SSL/SFTP)</a></li></ul><p><strong>Nuevo fichero de configuración</strong></p><p>Para no interferir directamente con el fichero <em>vsftpd.conf </em>vamos a crear otro llamado <em>vsftpd-anon.conf</em> en el que indicaremos expresamente las opciones para el FTP anónimo. Veamos una a una las opciones que incluiremos en dicho fichero y por qué.</p><p><strong>Escucha de forma autónoma</strong></p><pre>listen=YES</pre><p>El servidor se encargará de escuchar las peticiones por sí mismo. La otra opción, ponerlo a NO, requiere que <a
target="_blank" href="http://es.wikipedia.org/wiki/Xinetd" target="_blank">xinetd </a>se encargue de controlar las llamadas. La configuración extra que requiere no es el objeto de esta entrada, así que dejaremos que VSFTPD trabaje de forma autónoma.</p><p><strong>Usuarios locales y acceso anónimos</strong></p><pre>local_enable=NO
anonymous_enable=YES</pre><p>No permitimos que los usuarios locales inicien sesión en el servidor y permitimos que existan entradas anónimas.</p><p><strong>Escritura</strong></p><pre>write_enable=NO</pre><p>Puesto que estamos hablando de un servidor anónimo, lo lógico es que no existan escrituras.</p><p><strong>Raíz accesos anónimos</strong></p><pre>anon_root=/var/ftp</pre><p>Creamos el directorio <em>/var/ftp</em>, en caso de que no exista ya y con esta opción lo asignamos como raíz para los accesos de usuarios anónimos.</p><p><strong>Tasa máxima de subida</strong></p><pre>anon_max_rate=1048576</pre><p>Limitamos la tasa máxima de descarga (en bytes por segundo) para conexiones anónimas. En este caso lo he limitado a 1GB/s, dependiendo de vuestra línea deberéis modificar ese valor para evitar que las conexiones de usuarios anónimos os dejen sin velocidad de subida. Si ponemos 0 no existe límite.</p><p><strong>Log</strong></p><pre>xferlog_enable=YES</pre><p>Activamos el log del sistema (por defecto estará en <em>/var/log</em>).</p><p><strong>Dirección y puerto de escucha</strong></p><pre>listen_address=mi_direccion_ip
listen_port=21</pre><p>Indicamos la dirección y el puerto de escucha.</p><p><strong>Fichero completo</strong></p><p>Ya tenemos listo el fichero de configuración al completo. Os lo dejo tal cuál por si queréis copiarlo y pegarlo:</p><pre># Obligatorias
listen=YES
local_enable=NO
anonymous_enable=YES
write_enable=NO
anon_root=/var/ftp
# Opcionales
anon_max_rate=1048576
xferlog_enable=YES
listen_address=mi_direccion_ip
listen_port=21</pre><p><strong>Arranque y parada del servicio</strong></p><p>Si ejecutamos la orden: <em>service vsftpd restart</em>, reiniciaremos el servidor VSFTPD con su fichero de configuración original. Para iniciarlo con el que acabamos de crear, deberemos especificárselo en forma de párametro (como usuario root):</p><pre>vsftpd /etc/vsftpd/vsftpd-anon.conf</pre><p>Para parar el servicio:</p><pre>killall vsftpd</pre><p><strong>Compartir ficheros y directorios</strong></p><p><strong> </strong>Tenemos dos opciones para poner en el servidor FTP disponibles ficheros y directorios:</p><ol><li>Copiarlos y pegarlos directamente, con lo que conlleva: pérdida de tiempo y doble consumo de espacio</li><li>Unir mediante montajes los directorios que queramos compartir</li></ol><p>Seguro que también pensáis que más directo que el punto 2, sería crear enlaces simbólicos. VSFTPD no permite el uso de estos enlaces porque al &#8220;enjaular&#8221; los datos <em>/var/ftp</em> aunque el enlace esté hecho, la llamada al sistema es al directorio real y se cancela la petición.</p><p>La solución es usar montajes con el parámetro <a
target="_blank" href="http://aplawrence.com/Linux/mount_bind.html" target="_blank">bind</a>. Para ello sólo tendremos que hacer lo siguiente:</p><pre>mount --bind /ruta/a/compartir /var/ftp/pub</pre><p>Con esto tendremos los directorios o carpetas compartidas en el directorio público de nuestro FTP sin tenerlas que haber copiado previamente.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/02/17/configurar-un-servidor-de-ftp-anonimo-con-vsftpd/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Permitir conexiones entrantes a un servidor PostgreSQL</title><link>http://www.linuxhispano.net/2011/02/15/permitir-conexiones-entrantes-a-un-servidor-postgresql/</link> <comments>http://www.linuxhispano.net/2011/02/15/permitir-conexiones-entrantes-a-un-servidor-postgresql/#comments</comments> <pubDate>Tue, 15 Feb 2011 13:48:04 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[acceso]]></category> <category><![CDATA[base de datos]]></category> <category><![CDATA[cliente]]></category> <category><![CDATA[configuración]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[postgresql]]></category> <category><![CDATA[red hat]]></category> <category><![CDATA[scientific linux]]></category> <category><![CDATA[servidor]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=5194</guid> <description><![CDATA[Para los que venimos del mundo de MySQL y nunca antes hemos utilizado PostgreSQL, la configuración de los accesos externos a la base de datos puede parecernos algo confusa. El mecanismo, sin entrar en la tabla de gestión de usuarios, &#8230; <a
href="http://www.linuxhispano.net/2011/02/15/permitir-conexiones-entrantes-a-un-servidor-postgresql/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Para los que venimos del mundo de <a
target="_blank" href="http://es.wikipedia.org/wiki/MySQL" target="_blank">MySQL </a>y nunca antes hemos utilizado <a
target="_blank" href="http://es.wikipedia.org/wiki/PostgreSQL" target="_blank">PostgreSQL</a>, la configuración de los accesos externos a la base de datos puede parecernos algo confusa. El mecanismo, sin entrar en la tabla de gestión de usuarios, es algo más complejo pero tiene más posibilidades que en la base de datos recién adquirida por <a
target="_blank" href="http://es.wikipedia.org/wiki/Oracle_Corporation" target="_blank">Oracle</a>.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/02/logo_postgres.gif"><img
class="aligncenter size-full wp-image-5285" title="logo_postgres" src="http://www.linuxhispano.net/wp-content/uploads/2011/02/logo_postgres.gif" alt="" width="500" height="396" /></a></p><p>Veamos los pasos a dar.</p><p><strong>1. Acceder al sistema</strong></p><p>Para poder seguir los pasos, deberemos estar dentro del sistema, en la terminal del mismo. Si no tenemos acceso físico, podemos conectar vía ssh.</p><pre>$ ssh miusuario@miservidorpgsql</pre><p><strong>2. Autenticarnos como usuario postgres</strong></p><p>Una vez dentro del sistema, podemos hacer las operaciones como <em>root</em>, pero por seguridad o por si no disponemos de tales credenciales, lo mejor es actuar como usuario <em>postgres</em>:</p><pre>su postgres</pre><p><strong>3. Permitir conexiones de clientes desde un determinado rango</strong></p><p>Llegamos a uno de los puntos importantes de la cuestión, el fichero <em>pg_hba.conf</em>. Su situación exacta dependerá de vuestra instalación, pero lo encontraréis en una de estas dos rutas:</p><ul><li><em>/var/lib/pgsql/data/pg_hba.conf </em>(en mi instalación lo tengo ahí, utilizo <a
target="_blank" href="http://es.wikipedia.org/wiki/Scientific_Linux" target="_blank">Scientific Linux</a>, una distribución derivada de <a
target="_blank" href="http://es.wikipedia.org/wiki/Red_Hat_Enterprise_Linux" target="_blank">Red Hat</a>)</li><li><em>/etc/postgresql/main/pg_hba.conf</em></li></ul><p>Dentro de este fichero, al final del mismo, veremos algo así:</p><pre># TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
# "local" is for Unix domain socket connections only
local   all         all                               ident
# IPv4 local connections:
host    all         all         127.0.0.1/32          ident
# IPv6 local connections:
host    all         all         ::1/128               password</pre><p>¿Qué significa esto? Veamos columna a columna:</p><ul><li>Tipo: básicamente conexión local o conexión remota (<em>host</em>).</li><li>Base de datos: base de datos a las que afecta la regla. Si queremos todas, usamos el comodín <em>all.</em></li><li>Usuario: usuarios a los que afecta la regla, si queremos que afecte a todos, usamos también <em>all</em>.</li></ul><p>Nos paramos ahora en los dos apartados que más atención requieren.</p><p><strong>3.a Dirección</strong></p><p>En esta columna definimos, las direcciones IP (podemos también usar IPv6), desde las que podremos conectarnos a PostgreSQL. Usaremos la fórmula dirección/máscara:</p><ul><li>Una sola dirección: <em>150.100.100.100/32</em></li><li>O un rango (ampliemos el mismo de antes): <em>150.100.100.0/24 (256 direcciones)</em></li></ul><p><strong>3.b Método</strong></p><p>Aunque hay <a
target="_blank" href="http://www.postgresql.org/docs/8.2/static/auth-pg-hba-conf.html" target="_blank">multitud de métodos para utilizar</a> (incluyendo conexiones <a
target="_blank" href="http://es.wikipedia.org/wiki/LDAP" target="_blank">LDAP</a>, <a
target="_blank" href="http://es.wikipedia.org/wiki/Kerberos" target="_blank">Kerberos </a>o <a
target="_blank" href="http://es.wikipedia.org/wiki/Pluggable_Authentication_Modules" target="_blank">PAM</a>), explico los tres más básicos:</p><ul><li><em>ident</em>: utiliza el usuario del sistema desde el que se está intentado conectar.</li><li><em>trust</em>: deja todos los accesos sin necesidad de autenticarse (sólo recomendable para conexiones desde el equipo local).</li><li><em>password</em>: identificación con usuario/contraseña, es la más típica y es la recomendable para conexiones desde clientes como <a
target="_blank" href="http://www.sqlmanager.net/products/postgresql/manager" target="_blank">EMS PostgreSQL Manager</a>.</li></ul><p>Una línea de ejemplo, para darle acceso a todos los usuarios, a todas las base de datos, desde el rango de IP explicado antes, usando autenticación con usuario y contraseña, sería la siguiente:</p><pre>host    all         all         150.100.100.0/24          password</pre><p><strong>4. Habilitar conexiones al socket desde clientes que no sean el <em>host </em>local</strong></p><p>Al igual que en MySQL hay que configurar el <a
target="_blank" href="http://dev.mysql.com/doc/refman/5.5/en/can-not-connect-to-server.html" target="_blank">bind-adress</a> en <em>my.conf</em>, en PostgreSQL tenemos que hacer algo análogo.</p><p>Para versiones 8.x en adelante el procedimiento es el siguiente. Buscamos el fichero<em> postgresql.conf</em> en:</p><ul><li><em>/var/lib/pgsql/data/postgresql.conf</em></li><li><em>/etc/postgresql/8.2/main/postgresql.conf</em></li></ul><p>Y buscar dentro del mismo la siguiente línea:</p><pre>listen_addresses='localhost'</pre><p>Para sustituirla, por el comodín (para todas las IP, es una opción segura, tened en cuenta que tenemos también un filtro en el fichero <em>pg_hba.conf</em>.</p><pre>listen_addresses='*'</pre><p>O definir algunas direcciones IP en concreto:</p><pre>listen_addresses='150.100.100.100 150.100.100.101'</pre><p><strong>5. Reiniciar servicio</strong></p><p>Reiniciamos el servicio para que el servidor cargue los nuevos valores (como <em>root</em>):</p><pre>$ service postgresql restart</pre><p><strong>6. Abrir entrada en iptables</strong></p><p><strong> </strong>Finalmente, nos aseguramos de que <a
target="_blank" href="http://es.wikipedia.org/wiki/Netfilter/iptables" target="_blank">iptables </a>no corta la entrada (el puerto de PostgreSQL es el 5432 por defecto, si lo cambiáis, cambiadlo aquí también):</p><pre>iptables -A INPUT -p tcp -s 0/0 --sport 1024:65535 -d ip_cliente \
 --dport 5432 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -s ip_cliente --sport 5432 -d 0/0 \
 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT</pre><p><strong>7. Probar</strong></p><p>Desde un cliente gráfico o desde el cliente en línea de comandos, probamos la configuración (suponemos que desde el equipo al que estamos dando acceso):</p><pre>$ psql -h ip_servidor -U miusuario</pre><p>Y con esto debería ir todo sin problemas. Las posibilidades de PostgreSQL son enormes, empezando por este tipo de configuraciones. Ahora que son  tiempos oscuros para MySQL por culpa de Oracle, no viene mal acordarse de esta base de datos que tantas alegrías ha dado al software libre, PostgreSQL.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/02/15/permitir-conexiones-entrantes-a-un-servidor-postgresql/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Evitar listado de directorios con Apache</title><link>http://www.linuxhispano.net/2011/02/12/evitar-listado-de-directorios-con-apache/</link> <comments>http://www.linuxhispano.net/2011/02/12/evitar-listado-de-directorios-con-apache/#comments</comments> <pubDate>Sat, 12 Feb 2011 01:38:24 +0000</pubDate> <dc:creator>F. Javier Carazo Gil</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[.htaccess]]></category> <category><![CDATA[apache]]></category> <category><![CDATA[http]]></category> <category><![CDATA[listado]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[web]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=5207</guid> <description><![CDATA[Introducción Una de las acciones básicas de cara a mejorar la seguridad de un sitio web, es evitar que el servidor devuelva los listados del contenido de los directorios que son públicos. Una solución popular es incluir un fichero index.html &#8230; <a
href="http://www.linuxhispano.net/2011/02/12/evitar-listado-de-directorios-con-apache/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><strong>Introducción</strong></p><p>Una de las acciones básicas de cara a mejorar la seguridad de un sitio web, es evitar que el servidor devuelva los listados del contenido de los directorios que son públicos. Una solución popular es incluir <strong>un fichero <em>index.html</em> vacío en todos los directorios</strong> que no deben ser listados o que no tienen un fichero que realice alguna función. Si estamos hablando de un sitio web con cientos o miles de directorios, esta opción queda descartada directamente.</p><p><strong>.haccess</strong></p><p>La alternativa es simple si estamos usando <a
target="_blank" href="http://es.wikipedia.org/wiki/Servidor_HTTP_Apache" target="_blank">un servidor web Apache</a>, utilizar las bondades del fichero <a
target="_blank" href="http://es.wikipedia.org/wiki/.htaccess" target="_blank">.htaccess</a>. La opción más directa es deshabilitar todos los listados de directorios en nuestro sitio.</p><p><a
href="http://www.linuxhispano.net/wp-content/uploads/2011/02/apache-logo.png"><img
class="aligncenter size-full wp-image-5242" title="apache-logo" src="http://www.linuxhispano.net/wp-content/uploads/2011/02/apache-logo.png" alt="" width="216" height="83" /></a></p><p><strong>Desactivar listados</strong></p><p>En el raíz de nuestro sitio, creamos un fichero .htaccess (o añadimos al que ya tenemos) la siguiente línea:</p><pre>Options -Indexes</pre><p>De esta forma evitamos los listados en cualquier directorio de nuestro sitio. La opción contraria, para un directorio en particular o porque queramos habilitar esta característica en un sitio donde el proveedor la tiene deshabilitada por defecto es la siguiente:</p><pre>Options +Indexes</pre><p><strong>Estilo de los listados</strong></p><p>Si lo que queremos es tener el listado, tenemos dos opciones, mostrar la lista básica de ficheros:</p><pre>IndexOptions -FancyIndexing</pre><p>O mostrar más información: fechas de modificación, tamaño de ficheros, iconos&#8230;:</p><pre>IndexOptions +FancyIndexing</pre><p><strong>Ignorar ciertos tipos de ficheros</strong></p><p>Otra opción a tener en cuenta es la de ignorar ciertos tipos de ficheros, de forma que podamos listar por ejemplos el contenido multimedia, obviando los ficheros PHP o HTML. Para este ejemplo usaríamos la siguiente instrucción:</p><pre>IndexIgnore *.php *.html</pre><p>Finalmente, podemos mostrar un listado en blanco, es decir, ignorar todos los ficheros. Es otra alternativa a impedir los listados.</p><pre>IndexIgnore *</pre>]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2011/02/12/evitar-listado-de-directorios-con-apache/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Comandos básicos de SVN</title><link>http://www.linuxhispano.net/2010/12/21/comandos-basicos-de-svn/</link> <comments>http://www.linuxhispano.net/2010/12/21/comandos-basicos-de-svn/#comments</comments> <pubDate>Tue, 21 Dec 2010 00:32:25 +0000</pubDate> <dc:creator>Alberto Hornero Luque</dc:creator> <category><![CDATA[Noticias]]></category> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[archivos]]></category> <category><![CDATA[cliente]]></category> <category><![CDATA[linux+]]></category> <category><![CDATA[rapidsvn]]></category> <category><![CDATA[repositorio]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[sincronizar]]></category> <category><![CDATA[svn]]></category> <category><![CDATA[tortoise]]></category> <category><![CDATA[unix]]></category> <category><![CDATA[windows]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=4752</guid> <description><![CDATA[Hasta ahora siempre había utilizado herramientas con interfaz gráfica para interactuar con un repositorio subversion, RapidSVN en Linux y TortoiseSVN en Windows. Esta tarde he tenido que hacer una excepción, haciendo unas prácticas de una asignatura he interactuado con el &#8230; <a
href="http://www.linuxhispano.net/2010/12/21/comandos-basicos-de-svn/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Hasta ahora siempre había utilizado herramientas con interfaz gráfica para interactuar con un <strong>repositorio <em>subversion</em></strong>, <a
target="_blank" href="http://rapidsvn.tigris.org/" target="_blank">RapidSVN</a> en Linux y <a
target="_blank" href="http://tortoisesvn.tigris.org/" target="_blank">TortoiseSVN</a> en Windows.</p><p><img
class="aligncenter size-full wp-image-4753" title="tortoisesvn_linux_hispano" src="http://www.linuxhispano.net/wp-content/uploads/2010/12/tortoisesvn_linux_hispano.jpg" alt="" width="312" height="184" /></p><p>Esta tarde he tenido que hacer una excepción, haciendo unas prácticas de una asignatura he interactuado con el repositorio SVN directamente con el comando <strong>svn</strong>; pienso que usarlo mediante comando es bastante útil, sobre todo en entornos en los que usar una GUI es imposible o para solucionar algún problema, preferimos hacerlo directamente sin una vista sobre una aplicación más pesada. Sea cual sea vuestro caso, a continuación os dejo un breve resumen de los <strong>comandos básicos de svn</strong>:</p><h1>svn import</h1><p>A través de este comando <strong>enviaremos de forma recursiva</strong> el contenido de una ruta a un servidor SVN. Si omitimos la ruta local se establecerá el directorio actual. Un ejemplo de uso podría ser:</p><blockquote><p>ahornero@6581-D:~/practica$ svn import &#8211;username ahornero &#8211;password 12987Guh2436 https://ahornero.com/svn/practica</p></blockquote><h1>svn checkout o svn co</h1><p>Este comando se utiliza para hacernos directamente con un <strong>árbol de un directorio</strong> del repositorio SVN. Un ejemplo de uso podría ser el siguiente:</p><blockquote><p>ahornero@6581-D:~/practica$ svn co &#8211;username ahornero &#8211;password 12987Guh2436 https://ahornero.com/svn/practica</p></blockquote><h1>svn add</h1><p>Cuando se <strong>crea un nuevo archivo o directorio</strong>, hemos de indicarselo explicitamente al servidor SVN. Es importante saber que el hecho de indicar no significa subirlo, hasta no hacer un commit no se interactuará con el servidor en este sentido.</p><h1>svn delete</h1><p>Análogo a <strong>add</strong> para eliminar, y uso similar.</p><h1>svn status</h1><p>Con este comando imprimiremos el estado de los directorios y archivos. Si hemos hecho cambios locales, se mostrarán los elementos modificados localmente. Si utilizamos el parámetro<em> <strong>&#8211;verbose</strong></em>, obtendremos información de la revisión de cada elemento. Con el parámetro <strong><em>&#8211;show-updates</em></strong>, mostraremos los que están fuera de fecha (<em>out-of-date</em>)</p><h1>svn update o svn up</h1><p>Así, <strong>sincronizaremos nuestro directorio local</strong> con el servidor. Si hemos hecho cambios locales, trataremos de combinar los cambios en el servidor con los cambios en el equipo; es importante destacar que este comando no afecta al servidor, si no al equipo local únicamente.</p><h1>svn commit o svn ci</h1><p>Este comando <strong>envía recursivamente los cambios al servidor SVN</strong>. Se hará entonces un commit de los archivos modificados, añadidos y borrados. Hemos de tener en cuenta que para evitar que afecte a todo el directorio, podemos indicar explícitamente la ruta específica o los archivos afectados, simplemente los añadimos al final del comando.<br
/> A través de la opción -m podemos añadir un mensaje determinado, la forma de usar es la siguiente:</p><blockquote><p>ahornero@6581-D:~/practica$ svn commit -m &#8220;Registro alpha actualizado&#8221;.</p></blockquote><h1>svn diff</h1><p>Este comando es<strong> similar al conocido comando <a
target="_blank" href="http://en.wikipedia.org/wiki/Diff" target="_blank">diff</a></strong> de UNIX, de hecho, la forma de utilizarlo es similar. Podremos saber que cambios existen entre dos revisiones usándolo <em>svn diff-r revision1:revision2 nombre_archivo</em>. Por ejemplo:</p><blockquote><p>ahornero@6581-D:~/practica$ svn diff -r 145:146 práctica.odt</p></blockquote><p>, lo que retornará los cambios entre la revisión 145 y 146 para el fichero <em>práctica.odt</em>.</p><p>Y esto es todo, ¿alguna duda o sugerencia?</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2010/12/21/comandos-basicos-de-svn/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Instalar y Configurar Samba en Linux</title><link>http://www.linuxhispano.net/2010/12/08/instalacion-y-configuracion-de-samba-en-linux/</link> <comments>http://www.linuxhispano.net/2010/12/08/instalacion-y-configuracion-de-samba-en-linux/#comments</comments> <pubDate>Wed, 08 Dec 2010 20:00:33 +0000</pubDate> <dc:creator>Alberto Hornero Luque</dc:creator> <category><![CDATA[Tutoriales]]></category> <category><![CDATA[configuración]]></category> <category><![CDATA[configurar]]></category> <category><![CDATA[demonio]]></category> <category><![CDATA[ficheros]]></category> <category><![CDATA[instalación]]></category> <category><![CDATA[instalar]]></category> <category><![CDATA[linux+]]></category> <category><![CDATA[samba]]></category> <category><![CDATA[servicio]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[ubuntu]]></category> <category><![CDATA[windows]]></category> <guid
isPermaLink="false">http://www.linuxhispano.net/?p=4570</guid> <description><![CDATA[Suponiendo que todos conocéis SAMBA. Para instalarla dentro de nuestro servidor: Sobre Debian / Ubuntu / y derivados: ahornero@6581-D:~$ sudo apt-get install samba smbfs Sobre Red Hat / CentOS / Fedora: ahornero@6581-D:~$ yum install samba smbfs (como superusuario) Para iniciar, detener o &#8230; <a
href="http://www.linuxhispano.net/2010/12/08/instalacion-y-configuracion-de-samba-en-linux/">Continuar leyendo <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Suponiendo que todos conocéis <a
href="http://www.linuxhispano.net/?s=samba">SAMBA</a>. Para instalarla dentro de nuestro <strong>servidor</strong>:</p><ul><li>Sobre Debian / Ubuntu / y derivados:</li></ul><blockquote><p>ahornero@6581-D:~$ sudo apt-get install samba smbfs</p></blockquote><ul><li>Sobre Red Hat / CentOS / Fedora:</li></ul><blockquote><p>ahornero@6581-D:~$ yum install samba smbfs (como superusuario)</p></blockquote><p><img
class="aligncenter size-full wp-image-4573" title="logo-samba_linux_hispano" src="http://www.linuxhispano.net/wp-content/uploads/2010/12/logo-samba_linux_hispano1.jpg" alt="" width="270" height="123" />Para<strong> iniciar, detener o reiniciar</strong> el servicio:</p><blockquote><p>ahornero@6581-D:~$ /etc/init.d/samba stop / start / restart</p></blockquote><p>ó</p><blockquote><p>ahornero@6581-D:~$ restart smbd</p></blockquote><p><img
class="aligncenter size-full wp-image-4571" title="samba_linux_hispano" src="http://www.linuxhispano.net/wp-content/uploads/2010/12/samba_linux_hispano.jpg" alt="" width="366" height="275" /></p><p>Y para realizar la <strong>configuración de usuarios</strong>, acceso a <strong>directorios</strong> y <strong>permisos</strong>, recomendamos utilizar la aplicación <strong>system-config-samba</strong>; por defecto en CentOS viene instalada. Para instalarla en otros servidores Linux:</p><ul><li>Sobre Debian / Ubuntu / y derivados:</li></ul><blockquote><p>ahornero@6581-D:~$ sudo apt-get install system-config-samba</p></blockquote><ul><li>Sobre Red Hat / CentOS / Fedora:</li></ul><blockquote><p>ahornero@6581-D:~$ yum install system-config-samba</p></blockquote><p>Y esto es todo, ¿alguna duda? Creo que con esto último que os comento se resuelve la gran problemática al usar Samba.</p> ]]></content:encoded> <wfw:commentRss>http://www.linuxhispano.net/2010/12/08/instalacion-y-configuracion-de-samba-en-linux/feed/</wfw:commentRss> <slash:comments>9</slash:comments> </item> </channel> </rss>
