20
República Bolivariana de Venezuela Ministerio del Poder Popular para la Educación Universitaria Universidad Politécnica Territorial del Estado Portuguesa “Juan de Jesús Montilla” Programa Nacional de Formación en Informática Acarigua Estado Portuguesa MANUAL DE INSTALACIÓN Sistema de Información de Protección Civil y Administración de Desastres Araure. SIPCADA Acarigua, 2014.

Manual de instalacion sipcada

Embed Size (px)

DESCRIPTION

 

Citation preview

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación Universitaria

Universidad Politécnica Territorial del Estado Portuguesa

“Juan de Jesús Montilla”

Programa Nacional de Formación en Informática

Acarigua Estado Portuguesa

MANUAL DE

INSTALACIÓN

Sistema de Información de Protección Civil y

Administración de Desastres Araure.

SIPCADA

Acarigua, 2014.

Lo principal es instalar un servidor para páginas PHP y PostGres SQL, recomendamos el uso del servidor

de páginas Web Apache y del recurso de cliente grafico para administración de la base de datos pgAdmin

III.

Instalación servidor web Apache en Ubuntu 12.04:

Paso 1: Lo primero será instalar el paquete apache2 con sus dependencias:

sudo apt-get install apache2

Paso 2: Una vez hecho esto, comprobamos que está funcionando correctamente, abrimos un

navegador y escribimos localhost:

También podemos comprobarlo mediante el comando /etc/init.d/apache2 status:

Ya se tiene el servidor apache instalado y funcionando!

Si únicamente quisiéramos alojar una página simple (HTML y CSS) ya estaríamos preparados

para hacerlo, únicamente habría que situar los archivos de la página dentro de la carpeta /var/www,

reemplazando el index.html por defecto con el de nuestra página web.

Antes de continuar se muestra un pequeño resumen sobre las carpetas y archivos de Apache que

se utilizan con más frecuencia:

Opciones de ejecución apache:

Apache tiene varias opciones de ejecución entre las que se tienen:

root@server1:~# /etc/init.d/apache2 {start|stop|restart|reload|forcereload}

Como se puede observar el servidor apache tiene varias opciones:

start: Inicia el servicio de apache.

stop: Detiene el servicio de apache.

restart: Reinicia el servicio de apache.

reload: Recarga los últimos cambios registrados dentro del servicio de apache.

Force-reload: Forza a realizar una recarga de los últimos cambios realizados dentro del servicio

de apache.

Ejemplo: Como reiniciar el servidor apache.

root@server1:~# /etc/init.d/apache2 restart

* Restarting web server apache2 [ OK ]

root@server1:~#

Finalmente unos comandos que pueden ejecutar, obviamente como root, desde la consola:

Opción de Descripción:

start Inicia el servicio de apache.

stop Detiene el servicio de apache.

reload Reinicia el servicio de apache.

fullstatus Muestra un reporte del estado completo de apache.

status Muestra un reporte del estado breve de apache.

graceful Reinicia delicadamente el servicio apache enviando una señal SIGUSR1.

configtest Corre una prueba hacia los archivos de configuración de apache, en caso de que

devuelva Syntax OK indica que toda la configuración de apache está bien o marca el error.

Instalación del Módulo PHP en Ubuntu 12.04:

Paso 1: Por defecto no tenemos el módulo para PHP disponible, así que tendremos que instalarlo:

sudo apt-get install php5

Paso 2: Tras instalarlo volvemos a /etc/apache2/mods-available y comprobamos que ahora se

encuentra disponible el módulo PHP: Módulos de Apache

Comprobamos que se encuentra activo dentro de /etc/apache2/mods-enabled:

Módulos activos de Apache

Si por algún motivo no se iniciase automáticamente tras la instalación, lo activaríamos con el

comando a2enmod nombremodulo, para deshabilitar un módulo utilizaríamos el comandoa2dismod

nombremodulo.

Recuerda: Cada cambio que realicéis en el servidor necesita un reinicio (sudo service apache2

reload) para que se haga efectivo.

Vamos a crear una página simple con código PHP para comprobar que funciona. Edito el

archivo/var/www/getupcity1/index.html y lo renombro a index.php, y le inserto un código PHP a la

página: Renombrando archivo Index

Insertando código PHP en la Web:

Accedo a http://www.getupcity1.com desde el navegador:

Ya tenemos todo funcionando!

Instalar y configurar postgresql en Ubuntu Server 12.04:

En Ubuntu disponemos paquetes para varias versiones de PostgreSQL: desde la 7.4, 8.0, 8.1 y

8.2, 9.1 de modo que instalaremos la última versión a no ser que necesitemos alguna anterior. Los

paquetes necesarios para una instalación completa son los de la parte cliente (postgresql-client) y los de

la parte servidora (postgresql). En un ordenador que usemos como cliente sólo necesitamos los paquetes

del cliente. También es recomendable instalar un cliente gráfico que nos facilitará la interacción con el

servidor. Para nuestro caso usaremos pgAdmin III.

En nuestro articulo instalaremos el Servidor de Base de datos PostgreSQL en el Ubuntu Server

12.04, más la parte gráfica pgAdmin III

Todas las instalaciones se deberán hacer como súper usuario así que lo primero que se debe

hacer después de conectarnos es pasarnos a utilizar esa cuenta con los derechos de administración.

Empezamos en el Servidor UBUNTU Server 12.04

Instalamos el Servidor desde el repositorio de paquetes, pero antes actualizamos los repositorios

--ver si hay algo nuevo--, es decir actualizar la lista de todos los paquetes, con la dirección de dónde

obtenerlos para que a la hora de hacer la búsqueda y su posterior descarga, sea más rápida. Ojo con apt-

get upgrade porque lo que hacemos es una actualización de nuestro sistema con todas las posibles

actualizaciones que pudiera haber, es decir no sólo actualiza nuestro sistema operativo sino que también

las aplicaciones que están contenidas en los repositorios:

apt-get update

Al finalizar tecleamos la instalación del servidor

apt-get install postgresql

Si queremos instalar el cliente para postgresql en la misma máquina ejecutamos el

comando

apt-get install postgresql-client (pero lo dejaremos para la maquina cliente)

Esto nos traerá la última versión compilada y disponible en el repositorio.

Por razones de seguridad estableceremos la nueva contraseña al usuario del sistema creado por

PostgreSQL:

passwd postgres

Cambiar los privilegios de acceso al shell del usuario postgresql con el siguiente comando:

vipw

Cambiamos el shell del usuario postgres de "/bin/false" a "/bin/bash". Luego salimos grabando pulsando

la tecla escape ":wq". Para verificar si la instalación fue satisfactoria accedemos a la shell del servidor de

bases de datos utilizando la cuenta del usuario postgres con la plantilla "template1" que crea por defecto

su postgres -c "psql template1"

Si el acceso ha sido satisfactorio cambiamos la contraseña al usuario predeterminado del

servidor de bases de datos:

Nota: Puede darse el caso de que con el comando anterior no accedas a la base de datos

directamente. En ese caso tendrás que hacerlo en dos pasos: Primero pasarte al usuario postgres y después

acceder a la base de datos utilizando el cliente psql en la consola con los siguientes comandos:

su postgres

psql -h tempate1 -U postgres

template1=# ALTER USER postgres WITH PASSWORD 'nueva_contraseña';

Te saldrá el siguiente mensaje confirmando la operación:

ALTER ROLE

Para salir de la shell del servidor de bases de datos con el comando \q :

template1=# \q

Hasta el momento solo se ha configurado el servidor para permitir las conexiones locales con el usuario

postgres.

Instalación de PHPpgMyAdmin: (Cliente grafico para la administración de la base de datos

Postgres):

phpPgAdmin en Ubuntu 12.04

Acerca phpPgAdmin: es una aplicación web basada en PHP que ofrece una interfaz gráfica de usuario

para el sistema postgresql. Se lleva a cabo una función similar a phpMyAdmin, que permite a los usuarios

manipular la información de base de datos en un programa visual en MySQL.

Paso 1: Install phpPgAdmin

Comience por asegurarse de que el repositorio apt-get es hasta la fecha:

sudo apt-get update

Una vez que el proceso ha terminado, seguir adelante e instalar postgresql, dependencias

adicionales útiles y phpgadmin. Durante su instalación, phpPgAdmin también instalará los paquetes

php y apache requeridos.

sudo apt-get install postgresql postgresql-contrib phpPgAdmin

Iniciar Apache:

sudo inicio apache2 servicio

Paso 2: Ajustar la configuración de seguridad:

Una vez phpgadmin está instalado, es posible que pueda acceder a él entrando enSuDirecciónIP /

phpPgAdmin.

Puede ejecutar el siguiente comando para mostrar la dirección IP de su servidor.

ifconfig eth0 | grep inet | awk '{print $ 2}'

Usted puede encontrar, sin embargo, que el intento de llegar a la página phpPgAdmin puede

resultar en un error 403 prohibido.

Con el fin de hacer esta página accesible, hay que ponerlo a disposición de todos los visitantes

(no te preocupes, lo bloqueamos en el paso siguiente):

sudo nano / etc/apache2/conf.d/phppgadmin

En el archivo encontrará la siguiente sección y descomentar la línea "permitirá de todo". La

sección debería tener este aspecto:

Para negar, permitir

deny from all

permitir de 127.0.0.0/255.0.0.0 :: 1/128

permitir de todo

Configure el Autenticación htaccess

Con el archivo htaccess. Permitió, podemos proceder a configurar un usuario nativo cuyo inicio

de sesión que se requeriría para acceder incluso la página phpPgAdmin login.

Comience por crear el fichero de configuración de su sitio la sección de autenticación

htaccess. Por el bien de ejemplo, voy a utilizar el sitio predeterminado:

sudo nano / etc/apache2/sites-enabled/000-default

Seguimiento mediante la creación de la autorización del usuario. Crear una nueva sección dentro

del archivo de host virtual, pegando la siguiente información:

Y ltDirectory "/ usr / share / phpPgAdmin">

AuthUserFile / etc / phpPgAdmin / .htpasswd

AuthName "Zona Restringida"

AuthType Basic

require valid-user

</ Directory>

A continuación una breve explicación de cada línea:

AuthUserFile: Esta línea designa la ruta del servidor al archivo de contraseñas (que vamos a crear en el

paso siguiente.)

AuthType: Esto se refiere al tipo de autenticación que se utilizará para la comprobación de las

contraseñas. Las contraseñas se comprueban a través de HTTP y la palabra clave de base no se debe

cambiar.

AuthName: Este es el texto que se mostrará en el indicador de contraseña. Usted puede poner cualquier

cosa aquí.

Require valid-user: Esta línea le indica el archivo htaccess que sólo los usuarios definidos en el archivo

de contraseñas puede acceder a la pantalla de inicio de sesión phpPgAdmin.

Ahora vamos a seguir adelante y crear la información de usuario válido: Cree el archivo htpasswd

Comience por crear un archivo htpasswd. Utilice el comando htpasswd, y colocar el archivo en

un directorio de su elección, siempre y cuando no se puede acceder desde un navegador. Aunque usted

puede nombrar el archivo de contraseñas lo que usted prefiere, la convención es darle un nombre.

Htpasswd.

sudo htpasswd-c / etc / phpPgAdmin / nombre de usuario .htpasswd

Un mensaje le pedirá que proporcione y confirme su contraseña.

Una vez que el nombre de usuario y las contraseñas se guardan par se puede ver que la contraseña está

encriptada en el archivo.

Terminar reiniciando apache:

sudo service apache2 restart

PhpPgAdmin Acceso:

phpPgAdmin ahora será mucho más seguro ya que sólo los usuarios autorizados podrán acceder

a la página de inicio de sesión. Acceso SuDirecciónIP / phpPgAdmin debe mostrar una pantalla como

Rellenar con el nombre de usuario y la contraseña que ha generado. Después de hacer login se

puede acceder phpPgAdmin con su nombre de usuario y contraseña de Postgres.

PostScript-Cómo crear un usuario Postgres:

Cambie el método de autenticación en el archivo de configuración de autenticación:

sudo nano / etc/postgresql/9.1/main/pg_hba.conf

El cambio se puede realizar en la siguiente línea:

# "Local" es para conexiones de socket de dominio Unix sólo

local de todas todas md5

Para empezar a crear usuarios, primer interruptor en el súper-usuario predeterminado y crear la

base de datos que el usuario inicie sesión en:

sudo su - postgres

Posteriormente, cree una nueva base de datos donde almacenar sus tablas:

createdb NewDB

Aunque la base de datos ha sido creada, el único usuario con acceso a la misma es el usuario por

defecto de postgres. Podemos permitir que otros usuarios puedan acceder y manipular la base de datos

mediante la creación de nuevos usuarios.

Una vez que haya iniciado sesión como super usuario predeterminada, puede mover hacia

adelante para crear más roles en el sistema PostgreSQL.

Para equipar su usuario con una contraseña, puede añadir la opción-P con el comando createuser:

createuser-P

Escriba el nombre de la función para agregar: newuser

Introduzca la contraseña para el nuevo rol:

Introduzca de nuevo:

¿Dirá el nuevo papel será un super usuario? (Y / n) y

Contraseña: escriba la contraseña del super usuario aquí

A continuación, puede iniciar sesión en postgres en una de varias maneras.

Si va a iniciar sesión en el uso de la identificación con los pares, puede simplemente escriba el comando

siguiente y especifique la base de datos que está iniciando sesión en:

NewDB psql

Si va a iniciar sesión en el uso de la identificación md5, puede incluir el usuario que prefiere

iniciar la sesión como:

psql-U newuser-W NewDB

Instalación del FTP:

El Protocolo de Transferencia de Archivos (FTP) es un protocolo TCP, que nos permite subir y

descargar archivos, funciona según el modelo cliente/servidor. Esta continuamente escuchando por el

puerto 21 TCP para las peticiones de conexión de clientes remotos, cuando recibe una petición la ges-

tiona, establece la conexión y ejecuta las órdenes enviadas por el cliente.

El acceso a un servidor FTP puede hacerse de dos maneras:

Anónimo

Autenticado.

Instalación de vsftpd:

Existen una gran variedad de servidores FTP para GNU/Linux, pero se le elige vsftpd ya que muy

fácil de configurar y es uno de servidores FTP más seguros. Para poder hacer la instalación del servidor

vsftpd tendremos que hacer lo siguiente.

Ya que termine de descargar e instalar los paquetes tenemos que hacer varios pasos para que

funcione nuestro servidor ftp.

Creación del grupo:

Ahora tenemos que crear un grupo el cual controle al servicio de vsftpd de la siguiente manera:

root@server1:#apt-get update

root@server1:#apt-get install vsftpd

root@server1:~#groupadd ftp

Creación del home:

Tenemos que crear el deposito o el home donde el usuario va alojar su información, cuando el

servidor vsftpd termina de instalarse crea una carpeta en home quedando de la siguiente manera

/home/ftp, pero tu puedes tener tus usuarios en otras rutas como /var/ftp.

Creación de shell FTP:

Lo que haremos es crear un shell virtual o fantasma, para que los usuarios no puedan conectarse

a una sesión del sistema operativo.

Ya que lo creamos, ahora se debe editar el siguiente archivo.

Agregar al final del archivo /etc/ftp.

Creando usuarios FTP:

Para poder crear usuarios para nuestro servicio ftp se ocupa el siguiente comando.

root@server1:~#mkdir /home/ftp/rodmen

root@server1:~#mkdir /bin/ftp

root@server1:~#vim /etc/shells

/bin/bash

/bin/rbash

/bin/ftp

root@server1:~#useradd -g ftp -d /home/ftp/rodmen -s /bin/ftp rodmen

Tenemos que agregarle una contraseña a nuestro usuario creado.

Ahora hay que darle permiso al usuario pueda ser el dueño de su depósito.

Ficheros de configuración:

El servidor vsfptd tiene dos archivos muy importantes de configuración:

Configuración de vsftpd:

En este momento comenzaremos a configurar nuestro servidor vsftpd. Antes se recomienda

ampliamente crear una copia de respaldo de archivo de configuración:

Comenzaremos a editar el archivo de configuración del servicio vsftpd.conf.

En el archivo tendremos que cambiar varios parámetros:

Parámetro anonymous_enable

Desactivar acceso a usuarios anónimos, para mayor seguridad.

root@server1:#passwd rodmen

Enter new UNIX password:

Retype new UNIX password:

passwd: password updated successfully

root@server1:#

root@server1:#cd /home/ftp

root@server1:#chown rodmen.ftp rodmen/ -

/etc/vsftpd.conf (Este es el archivo de configuración de nuestro servidor ftp.)

/etct/vsftpd.chroot_list (Lista de los usuarios que van estar enjaulados.)

root@server1:#cd /etc

root@server1:/etc#cp vsftpd.conf vsftpd.conf-ori

root@server1:/etc#vim vsftpd.conf

Parámetro local_enable: #

Permitir a los usuarios autenticados tener sus propias carpetas locales, le quitamos el # para que

se active.

Parámetro write_enable:

Permitir el modo de escritura en su carpeta, le quitamos el #.

Parámetro local_umask:

Permitimos la a través de este parámetro enmascararlo con algún permisos en especial al

momento de subir la información.

En este caso estamos indicándole al parámetro, va tener permisos de rwx para el usuario, r-- para

el grupo y --- otro ningún permiso.

Enjaulando a los usuarios FTP:

Habilitamos el enjaulamiento de los usuarios dentro de su directorio personal y también para

acceder a sus carpetas por FTP.

anonymous_enable=NO

#local_enable=YES

local_enable=YES

#write_enable=YES

write_enable=YES

#local_umask=000

local_umask=037

#chroot_local_user=YES

#chroot_list_enable=YES

chroot_local_user=YES

chroot_list_enable=YES

Habilitamos la siguiente línea que manda a llamar a un archivo, este archivo lo tiene que crear y

dentro de este agregar las cuentas de los usuarios enjaulados.

Al terminar de configurar el archivo de vsftpd.conf

Control del ancho de banda:

Se le pueden agregar más opciones al final del archivo.

Reinicio del servidor FTP:

Solo tenemos que reiniciar el servicio de vsftpd para poder cargar los cambios que hemos

realizado al servidor.

#chroot_list_file=/etc/vsftpd.chroot_list

chroot_list_file=/etc/vsftpd.chroot_list

root@server1:/etc# touch vsftpd.chroot_list

root@server1:/etc#echo “rodmen”>> vsftpd.chroot_list

anon_max_rate=5100

#Ancho de banda para usuario anónimo 5kb.

local_max_rate=5100 #Ancho de banda por usuario local 5kb.

max_clients=3 #Numero máximo clientes conectados.

max_per_ip=2 #Numero máximo de conexiones por ip.

root@server1:/etc#/etc/init.d/vsftpd restart

Stopping FTP server: vsftpd [OK]

Starting FTP server: vsftpd [OK]

Comandos FTP:

Para poder utilizar ahora nuestro servidor FTP seria por medio de comandos, por esto se

muestra la lista de comando de ftp y su descripción:

COMANDOS DESCRIPCION

cd [rutaRemota] Cambia de directorio dentro del servidor remoto

lcd [rutaLocal] Cambia de directorio en el equipo local

chgrp [grp] [rutaRemota] Cambia el grupo de trabajo de un fichero remoto. El [grp] tiene que

ser un Group ID

chmod [opciones]

[rutaRemota]

Cambia los permisos de Lectura, Escritura o de Ejecución a un

fichero remoto

chown [dueño][rutaRemota] Cambia el grupo de trabajo de un fichero remoto. El [dueño] tiene

que ser un User I

get [rutaRemota][rutaLocal] Copia un recurso remoto en un equipo local

lmkdir [rutaLocal] Crea una carpeta en el equipo local

mkdir [rutaRemota] Crea una carpeta en el equipo remoto

put [rutaLocal][rutaRemota] Sube un fichero o archivo desde una ruta local hasta una ruta

remota

pwd Imprime la ruta remota en la cual estamos trabajando

exit Salimos de SFTP

rename [rutaLocal]

[rutaRemota] Renombra un fichero remoto

rmdir [rutaRemota] Borra una carpeta remota

rm [rutaRemota] Borra un fichero remoto