Servidor HTTP Apache en Linux

Discussion in 'Cementerio De Temas' started by Vampyre, Aug 4, 2007.

  1. Vampyre

    Vampyre Usuario Casual nvl. 2
    17/41

    Joined:
    Apr 30, 2007
    Messages:
    2,366
    Likes Received:
    2
    [​IMG]

    Si bien una de las cosas para las que mas se utiliza Linux es para servidores debido a que no tiene costo alguno… Yo personalmente siempre instalo apache en mi Ubuntu/Linux y siempre usaba la carpeta public_html en la home para que los usuarios no tuvieran que tener permisos de administrador y poner sus paginas web en /var/www asi que se usaba /home/usuario/public_html y pueden ver su paginas asi http://localhost/~usuario/.Pero con la llegada de ubuntu 7.04 no me funciono asi que ha buscar se ha dicho y encontre la solución bueno aca les dejo como montar su servidor de una manera bastante rapida.

    Instalando Apache
    Instalando soporte PHP al Servidor HTTP Apache

    Inserta la siguiente línea en el nuevo fichero

    <?php phpinfo(); ?>

    Guarda el fichero editado http://localhost/testphp.php

    MySQL y phpmyadmin para el Servidor HTTP Apache

    le colocas contraseña a phpmyadmin antes de instalar

    Reiniciamos Apache

    y ahora podemos acceder a phpmyadmin

    http://localhost/phpmyadmin/

    Tener el servidor Apache multihosting

    Multihost se refiere a que cada usuario usa una carpeta public_html en su home y asi puedan tener su sitio web facilmente sin ser administradores. Primero veamos si tenemos los modulos para que usen la carpeta si no esta enlazamos los modulos.

    estos son los modulos necesarios:

    Si no estan los enlazamos
    Ahora, cada carpeta /home/usuario/public_html (si existe) de cada usuario del sistema es accesible mediante las URLs:

    http://localhost/~usuario/

    http://127.0.0.1/~usuario/

    http://CUALQUIER-IP-DEL-SISTEMA/~usuario/

    http://CUALQUIER-URL-DEL-SISTEMA/~usuario/

    Para que cada usuario nuevo que creemos disponga de dicha carpeta:

    Se puede cambiar la carpeta por defecto: public_html por otra. Para ello se lo decimos a apache en su fichero /etc/apache2/apache2.conf mediante la línea:

    que cambiaremos por:

    Si cambiamos los ficheros de configuración debemos reiniciar apache:

    La carpeta public_html hay que crearla para cada usuario "esta explicado mas arriba". Además hay que asegurarse que apache tiene permiso para entrar en esas carpetas.

    descomentado el #UserDir public_html

    Supongamos que ya hemos dado de alta al usuario pepe Ahora pepe no tendría más que poner sus web’s en su carpeta /home/pepe/public_html y para verlas desde Internet: http://dominio/~pepe Cuando ‘pepe’ entre por FTP (con su login y password) verá que ya hay creada una carpeta en su esepacio (public_html) y debe saber que lo que quiera publicar tiene que estar dentro de esa carpeta. Pues ahora pepe está contento, ha creado su web personal y le ha dado la url a sus amigos/as para que vean su web, pero resulta que algunos le dicen que no saben poner el "~", que no está en sus teclados [ese carácter especial se pone con la combinación de teclas AltGr+4 o o Alt+126]. Para quitar ese simbolo, que yo lo llamo cola de chancho "lenguaje coloquial". Pondremos un script en perl en el fichero /etc/apache2/httpd.conf [fichero que, en Debian, normalmente estará vacío] de forma que los usuarios puedan acceder a sus web’s mediante: http://dominio/usuario

    Además, para que funcione, debemos instalar el módulo de perl y reiniciar apache:

    Instalando un servidor VsFTPd para MultiHosting

    Para que los usuarios puedan autentificarse desde cualquier parte es necesario tener un Servidor de acceso remoto algo asi como ssh, proftpd o VsFTPd que es bastante rapido y facil de configurar.

    VsFTPd es un servidor de archivos por FTP muy ligero y seguro. Es el recomendado por Debian y Ubuntu, tiene una configuración muy sencilla en un sólo fichero y se adapta muy bien a un servidor multihosting. Por defecto la configuración es la siguiente:

    * Acceso de sólo lectura a los usuarios anónimos
    * Los usuarios anónimos acceden a la carpeta /home/ftp (propiedad del usuario ftp y el grupo nogroup Los usuarios del sistema no pueden acceder a sus carpetas privadas
    * El usuario anónimo podría -si no administramos bien los permisos del sistema- acceder a otras carpetas

    Para más ayuda sobre el archivo de configuración de vsftpd (/etc/vsftpd.conf):

    Procedemos a desactivar el acceso a los usuarios anónimos, permitiendo conectar a los usuarios locales del sistema con su usuario y contraseña propios.

    Buscamos en el archivo esta parte:



    # Allow anonymous FTP? (Beware - allowed by default if you comment this out). anonymous_enable=YES

    #

    # Uncomment this to allow local users to log in.

    #local_enable=YES # # Uncomment this to enable any form of FTP write command.

    #write_enable=YES # # Default umask for local users is 077. You may wish to change this to 022,

    # if your users expect that (022 is used by most other ftpd’s)

    #local_umask=022



    Para que nos quede asi: # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
    anonymous_enable=NO
    #
    # Uncomment this to allow local users to log in.
    local_enable=YES
    #
    # Uncomment this to enable any form of FTP write command.
    write_enable=YES
    #
    # Default umask for local users is 077. You may wish to change this to 022,
    # if your users expect that (022 is used by most other ftpd’s)
    local_umask=022

    Reiniciamos el Seridor

    Y ahora nos podemos conectar por FTP al servidor desde cualquier parde mel mundo conociendo la IP del servidor. Podemos hacerlo más seguro (MUY RECOMENDABLE) haciendo que cada usuario sólo vea su carpeta personal (se denomina chroot) y no pueda salir de ella y visualizar el resto del sistema.
    Buscamos esta parte:

    # You may restrict local users to their home directories. See the FAQ for
    # the possible risks in this before using chroot_local_user or
    # chroot_list_enable below.
    #chroot_local_user=YES

    Para que nos quede asi

    # You may restrict local users to their home directories. See the FAQ for
    # the possible risks in this before using chroot_local_user or
    # chroot_list_enable below.
    chroot_local_user=YES
    Con todo eso tendremos un servidor completo funcionando:D
     
  2. PORTAL FOREVER

    PORTAL FOREVER Invitado

    gracias por el aporte colega
     
  3. pttmix

    pttmix Usuario Nuevo nvl. 1
    17/41

    Joined:
    Jan 13, 2007
    Messages:
    381
    Likes Received:
    3
    gracias princesa de la oscuridad , se agradece el aporte, pero en gutzy funcionara????

    ---- tengo el despelote con el server de pruebas y no corre el php