Entradas con la etiqueta Ubuntu

“El tamaño difiere” y “Error de GPG” problemas de apt-get install

sudo-apt-get-install“Error de GPG”

Error de GPG: http://ppa.launchpad.net oneiric Release Las firmas siguientes no se pudieron verificar
porque su llave pública no está disponible: NO_PUBKEY 60D11217247D1CFF

Es uno de los problemas que aparece de vez en cuando al intentar descargar algún paquete en Ubuntu mediante apt-get install.

Desde que en Ubuntu 10.04 apareció add-apt-repository esos problemas se redujeron considerablemente, aunque no desaparecieron del todo. Podéis encontrar varias soluciones para importar esa clave GPG que os falta, pero hay una solución mejor que hacerlo cada vez con cada repositorio. He encontrado una solución global que comparto para darle más difusión y para tenerla a mano cuando vuelva a necesitarla yo mismo.

Se trata de un script de WebUpd8 con el que obtendremos automáticamente todas las llaves GPG que nos falten.

Aunque se puede descargar directamente el paquete correspondiente a nuestra versión de Ubuntu, yo recomendaría añadir el repositorio habilitado que además contiene otras muchas utilidades. Se trata de ejecutar las siguientes instrucciones en el terminal:

sudo apt-add-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install launchpad-getkeys

A continuación cada vez que tengamos un error de GPG, bastará ejecutar

sudo launchpad-getkeys

Este script detecta automáticamente todas las claves que faltan, las descarga y las instala. Sin más intervención y de un plumazo. ¡Genial!


“El tamaño difiere”

Failed to fetch http://gb.archive.ubuntu.com/ubuntu/pool/main/g/gdebi/gdebi_0.6.0ubuntu2_all.deb Size mismatch

el mensaje en castellano es

Fallo al descargar xxxxxxxxxx El tamaño difiere

Parece ser que este problema aparece tanto con el apt-get en Ubuntu como con el yum de CentOS (aunque no puedo confirmarlo apuesto que ocurre con más distribuciones) que se encuentran detrás de un proxy “Squid”. Algunas soluciones apuntan a modificar la configuración del proxy, pero aunque no sea la solución ideal, también hay remedios que podemos aplicar en nuestra estación de trabajo sin tener que implicar al proxy.

La solución consiste en limpiar la caché local de paquetes.

En Ubuntu:
sudo find /var/lib/apt/lists/ -type f -exec rm -f {} \;
En CentOS:
sudo rm -f /var/lib/rpm/__*
sudo rpm --rebuilddb
sudo yum clean all

Etiquetas: , , , ,

Cómo aligerar un pdf en Ubuntu.

Cuando necesitamos que nuestros pdf sean más ligeros, encontramos esta utilidad en Ubuntu. Sigue leyendo →

(Seguir leyendo...)

Etiquetas:

Recuperar archivos borrados de particiones Linux ext3 y ext4 (máquinas virtuales incluidas)

OMG¡OMG! ¡He borrado archivos que no debía! ¿Qué puedo hacer?

Hay esperanza, no toques nada y tómate una tila mientras lees este manual.

Porque a todos nos ha pasado esta desagradable situación. Acabo de encontrarme en la necesidad de ayudar a alguien que había perdido un trabajo muy valioso por culpa de una maniobra algo descuidada, algo que siempre sucede cuando no tienes copia de seguridad. Os cuento cómo lo hemos resuelto con éxito.  Este tutorial incluye unas indicaciones para saber cómo actuar si la instalación de Ubuntu accidentada está hecha sobre una máquina virtual VirtualBox.
Leer el resto de esta entrada »

Etiquetas: , , , ,

Utilidades útiles. OpenMeetings 1.6.2

OpenMeetings es una herramienta que nos permite realizar videoconferencias. Algunas de sus características son:
Leer el resto de esta entrada »

Etiquetas: , , , , , , , ,

Servidor x11vnc de escritorios remotos disponible en el arranque de Ubuntu Maverick

Logo VNC

Como me ha costado mucho encontrar una buena solución al reto de manejar remotamente una máquina Ubuntu 10.10 sin monitor, ni teclado, ni ratón,  he decidido escribir este tutorial rápido para allanar un poco el camino a cualquiera que tenga esta necesidad.

 

Leer el resto de esta entrada »

Etiquetas: , , ,

E2C2010 (II): Instalacion OpenSSH, LAMP y PhpMyAdmin

Este artículo está dedicado a la instalación de OpenSSH, el servidor LAMP y PhpMyAdmin, así como la configuración de algunos paquetes adicionales y la configuración de algunas funcionalidades interesantes.

Comenzaremos con una breve descripción de los términos para que nos quede claro lo que vamos a instalar y para que sirve cada paquete.

En primer lugar, SSH son las siglas de Secure SHell, que es el protocolo que nos permite acceder a máquinas remotas a través de la red. Así pues, OpenSSH es el conjunto de aplicaciones que nos permitirán realizar dichas conexiones, además de poder realizar transferencias de datos de forma segura. De esta manera, ademas de poder realizar varias conexiones simultáneas para poder trabajar todos juntos en el servidor, tenemos la opcion de dejar el servidor sin monitor, ya que se podrá administrar remotamente con cualquier equipo.

LAMP son las siglas de:

Linux: el Sistema Operativo con el que vamos a trabajar

Apache: el Servidor Web que instalaremos en nuestro equipo

MySQL: el gestor de Bases de Datos que nos permitiran guardar información en tablas

PHP/Perl/Python: el lenguaje de programación que nos permitirá programar y realizar consultas SQL a la base de datos.

La combinación de estas tecnologías nos permite definir la infraestructura de un servidor web.

PhpMyAdmin es la herramienta que nos permitirá administrar MySQL desde la web. Asi podremos crear y eliminar Bases de Datos; crear, eliminar y alterar tablas; borrar, editar y añadir campos; ejecutar sentencias SQL; administrar claves de campos; administrar privilegios; y exportar datos en varios formularios.

Así pues, vamos a comenzar con la instalación y configuración de OpenSSH en nuestro servidor Ubuntu.

Para instalar este paquete de aplicaciones, tenemos varias opciones disponibles:

www.openssh.org para descargar el paquete e instalarlo

Utilizar tasksel para escoger el paquete que nos interesa (SSH)

Utilizar el comando aptitude del terminal

En esta ocasión, nos parece interesante utilizar el tasksel, que ofrece un entorno gráfico simple pero práctico. Así pues, nos vamos al terminal de linux e introducimos el siguiente comando:

~sudo tasksel     /* escribimos sudo al principio del comando para acceder como administrador*/

~inroducimos el password del administrador

A continuación, nos aparece la ventana tasksel desde la que podemos seleccionar los paquetes que queremos instalar en nuestro computador. En este momento, nos interesa el OpenSSH server, así que lo seleccionamos con la tecla ‘espacio’, y con el tabulador nos situamos en el botón aceptar y pulsamos ‘enter’.

Como vereis, en esta fotografía están seleccionadas varias opciones. Podemos seleccionar los paquetes que nos interesen y se instalarán uno tras otro.

La instalación de OpenSSH no conlleva mucha interacción con el sistema.

Antes de continuar con la instalación del siguiente paquete, cambiaremos el puerto que habitualmente utiliza el SSH, que es el puerto 22, por otro a nuestra libre elección,  ya que este es un servidor experimental y lo utilizaremos un grupo reducido de personas, y además nos da un pequeño plus de seguridad que se conoce como “Seguridad por Oscuridad”, que consiste en ocultar al resto del mundo la vía de entrada a nuestra máquina. Este paso no es obligatorio, sino que se puede realizar en función de la “visibilidad” que queremos que tenga nuestro servidor con respecto al mundo exterior. Cabe destacar que no es una medida infalible, pues existen programas que rastrean puertos abiertos.

Cambiar el puerto en el que opera SSH es un paso sencillo. Sólo debemos ir al terminal e introducir el siguiente comando para editar el fichero sshd_config.

~ sudo vim /etc/ssh/sshd_config

El fichero contiene la configuración del SSH de nuestra máquina, y la opción que nos interesa es la primera, en la que aparece el puerto en el que va a operar. Una vez editado, la linea que nos interesa debe quedar con este aspecto:

# What ports, IPs and protocols we listen for Port 6666

 

 

Ahora ya tenemos instalado el paquete de aplicaciones OpenSSH y ya podemos realizar conexiones remotas a nuestra máquina. Para esto, nos iremos al terminal de Linux y escribiremos el siguiente comando:

~ssh -p 6666 master@190.160.34.34 desde la red de la escuela

~ssh -p 6666 EMAIL OCULTO desde una red externa

Como hemos explicado al inicio del artículo, podemos realizar varias conexiones simultáneas al servidor, lo que nos vendrá muy bien para trabajar en grupo.

Como extra opcional, vamos ver de que manera podemos automatizar el login para que no nos pida la contraseña cada vez que nos conectamos. Esto puede ser interesante si tenemos que hacer varias conexiones en una misma sesion, o si queremos que algun script se conecte remotamente al servidor para, por ejemplo, hacer una copia de seguridad u otra tarea de administración, de esta manera el servidor no pediria la contraseña y la tarea quedaria automatizada.

Primero, debemos crear una clave publica y una privada en el cliente (nuestra máquina). Para ello introduciremos el siguiente comando en nuestro terminal

ssh-keygen -t rsa

Nos preguntará el fichero en el que queremos guardar la clave. Lo dejaremos por defecto apretando enter.

Nos pedirá un passpharse, y lo dejaremos en blanco. Nos pedirá que la confirmemos y la dejamos en blanco.

Ahora la clave esta creada, y debemos copiar el fichero id_rsa.pub del cliente al servidor en la carpeta personal del usuario. Para ello utilizaremos el siguiente comando:

scp -P 6666 .ssh/id_rsa.pub EMAIL OCULTO:/home/usuario

Ahora nos conectaremos al servidor con nuestro usuario y crearemos un directorio en nuestra carpeta personal:

sudo mkdir .ssh

En el servidor, ejecutamos el siguiente comando:

cat id_rsa.pub >> .ssh/authorized_keys

Dentro del fichero authorized_keys acumularia todas las claves publicas de los clientes autorizados.

Ahora hacemos exit para salir del servidor y volvemos a conectarnos con nuestro usuario pero sin necesidad de escribir la contraseña.

 

Ahora instalaremos LAMP en nuestro servidor, y ya que hemos instalado OpenSSH, nos conectaremos remotamente para realizar estas acciones.

Así pues, nos vamos al terminal de Linux para iniciar la sesión remota via SSH

Una vez conectados, vamos a instalar el LAMP de la misma forma que hemos instalado OpenSSH, a través del tasksel:

~sudo tasksel

Igual que antes, seleccionaremos con el ‘espacio’ la opción que nos interesa, en este caso, LAMP, y con el tabulador nos colocaremos en el botón de aceptar y pulsaremos ‘enter’

La instalacion se inicia y tarda un tiempo en pedirnos:

“Es altamente recomendable poner una contraseña para el usuario root que gestionara mysql”, para evitar que usuarios no autorizados puedan acceder.

Indicamos la contraseña que queremos asignar al usuario root y aceptamos.

Esperamos a que termine la instalación, y ya tenemos el LAMP en nuestro servidor.

 

Ahora necesitaremos una herramienta que nos permita administrar MySQL. Esta herramienta es PHPMyAdmin. Para ello, nos iremos al terminal de Linux y escribiremos el siguiente comando:

~sudo aptitude install phpmyadmin

Al iniciar la instalación, nos pide que especifiquemos el servidor web con el que va a trabajar.

 

—————————————————————————

especificar el password de root de mysql

Especificar password de phpmyadmin

Una vez finalizada la instalación debemos ir al explorador de internet y introducir la dirección del localhost o la ip del servidor seguido de /phpmyadmin

http://190.160.34.34/phpmyadmin

 

 

Etiquetas: , ,

Proyecto E2C2010 (I): Fase de instalación

 

Logo E2C2010El proyecto de la escuela Edib E2C2010 presenta la fase de instalación de nuestro Ubuntu Server 9.10 64 bits. En esta guía quedan reflejados todos los pasos, desde la grabación en CD de Ubuntu, pasando por la configuración de LVM (Logical Volume Manager) y las decisiones de formato para cada uno de las áreas del disco. Este, es solo un capítulo de nuestro trabajo de grupo, que se complementará con otras publicaciones sobre Open SSH, la instalación de Lamp Server, y otros. Esperamos que os sirva de ayuda!

Leer el resto de esta entrada »

Etiquetas: , ,

Proyecto E2C2010 (0): Configuración desde 0 de un Servidor Web basado en Ubuntu Server 9.10

logo E2C2010

Este año la propuesta de práctica para el 2º cuatrimestre de Administración de Sistemas Operativos GNU/Linux de EDIB es completamente nueva y muy ambiciosa: estudiantes y profe vamos a constituir un equipo de trabajo con la intención  de montar un servidor web de pruebas en el aula, que también sea accesible desde fuera de nuestra red local.

En este artículo voy a presentar el proyecto y a hacer una breve introducción a sus objetivos. Intentaré que quede claro lo que podréis a encontrar en esta serie de posts que inauguramos.

Leer el resto de esta entrada »

Etiquetas: , ,

Utilidades útiles. CloudUSB 1.1

Hace ya un tiempo que tenía ganas de algo así. Lo que hace este producto es de lo más útil: permite arrancar un sistema operativo desde un pendrive y trabajar con él como si estuviese en el disco duro de tu ordenador. Lo interesante es que, al estar en el pen, puedes llevártelo y arrancar el sistema desde otro ordenador para seguir trabajando.

 

Leer el resto de esta entrada »

Etiquetas: , ,

Proyecto E2C2010 (V): Instalación servidor FTP con vsftpd

Continuando con la explicación del proyecto, en este artículo se tratará el tema de instalar un servidor ftp, crear usuarios y dar permisos únicamente a aquellos usuarios que queramos que tengan acceso a nuestro servidor.

 

Creamos un grupo ftp:

- sudo addgroup ftp

 

Creamos los usuarios que queramos:

- sudo adduser nombre_usuario

Por defecto asignará que su shell es:

–> /bin/bash

y lo asignará al directorio:

–> /home/nombre_usuario

Podemos borrar su directorio por defecto:

- sudo rm -r /home/nombre_usuario

 

Una vez creados los usuarios con sus contraseñas, debemos acceder a /etc/passwd para modificarlo:

- sudo vi /etc/passwd

Nos mostrará los usuarios creados y, en cada uno de los usuarios que acabamos de crear, tendrán al final de linea el campo:

/bin/sh

Podemos dejarlo como está o cambiarlo por:

/bin/bash

 

De esta manera podremos logear correctamente.

Además del cambio anterior deberemos modificar su directorio:

/home/nombre_usuario por /home/virtualhosts/nombre_usuario

 

Revisar/ajustar y propiedad del directorio del hosting:

- sudo chown -R nombre_usuario:nombre_grupo /home/vitualhosts/nombre_usuario

Podemos hacer una prueba para confirmar que podemos hacer login sin problema:

- sudo -l nombre_usuario

 

Una vez comprobado, instalamos el servidor a utilizar:

- sudo aptitude install vsftpd

(Cuando esté instalado, por defecto lo arrancará)

 

 

Se deberán hacer algunas modificaciones en /etc/vsftpd.conf:

- sudo vi /etc/vsftpd.conf

Para más información sobre vsftpd.conf podemos ejecutar en consola:

- man vsftpd.conf (Nos aparecerá un manual sobre vsftpd)


LAS MODIFICACIONES EN EL FICHERO SON LAS SIGUIENTES:

- anonymous_enable=TRUE —-> anonymous_enable=FALSE (Acceso anónimo)

 

<< Las líneas siguientes aparecen comentadas y debemos descomentarlas >>

- local_enable=YES (Para atender a usuarios que quieran acceder)

- write_enable=YES

- xferlog_file=/var/log/vsftpd.log (Saber en que directorio se guarda el fichero)

- xferlog_std_format=YES

- chroot_local_user=YES (Para que el usuario solo vea su dirección, nada más)

- chroot_list_file=/etc/vsftpd.chroot_list (Hace una lista de usuarios para impedir que se puedan conectar otro tipo de usuario, por ejemplo master)

 

<< La línea siguiente, además de ser descomentada, se debe modificar >>

- local_umask=022 —-> local_umask=077

 

<< Las líneas siguientes aparecen descomentadas y debemos comentarlas >>

- secure_chroot_dir=/var/run/vsftpd/empty

- rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

(No se utilizarán)

 

<< Finalmente se añadirá, al final del fichero, lo siguiente >>

#Opciones añadidas extra:

userlist_enable=YES

tcp_wrappers=YES

userlist_deny=NO

Una vez realizados los cambios anteriores crearemos dos ficheros, uno para los usuarios que queremos que se puedan conectar (vsftpd.user_list) y otro para los usuarios que no queremos que tengan acceso al servidor (vsftpd.chroot_list)

(ESTE PASO ES OPCIONAL)

En el caso de que queramos hacer este paso opcional, deberemos volcar en el fichero /etc/vsftpd.chroot_list todos los usuarios que no queremos que tengan acceso al servidor. Lo haremos con el siguiente comando:

- sudo cut -d “:” -f1 /etc/passwd | grep -v “(“nombre_usuario)|(nombre_usuario)|…” >/etc/vsftpd.chroot_list

 

Cuando se haya realizado todo lo anterior solo nos quedará el paso de reiniciar el servidor pasa que funcione correctamente:

- /etc/init.d/vsftpd reload

 

Además de vsftpd, hay otro tipo de implementaciones de FTP, como por ejemplo cuteFTP.

CuteFTP (Protocolo de transferencia de archivos) se utiliza para la transferencia de archivos entre un equipo y un servidor FTP.

Finalmente nos decidimos por la implementación de vsftpd.

Etiquetas: , ,