Mostrando las entradas con la etiqueta Instalar. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Instalar. Mostrar todas las entradas

jueves, 16 de noviembre de 2023

Instalar Servidor FTP en Raspberry Pi 4 - vsftpd

En esta entrada quiero registra el paso a paso del proceso de instalar y configurar un Servidor FTP en una Raspberry Pi 4, esto lo hago porque hace parte de un proyecto personal que estoy desarrollando en donde requiero de un servidor FTP para cargar archivos.

Actualmente ya tengo una Raspberry Pi 4 configurada con una versión de Linux Ubuntu Server 22.04.2 LTS (64-bit), pueden consultar el paso a paso de este proceso en mi anterior entrada:


Luego de explorar documentación y otros blogs en internet, finalmente pude realizar una instalación y configuración exitosa en mi Raspberry Pi 4, en los primeros intentos estaba teniendo algunos problemas al momento de conectarme usando un Cliente FTP como FileZilla, por alguna razón, la autenticación era exitosa pero la conexión se quedaba haciendo múltiples intentos en listar el directorio del usuario autenticado, al final del proceso encontré la solución solo agregando un atributo en el archivo de configuración del Servidor vsftpd.

El objetivo de esta entrada es documentar el proceso de una configuración básica para un entorno de desarrollo, existen configuraciones adicionales que hay que agregar como una capa extra de seguridad en el caso de hacer una instalación y configuración en un entorno de producción.

No voy entrar en detalles sobre qué es FTP o SFTP, tampoco quiero entrar en detalles sobre los protocolos involucrados o capas de seguridad de encriptación de datos SSL. Creo que para obtener información detallada existe la documentación oficial, y no es relevante para el objetivo de esta entrada. Quiero compartir una guía rápida y práctica, lista para usar.

Cabe mencionar que los pasos a seguir en esta entrada también se pueden aplicar a una Raspberry Pi 3 y, en general, a una distribución Linux Ubuntu Server 22.04.2 LTS (64 bits).


Prerrequisitos:

  • Raspberry Pi 4/3
  • Linux Ubuntu Server 22.04.2 LTS (64-bit)


Paso 0: Actualizar Paquetes de Ubuntu Server

sudo apt update
sudo apt upgrade


Paso 1:  Instalar vsftpd

sudo apt install vsftpd

Cuando la instalación termine, lo primero que debemos hacer en el siguiente paso es realizar una copia del archivo de configuración de vsftpd antes de continuar con la configuración en los siguientes pasos.


Paso 2: Backup de vsftpd.conf

sudo cp /etc/vsftpd.conf /home/pi/Backup/vsftpd.conf


Paso 3: Habilitar el Firewall

Aquí debemos habilitar el Firewall y permitir las conexiones a los puertos correspondientes que usa el protocolo FTP, en este caso, las conexiones entrantes en los puertos 20, 21 y 990.

  • Verficar el estado del Firewall:

sudo ufw status


Nos debe mostrar algo similar a esto:

Output
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

  • Abrir los puertos:

sudo ufw allow 20,21,990/tcp

  • Abrir puertos en un rago para conexiones pasivas:

sudo ufw allow 40000:50000/tcp

  • Verficar el estado del Firewall:

sudo ufw status


Nos debe mostrar algo similar a esto:

Output
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
20,21,990/tcp              ALLOW       Anywhere
40000:50000/tcp            ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
20,21,990/tcp (v6)         ALLOW       Anywhere (v6)
40000:50000/tcp (v6)       ALLOW       Anywhere (v6)


Paso 4: Crear Usuario FTP

En este paso, vamos a crear un usuario dedicado únicamente para tener acceso mediante FTP al servidor. Esa será la única función de este usuario, con un directorio dedicado y solo con acceso a dicho directorio. Estará aislado del resto del sistema.

  • Crear Usuario:

sudo adduser ftpi

  • Crear Directorio Aislado:

sudo mkdir /home/ftpi/public

  • Modificar el propietario del directorio aislado:

sudo chown nobody:nogroup /home/ftpi/public

  • Remover permisos de escritura sobre el directorio aislado:

sudo chmod a-w /home/ftpi/public

  • Verificar permisos:

sudo ls -la /home/ftpi/public


Nos debe mostrar algo similar a esto:

Output
total 8
dr-xr-xr-x 2 nobody nogroup 4096 Nov 15 17:20 .
drwxr-x--- 3 ftpi ftpi  4096 Nov 15 17:20 ..

  • Crear un directorio dedicado a la carga de archivos:

sudo mkdir /home/ftpi/public/uploads

  • Asignar como propietario al usuario:

sudo chown ftpi:ftpi /home/ftpi/public/uploads

  • Verificar permisos:

sudo ls -la /home/ftpi/public


Nos debe mostrar algo similar a esto:

Output
total 12
dr-xr-xr-x 3 nobody nogroup 4096 Nov 15 17:20 .
drwxr-x--- 3 ftpi ftpi  4096 Nov 15 17:20 ..
drwxr-xr-x 2 ftpi ftpi  4096 Sep 14 20:30 uploads

  • Finalmente creamos un archivo de prueba en el directorio uploads:

echo "vsftpd test file" | sudo tee /home/ftpi/public/uploads/test.txt


Paso 5: Configurar Acceso FTP

Usar cualquier editor de texto, en este caso vamos a usar nano:

sudo nano /etc/vsftpd.conf

Cuando tenemos acceso al archivo de configuración desde nano, debemos buscar y modificar las siguientes variables, en caso de no existir alguna variable se crea como nueva al final del archivo:

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
user_sub_token=$USER
local_root=/home/$USER/public
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=50000
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO

  • Finalmente agregar el usuario a: /etc/vsftpd.userlist

echo "ftpi" | sudo tee -a /etc/vsftpd.userlist

  • Verificar el archivo /etc/vsftpd.userlist

cat /etc/vsftpd.userlist


Paso 6: Inhabilitar Acceso al Shell

Este paso es opcional si queremos bloquear el acceso al shell del usuario, de esta forma podemos bloquear el acceso al shell cuando el usuario se conecta por ssh, es una medida básica y simple de inhabilitar el acceso al shell de un usuario, mas no es la forma más segura.

  • Crear un archivo script:

sudo nano /bin/ftponly

#!/bin/sh
echo "This account is limited to FTP access only."

  • Agregar permisos de ejecucion al archivo:

sudo chmod a+x /bin/ftponly

  • Abrir la lista de shell's validas:

sudo nano /etc/shells

  • Agregar al final del archivo y guardar:

/bin/ftponly

  • Actualizar el Shell del usuario:

sudo usermod ftpi -s /bin/ftponly

  • Ahora cuando el usuario intente hacer un login mediante ssh:

ssh ftpi@your_server_ip

Obtendra el siguiente mensaje:

This account is limited to FTP access only.
Connection to 203.0.113.0 closed.


Paso 7: Probar el Acceso FTP con FileZilla

  • Finalmente solo queda reiniciar el servicio vsftpd:

sudo service vsftpd restart

  • Y desde una maquina externa probar el acceso FTP a nuestra Raspberry Pi 4 usando el programa FileZilla:

Usando los datos de acceso del Usuario FTP nos conectamos a nuestra Raspberry Pi 4:

Acceso FTP FileZilla

Cuando la conexión sea exitosa podemos ver en el panel del sitio remoto el directorio de uploads donde podemos cargar y descargar archivos:

Sitio Remoto FTP

Dentro del directorio uploads podemos ver que existe el archivo de prueba que habíamos creado previamente durante la configuración:

Archivo de prueba FTP




Listo, con esto terminamos y verificamos que nuestro Servicio FTP está funcionando y listo para usar.


Para concluir, quiero mencionar nuevamente que el objetivo de esta guía es realizar una instalación básica en un entorno de desarrollo. Hay otras configuraciones adicionales que se deben considerar, especialmente en temas de seguridad, cuando se implementa en un entorno de producción. Sin embargo, para un servidor básico en casa o en un entorno de desarrollo donde la seguridad no es la prioridad principal, esta solución es adecuada.



Esto es todo lo que quería compartir en esta entrada. Espero poder publicar una próxima entrada lo más pronto posible.



lunes, 31 de julio de 2023

Instalar Ubuntu Server en Raspberry Pi 4

Hola, creo que publicando esta nueva entrada he cumplido con la meta que me propuse al final de la entrada anterior: Ensamble e instalación de Raspberry Pi 4.

Esta entrada hace parte de la serie de entradas para documentar el proceso, desde el ensamble, la instalación y la configuración de la Raspberry Pi 4 como servidor, hasta el despliegue de una aplicación backend para exponer un servicio de API REST que podré consumir desde el mundo exterior haciendo uso del servicio Cloudflare Tunnel.

En esta entrada, a diferencia de la entrada anterior, voy a documentar un paso a paso usando capturas de pantalla del proceso de Instalar Ubuntu Server en Raspberry Pi 4. Uno de los objetivos con esta serie de entradas para documentar los procesos es hacerlo de la forma más simple posible y de forma concreta, sin profundizar en detalles técnicos, haciendo una documentación lo más simple posible que pueda ser fácilmente interpretada.


Requerimientos:
  • Tarjeta de memoria SD Clase 10 A1, con lector de memoria SD a USB

En la construcción del paso a paso de esta entrada, estoy usando como sistema operativo host un Linux Ubuntu Desktop 22.04.2 LTS.



Paso 1:

Desde la aplicación Raspberry Pi Imager, debemos seleccionar la opción "Choose OS". Aquí vamos a tener múltiples opciones, y para el caso específico de esta serie de entradas, vamos a seleccionar la opción "Other general-purpose OS".



Paso 2:

En la siguiente lista de opciones, debemos seleccionar "Ubuntu" como sistema operativo de propósito general.



Paso 3:

Para el propósito de esta guía, debemos seleccionar como sistema operativo "Linux Ubuntu Server 22.04.2 LTS (64-bit)", el cual tiene soporte extendido para Raspberry Pi 4.



Paso 4:

Debemos conectar previamente nuestra tarjeta de memoria SD con lector de memoria SD a USB a nuestro equipo y seleccionar la opción "Choose Storage". Se recomienda el uso de una tarjeta de memoria SD Clase 10 A1 de 32GB o superior.



Paso 5:

En la lista de dispositivos de almacenamiento, debemos seleccionar el correspondiente a nuestra tarjeta SD. En tu caso, que tienes conectada una tarjeta SD de 128GB, selecciona esa opción.



Paso 6:

Seleccionar "Configuración avanzada" en la opción del icono con forma de engranaje es una de las ventajas de usar la herramienta Raspberry Pi Imager.

A través de esta opción, podremos ajustar ciertos parámetros del sistema operativo antes de su instalación. La mayor ventaja es que no necesitaremos un monitor externo para conectar la Raspberry Pi 4 y hacer los ajustes necesarios. En cambio, podremos acceder a nuestra Raspberry Pi 4, que estará conectada a la red local, desde un cliente SSH en algún equipo externo que también esté conectado a la misma red local.







Paso 7:

Finalmente, seleccionamos el botón "Write" para iniciar el proceso de instalación. Este proceso puede llevar un tiempo, ya que primero descarga la imagen del sistema operativo y luego la instala en la tarjeta SD con la configuración previamente definida.




Listo, eso es todo, al final del proceso podemos extraer la tarjeta SD de nuestro equipo para posteriormente instalar la tarjeta SD en nuestra Raspberry Pi 4.

En la próxima entrada voy a documentar los primeros pasos, en el proceso de configuración inicial, una vez nos conectemos mediante un cliente SSH a nuestra Raspberry Pi 4.



Espero publicar mi próxima entrada lo más pronto posible y no hasta el próximo año.

viernes, 21 de junio de 2019

Instalar y Configurar Laravel PHP Framework - Mi Primer Proyecto


Laravel
Laravel


En esta entrada quiero compartir parte de mi proceso de aprendizaje en el mundo de Laravel, esto es sólo una guía de iniciación de primeros pasos para instalar y configurar Laravel en una máquina con Ubuntu Linux 16.04 LTS Xenial Xerus y así poder iniciar nuestro Primer Proyecto.



Requisitos:



La estrategia que voy a compartir aquí es la que en mi opinión se adapta bien para el desarrollo de proyectos en Laravel dentro de un equipo de desarrollo que hace uso de sistemas de control de versiones como Git, ya sea en GitHub o en GitLab. Esto permite que todo el equipo de desarrollo tengan acceso a la misma base de código fuente del proyecto Laravel con fácil configuración del entorno donde se ejecuta pensando a futuro en realizar configuraciones para Integración Continua y Despliegue Continuo.



Paso1 - Homestead Vagrant Box:

Cumpliendo con los requisitos anteriormente mencionados procedemos a instalar el Homestead Vagrant Box, esto nos permite tener una Maquina Virtual preconfigurada con todos los requerimientos para ejecutar aplicaciones en Laravel, ademas podemos configurar facilmente esta maquina virtual mediante el uso de archivos YAML.

promt$ vagrant box add laravel/homestead

Verificar que el vagrant box ha sido instalado:

promt$ vagrant box list
laravel/homestead   (virtualbox, 8.0.0-beta)


Paso 2 - Instalar CLI Laravel:

Para poder crear projectos en Laravel, podemos instalar el CLI de Laravel el cual nos permite a partir de un scallfold crear un Projecto Vacío con la estructura de Laravel.

promt$ composer global require laravel/installer

Despues de realizar este proceso de instalación, tenemos que agregar al PATH la rutal al directorio .composer/vendor/bin donde se instalan los paquetes y así poder usar de forma global el CLI de Laravel, agregar al archivo /etc/profile lo siguiente:

## Composer bin packages
export COMPOSER_BIN=$HOME/.config/composer/vendor/bin    
PATH=$PATH:$COMPOSER_BIN
export PATH

Listo, finalmente actualizar nuestro PATH y verificamos la version del CLI de Laravel instalado:

promt$ source /etc/profile
promt$ laravel -V
Laravel Installer 2.1.0


Paso 3 - Crear Proyecto:

Ahora que ya tenemos instalado el CLI de Laravel, el siguiente paso es crear un proyecto usando el comando que nos permite desde un scafflod crear un proyecto en Laravel vacío:

promt$ laravel new mi-proyecto
promt$ ls
mi-proyecto

mi-proyecto
mi-proyecto


Paso 4 - Homestead por Proyecto:

En este punto vamos a instalar y configurar los archivos necesarios para ejecutar nuestro proyecto en el Homestead Box de Vagrant, para esto tenemos que instalar el paquete homestead en nuestro proyecto:

promt$ composer require laravel/homestead --dev

Cuando ya tenemos instalado el paquete de homestead en nuestro proyecto, ahora lo que tenemos que hacer es generar los archivos VagrantfileHomestead.yaml, usando el comando make:

promt$ php vendor/bin/homestead make


Paso 5 - Configurar Hostname:

Cuando configuramos Homestead en nuestro proyecto, por defecto se asigna la IP 192.168.10.10 y el nombre de dominio homestead.test, ahora, tenemos que configurar nuestro archivo de hostname en nuestra maquina Linux Ubuntu agregando esta información al archivo /etc/hosts:

192.168.10.10  homestead.test

Paso 6 - Ejecutar Proyecto:

Finalmente podemos ejecutar nuestro proyecto usando Vagrant con el siguiente comando:

promt$ vagrant up
Con esto ejecutamos una maquina virtual con nuestro proyecto, para poder acceder y visualizar el proyecto usamos un navegador web para acceder al dominio configurado por defecto:

http://homestead.test/

Mi Primer Proyecto
Mi Primer Proyecto


Eso es todo:

Listo, con esto ya tenemos una instalación y configuración básica para iniciar nuestro aprendizaje en el mundo de Laravel, queda mucho por aprender, a continuación dejo unos enlaces de referencia donde podemos encontrar información adicional sobre Laravel.


Repositorio Final:
https://github.com/sebaxtian/mi-proyecto


Referencias:

Vagrant Docs
Laravel Docs
Homestead Docs


domingo, 12 de mayo de 2019

Instalar Go en Linux Ubuntu 16.04 LTS Xenial Xerus

Bueno en esta entrada voy a ser concreto y directo a los pasos a seguir para realizar la instalación de las herramientas de Go para poder desarrollar usando el lenguaje de programación Go en una distribución de Linux Ubuntu 16.04 LTS Xenial Xerus.

Esta entrada la quiero hacer por que actualmente me encuentro realizado una prueba técnica propuesta por una empresa, la cual debe ser desarrollada usando el lenguaje de programación Go.


Paso 1: Descarga

Primero debemos descargar los binarios de la ultima versión estable de Go para Linux la cual requiere de un procesador de 64bit del siguiente link, https://golang.org/dl/ esto nos debe descargar un archivo .tar.gz con la siguiente estructura de nombre go$VERSION.$OS-$ARCH.tar.gz por ejemplo go1.12.5.linux-amd64.tar.gz


Paso 2: Instalar

Después de realizar la descarga del binario de Go procedemos a realizar la instalación en nuestro sistema Linux, para esto simplemente debemos descomprimir el contenido del archivo .tar.gz descargado en el directorio de programas instalados localmente /usr/local/ ejecutando el siguiente comando como usuario root:

usuario@Linux:# tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz


Paso 3: Configurar PATH

Como paso adicional del proceso de instalación hay que agregar a la variable de entorno PATH de nuestro sistema Linux la ubicación del directorio de los binarios de Go, esto lo hacemos de forma global a todo el sistema Linux agregando la siguiente linea de código al final del archivo /etc/profile

export PATH=$PATH:/usr/local/go/bin

Para aplicar los cambios hechos al archivo /etc/profile ejecutamos el siguiente comando:

usuario@Linux:# source /etc/profile


Paso 4: Probar

Bueno, finalmente lo que debemos hacer es probar que todo el proceso de instalación funciona correctamente, para esto debemos configurar el directorio de espacio de trabajo de Go, por defecto debe estar creado en el directorio $HOME/go del usuario Linux con la siguiente estructura:

El directorio $HOME/go debe contener un directorio src para contener todos los archivo de código fuente Go y debe contener un directorio bin para todos los ejecutables generados a partir del código fuente Go.

$HOME/go
             $HOME/go/src
             $HOME/go/bin

Para realizar la prueba, creamos un directorio /hello dentro del directorio $HOME/go/src donde creamos el archivo de código fuente hello.go con el siguiente contenido:
package main

import "fmt"

func main() {
 fmt.Printf("hello, world\n")
}
Luego de guardar el archivo hello.go creamos un build y ejecutamos:
$ cd $HOME/go/src/hello
$ go build
$ ./hello
hello, world
Para generar un binario a partir de la anterior build ejecutamos el comando go install dentro del mismo directorio $HOME/go/src/hello lo cual genera un archivo binario en el directorio $HOME/go/bin si en algún momento deseamos eliminar el archivo binario ejecutamos el comando go clean -i


Listo, eso es todo, pero creo que para desarrollo de aplicaciones podríamos en algún momento tener la necesidad de modificar la ubicación del directorio de trabajo de Go, para esto debemos seguir las instrucciones descritas en la documentación de Go https://golang.org/doc/code.html#Workspaces y con esto ya podemos desarrollar nuestras aplicaciones a nuestro antojo.


viernes, 3 de mayo de 2019

Instalar PgAdmin 4 en Linux Ubuntu 16.04 LTS Xenial Xerus

Una nueva entrada relacionada con Postgres y el cliente PgAdmin, ahora en la versión PgAdmin 4.

Pueden consultar la entrada [Instalar PostgreSQL y PgAdmin en Linux Ubuntu 16.04 LTS Xenial Xerus] para contextualizar esta entrada donde explicaré como Instalar PgAdmin 4 en Linux Ubuntu 16.04 LTS Xenial Xerus.

En el sitio web oficial [https://www.pgadmin.org/] de pgAdmin nos informan que la versión 3 de pgAdmin no tiene mas soporte oficial, por lo tanto recomiendan instalar y usar pgAdmin versión 4.

pgAdmin 3 sin soporte
pgAdmin 3 sin soporte

El proceso de instalación es muy simple y solo hay que seguir los siguientes pasos a continuación:


Paso 1 Agregar Repositorio

Primero debemos configurar y agregar el repositorio de paquetes oficial de PostgreSQL para Debian y Ubuntu Linux.

En una terminal de Linux ejecutar los siguientes comandos:

->$ sudo apt-get install curl ca-certificates
->$ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
->$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

Con los anteriores comando ya tenemos configurado correctamente la lista de repositorios oficiales de Postgres para proceder a instalar pgAdmin 4.


Paso 2 Instalar pgAdmin 4

En una terminal de Linux ejecutar los siguientes comando:

->$ sudo apt-get update
->$ sudo apt-get install pgadmin4

Paso 3 Ejecutar pgAdmin 4

En una terminal de Linux ejecutar el siguiente comando:

->$ pgadmin4 &

En un navegador web se abre la siguiente URL http://127.0.0.1:35747/browser/# donde tenemos disponible la aplicación de pgAdmin 4 y aquí configuramos la conexión a un servidor de Postgres.


Conexión Postgres
Conexión Postgres

pgAdmin 4
pgAdmin 4

Listo, con eso ya tenemos todo configurado y listo para usar pgAdmin 4 con el cual podemos administrar nuestras bases de datos en Postgres.


jueves, 2 de mayo de 2019

Instalar Docker en Windows 10 Home

Aquí quiero compartir el proceso para instalar Docker en Windows 10 Home, mediante la instalación de Docker Toolbox ya que la versión Docker Desktop para Windows no puede ser instalar en Windows Home.


Paso 1 Descargar

Primero tenemos que descargar el instalador de Docker Toolbox desde el repositorio oficial con la ultima versión estable [https://github.com/docker/toolbox/releases]

Descarga Docker Toolbox
Descarga Docker Toolbox

Paso 2 Instalar

El siguiente paso después de realizar la descarga del instalador de Docker Toolbox es iniciar la instalación, como cualquier otra aplicación de Windows solo es doble click en el archivo descargado y el resto del proceso es hacer click en siguiente.

Instalar Docker Toolbox
Instalar Docker Toolbox

Al finalizar la instalación en la ultima ventana solo se debe desmarcar la opción "View Shortcuts in File Explorer" y hacer click en Finalizar.


Paso 3 Configuración

Una vez ha sido instalado el Docker Toolbox, en la primera ejecución se realiza la Configuración de las herramientas necesarias para poder hacer uso de Docker.

Configurar Docker Toolbox
Configurar Docker Toolbox

En la primera ejecución usando el "Docker Quickstart Terminal" desde esta terminal se realiza toda una serie de procesos e instalaciones adiciones para poder hacer uso de Docker.

Si por alguna razón durante el proceso tenemos algún error relacionado con el Network Adapter de VirtualBox, tenemos que instalar nuevamente el Docker Toolbox pero seleccionando durante la instalación la opción "Install VirtualBox with NDIS5 driver", al finalizar la instalación Reiniciar el Windows y nuevamente ejecutar el "Docker Quickstart Terminal".

Error Network Adapter
Error Network Adapter
Solucion Network Adapter
Solucion Network Adapter
Cuando todo el proceso de Configuración de Docker Toolbox finaliza con éxito, en la terminal Docker Quickstart Terminal nos muestra un mensaje donde disponemos de un prompt para trabajar con Docker como lo hacemos en Linux.

Docker Quickstart Terminal
Docker Quickstart Terminal

Paso 4 Hola Mundo

Finalmente ya tenemos todo lo necesario para poder trabajar con Docker, el paso final para comprobar que Docker está instalado correctamente es ejecutar el Contenedor del clásico Hola Mundo.

Docker Hola Mundo
Docker Hola Mundo

También podemos comprobar la versión de Docker instalada, las imágenes descargadas y los contenedores que tenemos.

Docker
Docker

Listo, eso es todo el proceso que quiero compartir sobre como instalar Docker en Windows 10 versión Home, aunque yo soy usuario Linux, existen personas que les puede servir esta breve guía en algún momento.



martes, 26 de abril de 2016

Instalar PostgreSQL y PgAdmin en Linux Ubuntu 16.04 LTS Xenial Xerus

En esta entrada quiero compartir cuales son los pasos para instalar PostgreSQL y PgAdmin en una distribución Linux Ubuntu 16.04 LTS.


Instalar PostgreSQL:

  • Paso 1usuario@linux~$ sudo apt-get install postgresql postgresql-contrib

Ingresar en postgresql desde una terminal:

usuario@linux~$ sudo -u postgres psql postgres


Configurar el password para el usuario postgresql:

postgres=# \password postgres 
Enter new password: 
Enter it again: 
postgres=# \q



Instalar PgAdmin:
  • Paso 2usuario@linux~$ sudo apt-get install pgadmin3

Configurar una conexión local en postgresql:

pgadmin3
PgAdmin3


Inspeccionar conexión a base de datos postgres localmente:

pgadmin3
PgAdmin3


ACTUALIZACIÓN

En el sitio web oficial [https://www.pgadmin.org/] de pgAdmin nos informan que la versión 3 de pgAdmin no tiene mas soporte oficial, por lo tanto recomiendan instalar y usar pgAdmin versión 4.


pgAdmin 3 sin soporte
pgAdmin 3 sin soporte

Ver la siguiente entrada [Instalar PgAdmin 4 en Linux Ubuntu 16.04 LTS Xenial Xerus] para contextualizar el proceso de instalación de pgAdmin 4.


Cómo Instalar Java JDK/JRE SE en Linux Ubuntu 16.04 LTS Xenial Xerus

Esta entrada hace referencia a una anterior entrada donde explico como hacer una Instalación de Oracle Java JDK/JRE en Linux Mint reemplazando el OpenJDK/JRE que viene instalado por defecto en las distribuciones Linux basadas en Ubuntu Debian.

ANTERIOR ENTRADA [Cómo Instalar Oracle Java JDK/JRE SE en Linux Mint Ubuntu]

En esta ocación describo a continuación los pasos a seguir para realizar Instalación limpia de Oracle Java JDK/JRE sobre la versión mas reciente LTS de Linux Ubuntu 16.04 conocida por su nombre clave Xenial Xerus.



Los pasos a seguir son los siguientes:



  • Paso 1: Debemos comprobar cual es la arquitectura de nuestro sistema operativo Linux, en un terminal ejecutamos el siguiente comando con el cual podemos ver si es de 32-bit ó 64-bit

usuario@linux~$  file /lib/systemd/systemd
/lib/systemd/systemd: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=80c38f5ef6fd5a367d6b043d91b43b11dcee91fb, stripped

  • Paso 2: Revisar si tenemos alguna versión de Java instalada en el sistema

usuario@linux~$  java -version
El programa «java» puede encontrarse en los siguientes paquetes:
 * default-jre
 * gcj-4.9-jre-headless
 * gcj-5-jre-headless
 * openjdk-8-jre-headless
 * gcj-4.8-jre-headless
 * openjdk-9-jre-headless
Intente: sudo apt install <paquete seleccionado>


En este caso no existe una versión de java instalada en el sistema, en caso contrario de tener alguna versión de java instalada en el sistema debemos desinstalar:

usuario@linux~$  sudo apt-get purge openjdk-\*

  • Paso 3: Descargar Oracle JDK SE para Linux Java Platform (JDK) al descargar el JDK también incluye el JRE, descargamos la versión de 64-bit para Linux

Descargar Oracle JDK


  • Paso 4: Descomprimir el archivo descargado

usuario@linux~$  tar xvfz jdk-8u92-linux-x64.tar.gz

  • Paso 5: Crear el directorio donde será instalado Oracle JDK/JRE

usuario@linux~$  sudo mkdir /usr/local/jdk
usuario@linux~$  ls /usr/local/
bin  etc  games  include  jdk  lib  man  sbin  share  src

  • Paso 6: Copiar los binarios del archivo que descomprimimos en el directorio de instalación

usuario@linux~$  sudo cp -rfv Descargas/jdk/ /usr/local/jdk/
usuario@linux~$  ls /usr/local/jdk
jdk1.8.0_92

  • Paso 7: Otorgar permisos de ejecución a todos los usuarios del sistema sobre el directorio de instalación de Java

usuario@linux~$  sudo chmod -R a+x /usr/local/jdk/
usuario@linux~$  ls -la /usr/local/jdk/
total 12
drwxr-xr-x  3 root root 4096 abr 25 20:33 .
drwxr-xr-x 11 root root 4096 abr 25 20:31 ..

drwxr-xr-x  8 root root 4096 abr 25 20:33 jdk1.8.0_92


  • Paso 8: Es hora de actualizar el PATH agregando las nuevas variables de entorno al sistema, usamos un editor de texto para modificar el archivo /etc/profile y agregando al final del archivo las nuevas variables de entorno

usuario@linux~$  sudo vim /etc/profile
# Al final del archivo agrego las nuevas variables de entorno
JAVA_HOME=/usr/local/jdk/jdk1.8.0_92
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH

  • Paso 9: Notificar al sistema Linux donde está instalado nuestro Oracle Java JDK/JRE

usuario@linux~$  sudo update-alternatives --install "/usr/local/java" "java" "/usr/local/jdk/jdk1.8.0_92/bin/java" 1
usuario@linux~$  sudo update-alternatives --install "/usr/local/javac" "javac" "/usr/local/jdk/jdk1.8.0_92/bin/javac" 1
usuario@linux~$  sudo update-alternatives --install "/usr/local/javaws" "javaws" "/usr/local/jdk/jdk1.8.0_92/bin/javaws" 1

  • Paso 10: Configurar Oracle Java JDK/JRE como el Java a usar por defecto

usuario@linux~$  sudo update-alternatives --set java /usr/local/jdk/jdk1.8.0_92/bin/java
usuario@linux~$  sudo update-alternatives --set javac /usr/local/jdk/jdk1.8.0_92/bin/javac
usuario@linux~$  sudo update-alternatives --set javaws /usr/local/jdk/jdk1.8.0_92/bin/javaws


  • Paso 11: Finalmente solo queda recargar el PATH y verificar si la instalación se realizó correctamente

usuario@linux~$  source /etc/profile
usuario@linux~$  java -version
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)



Con esto ya se ha terminado de instalar correctamente Oracle Java JDK/JRE SE en nuestras maquinas con sistema operativo Linux basado en Debian, para este caso en Ubuntu 16.04 LTS Xenial Xerus.




      viernes, 28 de agosto de 2015

      Cómo Instalar Oracle Java JDK/JRE SE en Linux Mint Ubuntu

      Esta es una Actualización de mi anterior entrada donde explico como hacer una Instalación de Oracle Java JDK/JRE en Linux Mint reemplazando el OpenJDK/JRE que viene instalado por defecto en las distribuciones Linux basadas en Ubuntu Debian.


      ANTERIOR ENTRADA [Cómo Instalar Oracle Java JDK/JRE SE en Linux Mint]



      Los pasos para realizar el proceso son los siguientes:


      • Paso 1: Debemos comprobar cual es la arquitectura de nuestro sistema operativo Linux, en un terminal ejecutamos el siguiente comando con el cual podemos ver si es de 32-bit ó 64-bit

      usuario@linux~$  file /lib/systemd/systemd
      /lib/systemd/systemd: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=635141ec29ae1dec6bbb11b117a1a5dad5e0e9cb, stripped
      • Paso 2: Revisar si tenemos alguna versión de Java instalada en el sistema

      usuario@linux~$  java -version
      java version "1.7.0_25"
      OpenJDK Runtime Enviroment (IcedTead 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
      OpenJDK Client VM (build 23.7-b01, mixed mode, sharing)

      • Paso 3: Desinstalar y eliminar OpenJDK/JRE del sistema

      usuario@linux~$  sudo apt-get purge openjdk-\*
      • Paso 4: Descargar Oracle JDK SE para Linux Java Platform (JDK) al descargar el JDK también incluye el JRE, descargamos la versión de 64-bit

      Descarga Oracle JDK
      Descarga Oracle JDK

      • Paso 5: Descomprimir el archivo descargado

      usuario@linux~$  tar xvfz jdk-8u60-linux-x64.tar.gz
      • Paso 6: Crear el directorio donde será instalado Oracle JDK/JRE

      usuario@linux~$  sudo mkdir /usr/local/jdk
      usuario@linux~$  ls /usr/local/
      bin    etc    games    include    jdk    lib    man    sbin    share    src
      • Paso 7: Copiar los binarios del archivo que descomprimimos en el directorio de instalación

      usuario@linux~$  sudo cp -rfv Descargas/jdk1.8.0_60/ /usr/local/jdk/
      usuario@linux~$  ls /usr/local/jdk
      jdk1.8.0_60
      • Paso 8: Otorgar permisos de ejecución a todos los usuarios del sistema sobre el directorio de instalación de Java

      usuario@linux~$  sudo chmod -R a+x /usr/local/jdk/
      usuario@linux~$  ls -la /usr/local/jdk
      total 12
      drwxr-xr-x  3 root root 4096 ago 28 10:47 .
      drwxr-xr-x 11 root root 4096 ago 28 10:46 ..
      drwxr-xr-x  8 root root 4096 ago 28 10:47 jdk1.8.0_60
      • Paso 9: Es hora de actualizar el PATH agregando las nuevas variables de entorno al sistema, usamos un editor de texto para modificar el archivo /etc/profile y agregando al final del archivo las nuevas variables de entorno

      usuario@linux~$  sudo vim /etc/profile
      # Al final del archivo agrego las nuevas variables de entorno
      JAVA_HOME=/usr/local/jdk/jdk1.8.0_60
      PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
      export JAVA_HOME
      export PATH
      • Paso 10: Notificar al sistema Linux donde está instalado nuestro Oracle Java JDK/JRE

      usuario@linux~$  sudo update-alternatives --install "/usr/local/java" "java" "/usr/local/jdk/jdk1.8.0_60/bin/java" 1
      usuario@linux~$  sudo update-alternatives --install "/usr/local/javac" "javac" "/usr/local/jdk/jdk1.8.0_60/bin/javac" 1
      usuario@linux~$  sudo update-alternatives --install "/usr/local/javaws" "javaws" "/usr/local/jdk/jdk1.8.0_60/bin/javaws" 1
      • Paso 11: Configurar Oracle Java JDK/JRE como el Java a usar por defecto

      usuario@linux~$  sudo update-alternatives --set java /usr/local/jdk/jdk1.8.0_60/bin/java
      usuario@linux~$  sudo update-alternatives --set javac /usr/local/jdk/jdk1.8.0_60/bin/javac
      usuario@linux~$  sudo update-alternatives --set javaws /usr/local/jdk/jdk1.8.0_60/bin/javaws

      • Paso 12: Finalmente solo queda recargar el PATH y verificar si la instalación se realizó correctamente

      usuario@linux~$  . /etc/profile
      usuario@linux~$  java -version
      java version "1.8.0_60"
      Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
      Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
      usuario@linux~$  javac -version
      javac 1.8.0_60

      Con esto ya se ha terminado de instalar correctamente Oracle Java JDK/JRE SE en nuestras maquinas con sistema operativo Linux basado en Debian.