Upload
hary
View
21
Download
6
Embed Size (px)
Citation preview
INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA
Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 1
SERVIDOR WEB CON APACHE + MYSQL + PHP EN CENTOS
Instalamos Los Paquetes Principales yum -y install ntp httpd mysql-server php php-mysql php-mbstring php-mcrypt phpmyadmin
Configuramos El Arranque De MYSQL Y Lo Iniciamos
chkconfig mysqld on /etc/init.d/mysqld start
Aqu Le Damos Seguridad A Nuestro MYSQL, Gracias A Este Modulo
mysql_secure_installation
Configuramos el PHPMYADMIN para poder entrar, ya que por defecto solo el LOCALHOST puede acceder a l, comentamos unas lneas.
gedit /etc/httpd/conf.d/phpmyadmin.conf # # Web application to manage MySQL # # # Order Deny,Allow # Deny from all # Allow from 127.0.0.1 # Alias /phpmyadmin /usr/share/phpmyadmin Alias /phpMyAdmin /usr/share/phpmyadmin Alias /mysqladmin /usr/share/phpmyadmin
Cambiamos La Autenticacin Del PHPMYADMIN Desde Cookie Hasta HTTP
gedit /usr/share/phpmyadmin/config.inc.php [...] /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'http';
INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA
Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 2
[...]
Configuramos El Arranque De Apache Y Lo Iniciamos
chkconfig -httpd on /etc/init.d/httpd start
Luego ya probamos desde cualquier navegador el acceso a nuestro servidor web, al PHPMYADMIN, etc.
http://jaimebolivar.com/phpmyadmin/ http://192.168.1.36/phpmyadmin/ http://localhost/phpmyadmin/
Editando El Archivo De Configuracin De Apache
gedit /etc/httpd/conf/httpd.conf UTF-8 y codificacin de documentos
UTF-8 UTF-8 es un mtodo de codificacin de ASCII para Unicode (ISO-10646), el Conjunto de Caracteres Universal o UCS. ste codifica la mayora de los sistemas de escritura del mundo en un solo conjunto de caracteres, permitiendo la mezcla de lenguajes y guiones en un mismo documento sin la necesidad de ajustes para realizar los cambios de conjuntos de caracteres. Cualquier sitio de red que haga uso de bases de datos y documentos HTML suele toparse con problemas cuando se trata de lidiar con el tipo de codificacin (UTF-8, ISO-8859-1, etc.), puesto que en algunos casos, por citar un ejemplo, los caracteres latinos se muestran incorrectamente por el cambio de codificacin. Debido a su conveniencia actualmente se est adoptando UTF-8 como codificacin para todo, sin embargo an hay mucho material codificado en, por ejemplo, ISO-8859-1. Lo correcto es codificar los documentos codificados en ISO8859-1 y otras tablas de caracteres hacia UTF-8, utilizando mtodos como el siguiente: cd /var/www/html/ for f in *.html do vi -c ":wq! ++enc=utf8" $f done Si desea continuar y no aceptar el nuevo estndar, tambin puede desactivar la funcin en
INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA
Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 3
Apache que establece UTF-8 como codificacin predefinida. Edite el fichero /etc/httpd/conf/httpd.conf y localice lo siguiente: AddDefaultCharset UTF-8 Cambie lo anterior por esto otro: AddDefaultCharset Off
Ficheros de configuracin Cualquier ajuste que se requiera realizar, ya sea para configurar Sitios de Red virtuales u otra funcionalidad adicional, se puede realizar sin tocar el fichero principal de configuracin, utilizando cualquier fichero con extensin *.conf dentro del directorio /etc/httpd/conf.d/
cd /etc/httpd/conf.d/
Directorios virtuales Si, por ejemplo, se quisiera aadir el alias para un directorio localizado en /var/contenido/varios/ y el cual queremos visualizar como el directorio /varios/ en Apache, lo primero ser crear el directorio:
mkdir -p /var/contenidos/varios
mkdir -p /var/www/html/varios
Y se crea un fichero que se denominar arbitrariamente como /etc/httpd/conf.d/aliases.conf con el siguiente contenido: alias /varios /var/contenidos/varios
Si trata de acceder hacia este nuevo directorio virtual con el navegador, notar que no est permitido el acceso. Para poder acceder deber haber un documento ndice en el interior (index.html, index.php, etc) o bien que dicho directorio sea configurado para mostrar el contenido del siguiente modo: alias /varios /var/contenidos/varios
Options Indexes
INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA
Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 4
El parmetro Indexes indica que se deber mostrar el ndice de contenido del directorio. Si se requiere que este directorio tenga mayor funcionalidad, se pueden aadir ms opciones, como por ejemplo: Alias /varios /var/contenidos/varios
Options Indexes Includes FollowSymLinks
AllowOverride all
El parmetro FollowSymLinks posibilita poder colocar enlaces simblicos dentro del directorio los cuales se seguirn. El parmetro Includes especifica que se permite la utilizacin de los SSI (Server Side Includes) que posibilitan utilizar funciones como autenticacin. El parmetro AllowOverride all posibilita utilizar ficheros .htaccess. Reinicie o recargue Apache y acceda hacia http://127.0.0.1/varios/ con cualquier navegador de red y visualice el resultado. Redireccin de directorios Cuando sea necesario, es posible configurar un directorio en particular para Apache redirija de modo transparente ste y su contenido hacia cualquier otra direccin.
Redirect 301 /webmail http://mail.su-dominio.net/
En el ejemplo anterior, se indica que si se trata de acceder hacia el subdirectorio /webmail en el servidor, Apache deber redirigir hacia http://mail.su-dominio.net/. El nmero 301 corresponde al mensaje del protocolo HTTP para indicar que la redireccin es permanente. Si por ejemplo hubiese un objeto en /webmail, como por ejemplo /webmail/estadisticas/estadisticas.php, Apache realizar el re-direccionamiento transparente hacia http://mail.su-dominio.net/estadisticas/estadisticas.php. Tipos de MIME Si por ejemplo se quisiera aadir algn tipo de extensin y tipo MIME, como por ejemplo Ogg, se podra generar un fichero que denominaremos arbitrariamente como el fichero /etc/httpd/conf.d/extensiones.conf con el siguiente contenido:
AddType application/ogg .ogg
AddDescription "Ogg Vorbis Audio" .ogg
AddIcon /icons/sound2.png .ogg
Soporte para CGI con extensin *.cgi Si se quisiera aadir que se reconociera la extensin *.cgi como un guin CGI (Common Gateway Interface), solo bastar aadir un fichero que denominaremos, arbitrariamente, /etc/httpd/conf.d/cgi.conf con el siguiente contenido: AddHandler cgi-script .cgi
INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA
Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 5
Probando la configuracin Utilice el editor de texto de su preferencia para crear el fichero /var/www/cgi-bin/tiempo.cgi. Este deber llevar lo siguiente como contenido: #!/usr/bin/perl
print "content-type: text/html\n\n";
print scalar localtime;
print "\n";
Deberemos de cambiar el permiso del fichero anterior con la siguiente lnea de mandato: chmod 755 /var/www/cgi-bin/tiempo.cgi
Utilice el navegador de red que prefiera y apunte ste hacia http://127.0.0.1/cgi-bin/tiempo.cgi. Si el navegador nos da una salida similar a la siguiente, se habr configurado exitosamente Apache para ejecutar guiones CGI: Tue Jul 05 22:10:41 2005
Problemas posteriores
Error ms comn nmero 1
Forbidden
You don't have permission to access /algun/directorio/guion.cgi on this server
Significa que el archivo no cuenta con los permisos apropiados de lectura, escritura y
ejecucin. La mayora guiones CGI que encontrar en Internet necesitarn al menos permiso 755
para poder ser utilizados.
Error ms comn nmero 2
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to
complete your request.
Significa que hay problemas con el guin CGI en si y no con Apache. En la mayora de los casos
se trata de ficheros que fueron elaborados desde un editor de texto en Windows, cuyo retorno de
carro es distinto al de los sistemas operativos basados sobre UNIX, por lo cual se deber
utilizar el mandato dos2unix sobre dichos ficheros. En otros casos, algo menos frecuente, se
requerir que el administrador revise lnea por lnea para localizar un posible error o
parmetro incorrecto. Cuando aplique, verifique que la primera lnea del guin que apunta hacia
donde se encuentra el mandato perl sea correcta. Verifique tambin si el directorio que albergue
el guin CGI requiere algn permiso en particular, como sera 777 en el caso de algunos guiones
CGI.
INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA
Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 6
Robo de imgenes
Suele ocurrir que los administradores de algunos sitios encuentran fcil utilizar imgenes y
otros tipos de contenido, vinculando desde sus documentos hacia los objetos en el servidor. Esto
consume ancho de banda adicional y es una prctica poco tica. En el siguiente ejemplo,
considerando que se tiene un directorio /var/www/html/imagenes, y se desea proteger ste para
que solo se permita utilizar su contenido si es referido desde el mismo servidor, se utilizara
lo siguiente:
# Se permite al propio servidor
SetEnvIf Referer "^http://www.tjaimebolivar.com/" local_referal
# se permite aceder directamente a la imagen o bien si
# no se especifica en el navegador la informacin de referente.
SetEnvIf Referer "^$" local_referal
Order Deny,Allow
Deny from all
Allow from env=local_referal
La configuracin anterior puede aadirse en cualquier fichero *.conf dentro del directorio
/etc/httpd/conf.d/.