<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hiparco &#187; Debian</title>
	<atom:link href="http://guimi.net/blogs/hiparco/category/debian/feed/" rel="self" type="application/rss+xml" />
	<link>http://guimi.net/blogs/hiparco</link>
	<description>Recetas y trucos de Linux e informática en general</description>
	<lastBuildDate>Mon, 23 Jan 2012 13:42:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Fuentes tipográficas en Debian GNU/Linux</title>
		<link>http://guimi.net/blogs/hiparco/fuentes-tipograficas-en-debian-gnulinux/</link>
		<comments>http://guimi.net/blogs/hiparco/fuentes-tipograficas-en-debian-gnulinux/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 09:08:09 +0000</pubDate>
		<dc:creator>Güimi</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Ofimática]]></category>

		<guid isPermaLink="false">http://guimi.net/blogs/hiparco/?p=695</guid>
		<description><![CDATA[Uno de esos pequeños detalles que hacen la vida más cómoda o incómoda al usuario de GNU/Linux, siempre rodeado de Windows, es la compatibilidad de las tipografías.
Se puede instalar facilmente las tipografias típicas de Windows mediante:
# aptitude install ttf-mscorefonts-installer
Si tenemos una partición con Windows (por ejemplo en /media/windows), otra opción es:
# mkdir -p /usr/share/fonts/truetype/win2
# cp [...]]]></description>
			<content:encoded><![CDATA[<p>Uno de esos pequeños detalles que hacen la vida más cómoda o incómoda al usuario de GNU/Linux, siempre rodeado de Windows, es la compatibilidad de las tipografías.</p>
<p>Se puede instalar facilmente las tipografias típicas de Windows mediante:<br />
<span class="codigo"># aptitude install ttf-mscorefonts-installer</span></p>
<p>Si tenemos una partición con Windows (por ejemplo en <span class="comando">/media/windows</span>), otra opción es:<br />
<span class="codigo"># mkdir -p /usr/share/fonts/truetype/win2<br />
# cp /media/windows/windows/Fonts/*.ttf /usr/share/fonts/truetype/win2</span></p>
<p>Para instalar otras fuentes, por ejemplo Tahoma, podemos:<br />
- Buscar la fuente en Google usando <span class="comando">filetype:ttf+inurl:tahoma</span> y descargarla.<br />
<span class="codigo"># cp tahoma.ttf /usr/share/fonts/truetype/msttcorefonts/<br />
# dpkg-reconfigure fontconfig</span></p>
<div class="keywords">
Fuentes, True Type, Font, truetype</div>
]]></content:encoded>
			<wfw:commentRss>http://guimi.net/blogs/hiparco/fuentes-tipograficas-en-debian-gnulinux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DNIe en Debian GNU/Linux Squeeze</title>
		<link>http://guimi.net/blogs/hiparco/dnie-en-debian-gnulinux-squeeze/</link>
		<comments>http://guimi.net/blogs/hiparco/dnie-en-debian-gnulinux-squeeze/#comments</comments>
		<pubDate>Tue, 14 Jun 2011 10:36:07 +0000</pubDate>
		<dc:creator>Güimi</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Software Libre]]></category>
		<category><![CDATA[seguridad]]></category>

		<guid isPermaLink="false">http://guimi.net/blogs/hiparco/?p=585</guid>
		<description><![CDATA[Este artículo muestra cómo instalar el DNIe en Debian GNU/Linux Squeeze.
Para instalar el DNIe en Debian Lenny y en Ubuntu Karmic Koala visitar el siguiente artículo: DNIe en GNU/Linux.
Una vez instalado un lector de DNI-e, también nos sirve para utilizar tarjetas criptográficas CardOs M4 como las que utiliza por ejemplo la Comunidad Valenciana a través [...]]]></description>
			<content:encoded><![CDATA[<p>Este artículo muestra cómo instalar el DNIe en <a href="http://www.debian.org" class="externo">Debian GNU/Linux Squeeze</a>.</p>
<p>Para instalar el DNIe en <a href="http://www.debian.org" class="externo">Debian Lenny</a> y en <a href="http://www.ubuntu.com" class="externo">Ubuntu Karmic Koala</a> visitar el siguiente artículo: <a href="http://guimi.net/blogs/hiparco/dnie-en-gnulinux/">DNIe en GNU/Linux</a>.</p>
<p>Una vez instalado un lector de DNI-e, también nos sirve para <a href="http://guimi.net/blogs/hiparco/tarjeta-cardos-m4-en-gnulinux/">utilizar tarjetas criptográficas CardOs M4</a> como las que utiliza por ejemplo la Comunidad Valenciana a través de la <a href="http://www.accv.es/" class="externo">ACCV</a>.</p>
<p>El DNI electónico o DNIe se puede hacer funcionar en GNU/Linux, tanto <b>para identificarse</b> en webs como <strong>para firmar documentos</strong> todo con <b>plena validez legal</b>. El problema es que a la hora de hacer los drivers hubo varias chapuzas, problemas con las licencias libres, utilización de librerías incorrectas&#8230; Así que para instalarlo en Debian Squeeze hace falta utilizar un poco de magia ;-) Que es un modo más bonito de decir que hay que parchear la instalación para que funcionen los paquetes.</p>
<p><center><img src="/imgs/blog/dnie/logo-dni-electronico.jpg" alt="DNIe" /> <img src="/imgs/blog/dnie/DNIe_75.png" alt="DNIe" /></center><br />
No hay que olvidar que el DNIe tiene sus limitaciones y pegas de seguridad. (Para los &#8220;paranoicos&#8221; se recomienda utilizar el DNIe únicamente desde sistemas de solo lectura como un CD con <a href="http://www.knoppix.net" class="externo">Knoppix</a>).<br />
Tampoco hay que olvidar que una firma &#8220;normal&#8221; es mucho más facil de falsificar que una firma electrónica, pese a que ninguna sea totalmente segura.<br />
&nbsp;<br />
Las siguientes instrucciones se han probado en <a href="http://www.debian.org" class="externo">Debian Squeeze</a> con un lector <a href="http://c3po.es/ltc31.html" class="externo">C3PO LTC31</a> (de venta en las oficinas de correos por 19,90 &euro;), con un &#8220;<a href="http://www.bit4id.com/" class="externo">miniLector Bit4id</a>&#8221; del <a href="http://www.planavanza.es/" class="externo">plan avanza2</a> (es un <a href="http://www.acs.com.hk/index.php?pid=product&#038;id=ACR38" class="externo">Advanced Card Systems ACR38-U</a> pero con una caja blanca) y con un lector <a href="http://www.hidglobal.com/prod_detail.php?prod_id=186">Omnikey 3021</a>.<br />
<center><img src="/imgs/blog/dnie/C3PO_LTC31.jpg" alt="C3PO_LTC31" /> <img src="/imgs/blog/dnie/ACS_ACR38-U.jpg" alt="ACS_ACR38-U" /> <img src="/imgs/blog/dnie/omnikey_3021.jpg" alt="Omnikey 3021" /></center><br />
&nbsp;</p>
<h2>INSTALACIÓN DEL LECTOR</h2>
<p>Básicamente <b>vamos a instalar los paquetes de Debian Lenny en nuestro Squeeze</b>.</p>
<pre class="codigo">$ wget http://www.dnielectronico.es/descargas/PKCS11_para_Sistemas_Unix/1.4.6.Debian_Lenny_32/Debian_Lenny_opensc-dnie_1.4.6-2_i386.deb.tar</pre>
<p>Para hacerlos funcionar necesitaremos un par de librerías del repositorio de Lenny:</p>
<pre class="codigo">$ wget http://ftp.es.debian.org/debian/pool/main/libt/libtool/libltdl3_1.5.26-4+lenny1_i386.deb
$ wget http://ftp.es.debian.org/debian/pool/main/o/openct/libopenct1_0.6.14-3_i386.deb</pre>
<p>Instalamos los paquetes:</p>
<pre class="codigo">$ tar xvf Debian_Lenny_opensc-dnie_1.4.6-2_i386.deb.tar
libopensc2_0.11.7-7_i386.deb
opensc-dnie_1.4.6-2_i386.deb
opensc_0.11.7-7_i386.deb
# dpkg -i libltdl3_1.5.26-4+lenny1_i386.deb
# dpkg -i libopenct1_0.6.14-3_i386.deb
# dpkg -i libopensc2_0.11.7-7_i386.deb
# dpkg -i opensc_0.11.7-7_i386.deb
# aptitude install pinentry-gtk2
# dpkg -i opensc-dnie_1.4.6-2_i386.deb
<font class="comentario"># Bloqueamos los paquetes
#+ para que no se actualicen, ya que los de la distribución son
#+ más modernos pero el DNIe no funciona con ellos</font>
# aptitude hold libltdl3 libopenct1 libopensc2 opensc opensc-dnie
</pre>
<p>&nbsp;<br />
Nos indica que hemos de registrar el módulo PKCS#11 en iceweasel/firefox utilizando el enlace que nos crea en el menú principal del escritorio en &#8220;<i>Oficina-> Registrar módulo DNIe PKCS#11</i>&#8220;.<br />
Indicamos que confiamos en la nueva Autoridad Certificadora (CA) para las tres posibilidades.<br />
&nbsp;<br />
Podemos comprobar si el sistema reconoce correctamente el lector con el comando &#8220;pcsc_scan&#8221; y probando a introducir y sacar el DNIe (u otras tarjetas similares):</p>
<pre class="codigo"># aptitude install pcscd pcsc-tools
$ pcsc_scan
PC/SC device scanner
[...]
Reader 0: ACS ACR 38U-CCID 00 00
  Card state: <b>Card inserted</b>,
[...]
Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX
	<b>DNI electronico (Spanish electronic ID card)</b>
	http://www.dnielectronico.es

 Reader 0: ACS ACR 38U-CCID 00 00
  Card state: <b>Card removed</b>,
</pre>
<p>&nbsp;<br />
Otras pruebas que podemos hacer son (estas con una tarjeta CardOs M4):</p>
<pre class="codigo">$ opensc-tool -l
Readers known about:
Nr.    Driver     Name
0      pcsc       C3PO LTC31 (00426664) 00 00
$ opensc-tool -a
Using reader with a card: C3PO LTC31 (00426664) 00 00
3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12
$ opensc-tool -n
Using reader with a card: C3PO LTC31 (00426664) 00 00
CardOS M4
</pre>
<p>&nbsp;<br />
Para que funcione bien iceweasel/firefox y detecte el módulo sin problemas es necesario reiniciar el navegador.<br />
&nbsp;<br />
&nbsp;</p>
<h2>USO Y DISFRUTE</h2>
<p>Lo primero que hay que saber es que en el DNIe tenemos a nuestra disposición dos certificados, uno para identificarnos (certificado de autenticación) y otro para firmar (certificado de firma), lo que son los dos principales usos del DNIe.</p>
<p>También es importante saber que cada aplicación que utiliza el DNIe establece una &#8220;sesión&#8221; con el lector de tarjetas y que no puede haber dos sesiones abiertas a la vez. Es decir <b>no podemos usar el DNIe en dos aplicaciones a la vez</b>. Sin embargo muchas aplicaciones no indican adecuadamente esta circunstancia y simplemente parece que no funcionan.<br />
Así por ejemplo si iniciamos sesión en iceweasel/firefox para acceder a una web, no podemos firmar un archivo pdf con sinadura hasta cerrar sesión. Y al revés, tras firmar un fichero con sinadura no nos deja validarnos con iceweasel.<br />
Ante la duda <u>basta con extraer y volver a introducir el DNIe en el lector para asegurarse que está disponible el acceso</u>.<br />
&nbsp;<br />
Un último recordatorio, si se introduce el PIN del DNIe erróneamente tres veces seguidas, éste se bloquea. Así que al hacer pruebas con los programas y sus configuraciones hay que tener cuidado. A mí se me bloqueó haciendo pruebas con Sinadura (para desbloquearlo hay que pasar 5 minutos por una comisaria), así que después cada vez que hacía una prueba con un programa si no funcionaba perfectamente iniciaba sesión en iceweasel/firefox.<br />
&nbsp;</p>
<h3>Identificarse en sitios web con iceweasel/firefox</h3>
<p>El DNIe se puede utilizar al navegar para identificarse en un sitio web. Así por ejemplo si nos identificamos en la web de la <a href="http://www.seg-social.es" class="externo">seguridad social</a> podremos descargarnos al instante nuestra vida laboral.</p>
<p>Primero debemos asegurarnos que hemos registrado en iceweasel/firefox el módulo de DNIe PKCS#11 (usando el menú principal del escritorio en &#8220;<i>Oficina-> Registrar módulo DNIe PKCS#11</i>&#8220;).<br />
En caso contrario podemos registrarlo a mano desde &#8220;<i>Editar -> Preferencias -> Avanzado -> Cifrado -> Dispositivos de seguridad</i>&#8220;. Seleccionamos &#8220;Cargar&#8221;, indicamos un nombre, por ejemplo &#8220;DNIe &#8211; OpenSC PKCS#11&#8243;, y la ruta del módulo &#8220;/usr/lib/opensc-pkcs11.so&#8221;.<br />
<img src="/imgs/blog/dnie/Dispositivos_Seguridad.png" alt="DNIe" /><br />
&nbsp;<br />
Si la instalación ha sido correcta y tenemos el lector conectado con un DNIe introducido, nos habilitará la opción &#8220;Iniciar sesión&#8221; (¡bien!). Si iniciamos sesión nos pedirá el PIN, pero antes es mejor reiniciar el navegador para que nos pida instalar el certificado de la DGP (<a href="http://www.policia.es/" class="externo">Dirección General de la Policia</a>).<br />
&nbsp;<br />
<b>Comprobaciones</b><br />
Podemos probar nuestro DNIe en el navegador en la <a href="http://www.dnielectronico.es/como_utilizar_el_dnie/verificar.html" class="externo">página de verificación del portal oficial</a> (el enlace para la verificación está al final de esa página).</p>
<p>Si todo ha ido bien el navegador nos pide nuestro PIN para iniciar sesión (si no lo hemos introducido antes):<br />
<img src="/imgs/blog/dnie/DNIe-PIN.png" alt="PIN DNIe" /></p>
<p>Cuando conectamos con una web en la que debemos identificarnos nos pregunta cuál de los dos certificados (el de firma o el de autenticación) queremos utilizar. Para identificarnos usamos el de autenticación.<br />
<img src="/imgs/blog/dnie/certificado.png" alt="Certificado DNIe" /></p>
<p>Si el navegador nos indica:</p>
<blockquote><p>El otro extremo de la conexión SSL no puede verificar su certificado.<br />
(Código de error: ssl_error_bad_cert_alert)</p></blockquote>
<p>Es porque no hemos iniciado sesión correctamente (hemos fallado el PIN 3 veces, no lo hemos puesto, no está bien instalado el lector&#8230;).<br />
&nbsp;<br />
Lo recomendado es &#8220;Iniciar sesión&#8221; en el navegador solo cuando se necesita y &#8220;Terminar sesión&#8221; lo antes posible. Si visitamos una página que requiere certificado sin haber iniciado sesión, el navegador nos solicitará el PIN automáticamente, pero para cerrar sesión hay que ir &#8220;a mano&#8221; a la opción &#8220;<i>Dispositivos de seguridad</i>&#8221; del menú.<br />
&nbsp;</p>
<h3>Firmar archivos PDF con Sinadura</h3>
<p>Otro uso interesante del DNIe es firmar un archivo PDF. Esta firma tiene plena validez legal. Es decir, hasta ahora había que hacer un documento, imprimirlo y después firmarlo a mano. Ahora podemos hacer un documento, guardarlo como PDF (por ejemplo con <a href="http://es.openoffice.org/" class="externo">OpenOffice Writer</a>) y después firmarlo con nuestro DNIe.<br />
Hay que insistir en que tiene <b>plena validez legal</b>. Sirve para hacer contratos, compra ventas, reclamaciones&#8230;</p>
<p>Primero <a href="http://www.sinadura.net/downloads?p_p_id=20&#038;p_p_lifecycle=0&#038;p_p_state=maximized&#038;p_p_mode=view&#038;_20_struts_action=%2Fdocument_library%2Fview&#038;_20_folderId=70681" class="externo">descargamos Sinadura</a>, en mi caso he descargado la versión 2.0.0 para GNU/Linux de 32 bits.</p>
<p>Su instalación es muy sencilla, basta con hacer:</p>
<pre class="codigo">$ java -jar  sinadura-2.0.0-unix32-installer.jar</pre>
<p>y seguir el típico asistente de &#8220;siguiente&#8221;, &#8220;siguiente&#8221;, &#8220;siguiente&#8221;&#8230;</p>
<p>Para configurarlo vamos a &#8220;<i>Sinadura -> Preferencias -> Certificados</i>&#8220;, y elegir &#8220;<i>Tarjeta Criptográfica</i>&#8220;.<br />
También recomiendo ir a &#8220;<i>Sinadura -> Preferencias -> Firma</i>&#8221; y seleccionar otra imagen ya que la que viene por omisión (el logo de Sinadura) apenas permite leer el texto insertado. Yo me he creado una <a href="/imgs/blog/dnie/DNIe-150.png">imagen muy clarita del DNIe en grises</a>.<br />
&nbsp;</p>
<p>Utilizamos el botón &#8220;<i>Añadir documentos</i>&#8221; para seleccionar el documento pdf a firmar, en mi caso &#8220;prueba.pdf&#8221; y pulsamos &#8220;<i>Firmar</i>&#8220;.<br />
<img src="/imgs/blog/dnie/Sinadura-principal.png" alt="DNIe" /></p>
<p>El programa carga el certificado (la primera vez tarda un poco, si se cuelga probablemente sea por el problema de las sesiones que comentabamos al principio) y después nos pide el PIN del DNIe.<br />
<img src="/imgs/blog/dnie/Sinadura-Clave.png" alt="DNIe" /></p>
<p>Después elegimos el certificado a utilizar, en este caso el certificado de firma:<br />
<img src="/imgs/blog/dnie/Sinadura-Certificado.png" alt="DNIe" /></p>
<p>Nos solicita una confirmación:<br />
<img src="/imgs/blog/dnie/Sinadura-firma.png" alt="DNIe" /></p>
<p>Y ya está. Podemos verificar cualquier documento firmado también desde Sinadura. Primero lo seleccionamos y después utilizamos el botón &#8220;<i>Validar</i>&#8221;<br />
<img src="/imgs/blog/dnie/Sinadura-principal.png" alt="DNIe" /><br />
&nbsp;</p>
<h3>Más posibilidades</h3>
<p>Una de las posibilidades que la gente busca es firmar y/o cifrar correos electrónicos con el DNIe.<br />
Hay que decir que técnicamente se puede pero que su validez legal es cuanto menos dudosa, y como lo que se busca con el DNIe es tener validez legal no es muy práctico. Siempre se puede enviar un correo-e &#8220;normal&#8221; con un pdf firmado como adjunto, por ejemplo un contrato.</p>
<p>Esto es porque técnicamente para firmar y/o cifrar basta con tener un par de claves pública/privada, pero el estándar internacional PKI requiere, para firmar un correo-e, que el certificado de la clave indique una dirección de correo-e, que será la única que se &#8220;certificará&#8221;. Sin embargo en el DNIe no se indica ninguna dirección de correo-e, por lo que no se puede utilizar las firmas del DNIe para este fin.<br />
Lo más recomendado es firmar y cifrar con claves <a href="http://www.gnupg.org/" class="externo">GPG</a>, u obtener firmas de la <a href="http://www.fnmt.es/" class="externo">FNMT</a>, que sí están preparadas para este propósito.<br />
En todo caso hay buenas y sencillas guías en internet sobre cómo conseguir, técnicamente, firmar correos-e con el DNIe (<a href="http://www.securitybydefault.com/2008/07/gmail-dni-e.html" class="externo">GMail+DNIe</a>; <a href="http://www.securitybydefault.com/2008/12/thunderbird-dni-e.html" class="externo">Thunderbird+DNIe</a>).</p>
<p>Para consultar otras posibilidades tenemos <a href="http://www.google.es" class="externo">el oráculo</a>, la página de <a href="http://www.dnielectronico.es/servicios_disponibles/index.html" class="externo">Servicios Disponibles</a> o la web <a href="http://www.kriptopolis.org/autenticacion-login-con-el-dni-electronico-en-debian-etch-gnu-linux" class="externo">Kriptopolis</a>.<br />
&nbsp;<br />
&nbsp;<br />
<!-- wget http://v5.guadalinex.org/guadalinex-lobo/pool/main/o/opensc-dnie/opensc-dnie_1.4.0-5_i386.deb --></p>
<div class="keywords"><b>dnie, dni electrónico, linux, debian, squeeze, C3PO LTC31, miniLector Bit4id, ACS ACR38-U</b></div>
]]></content:encoded>
			<wfw:commentRss>http://guimi.net/blogs/hiparco/dnie-en-debian-gnulinux-squeeze/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>DNIe en GNU/Linux</title>
		<link>http://guimi.net/blogs/hiparco/dnie-en-gnulinux/</link>
		<comments>http://guimi.net/blogs/hiparco/dnie-en-gnulinux/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 11:54:50 +0000</pubDate>
		<dc:creator>Güimi</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[seguridad]]></category>

		<guid isPermaLink="false">http://guimi.net/blogs/hiparco/?p=293</guid>
		<description><![CDATA[ARTÍCULO OBSOLETO: Para una versión más actual puedes leer como instalar el DNIe en Debian GNU/Linux Squeeze.
Actualizado a Febrero de 2010
Una vez instalado un lector de DNI-e, también nos sirve para utilizar tarjetas criptográficas CardOs M4 como las que utiliza por ejemplo la Comunidad Valenciana a través de la ACCV.
Actualizado a 30 de Noviembre de [...]]]></description>
			<content:encoded><![CDATA[<p><strong>ARTÍCULO OBSOLETO</strong>: Para una versión más actual puedes leer como instalar el <a href="http://guimi.net/blogs/hiparco/dnie-en-debian-gnulinux-squeeze/">DNIe en Debian GNU/Linux Squeeze</a>.</p>
<p><b>Actualizado a Febrero de 2010</b><br />
Una vez instalado un lector de DNI-e, también nos sirve para <a href="http://guimi.net/blogs/hiparco/tarjeta-cardos-m4-en-gnulinux/">utilizar tarjetas criptográficas CardOs M4</a> como las que utiliza por ejemplo la Comunidad Valenciana a través de la <a href="http://www.accv.es/">ACCV</a>.</p>
<p><b>Actualizado a 30 de Noviembre de 2009</b><br />
Ya está aquí el DNI electónico o DNIe. Y por supuesto se puede hacer funcionar en GNU/Linux, tanto <b>para identificarse</b> en webs como <strong>para firmar documentos</strong> todo con <b>plena validez legal</b>.<br />
<center><img src="/imgs/blog/dnie/logo-dni-electronico.jpg" alt="DNIe" /> <img src="/imgs/blog/dnie/DNIe_75.png" alt="DNIe" /></center><br />
No hay que olvidar que el DNIe tiene sus limitaciones y pegas de seguridad. (Para los &#8220;paranoicos&#8221; se recomienda utilizar el DNIe únicamente desde sistemas de solo lectura como un CD con <a href="http://www.knoppix.net" class="externo">Knoppix</a>).<br />
Tampoco hay que olvidar que una firma &#8220;normal&#8221; es mucho más facil de falsificar que una firma electrónica, pese a que ninguna sea totalmente segura.<br />
&nbsp;<br />
Las siguientes instrucciones se han probado en <a href="http://www.debian.org" class="externo">Debian Lenny</a> y en <a href="http://www.ubuntu.com" class="externo">Ubuntu Karmic Koala</a> con un lector <a href="http://c3po.es/ltc31.html" class="externo">C3PO LTC31</a> (de venta en las oficinas de correos por 19,90 &euro;), con un &#8220;<a href="http://www.bit4id.com/" class="externo">miniLector Bit4id</a>&#8221; del <a href="http://www.planavanza.es/" class="externo">plan avanza2</a> (es un <a href="http://www.acs.com.hk/index.php?pid=product&#038;id=ACR38" class="externo">Advanced Card Systems ACR38-U</a> pero con una caja blanca) y con un lector <a href="http://www.hidglobal.com/prod_detail.php?prod_id=186">Omnikey 3021</a>.<br />
<center><img src="/imgs/blog/dnie/C3PO_LTC31.jpg" alt="C3PO_LTC31" /> <img src="/imgs/blog/dnie/ACS_ACR38-U.jpg" alt="ACS_ACR38-U" /> <img src="/imgs/blog/dnie/omnikey_3021.jpg" alt="Omnikey 3021" /></center><br />
&nbsp;</p>
<h2>INSTALACIÓN DEL LECTOR</h2>
<p>Descargamos los <a href="http://www.dnielectronico.es/descargas/PKCS11_para_Sistemas_Unix/distribuciones_linux.html" class="externo">paquetes oficiales del DNIE</a> y los instalamos junto con los paquetes de la distribución necesarios.</p>
<pre class="codigo">$ sudo aptitude install libccid libopenct1 pcscd pcsc-tools mozilla-opensc
<font class="comentario"># En el caso de Debian Lenny</font>
$ tar xvf Debian_Lenny_opensc-dnie_1.4.6-2_i386.deb.tar
<font class="comentario"># En el caso de Ubuntu Karmic Koala usamos los paquetes de Jaunty Jakalop</font>
$ tar xvf Ubuntu_Jaunty_opensc-dnie_1.4.6-2_i386.deb.tar
libopensc2_0.11.7-7_i386.deb
opensc-dnie_1.4.6-2_i386.deb
opensc_0.11.7-7_i386.deb
$ sudo dpkg -i libopensc2_0.11.7-7_i386.deb
$ sudo dpkg -i opensc_0.11.7-7_i386.deb
$ sudo dpkg -i opensc-dnie_1.4.6-2_i386.deb
<font class="comentario"># En el caso de Ubuntu Karmic Koala bloqueamos los paquetes
#+ para que no se actualicen, ya que los de la distribución son
#+ más modernos pero el DNIe no funciona con ellos</font>
$ sudo aptitude hold opensc libopensc2</pre>
<p>&nbsp;<br />
Nos indica que hemos de registrar el módulo PKCS#11 en iceweasel/firefox utilizando el enlace que nos crea en el menú principal del escritorio en &#8220;<i>Oficina-> Registrar módulo DNIe PKCS#11</i>&#8220;.<br />
Indicamos que confiamos en la nueva Autoridad Certificadora (CA) para las tres posibilidades.<br />
&nbsp;<br />
Podemos comprobar si el sistema reconoce correctamente el lector con el comando &#8220;pcsc_scan&#8221; y probando a introducir y sacar el DNIe (u otras tarjetas similares):</p>
<pre class="codigo">$ pcsc_scan
PC/SC device scanner
[...]
Reader 0: ACS ACR 38U-CCID 00 00
  Card state: <b>Card inserted</b>,
[...]
Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX
	<b>DNI electronico (Spanish electronic ID card)</b>
	http://www.dnielectronico.es

 Reader 0: ACS ACR 38U-CCID 00 00
  Card state: <b>Card removed</b>,
</pre>
<p>&nbsp;<br />
Otras pruebas que podemos hacer son (estas con una tarjeta CardOs M4):</p>
<pre class="codigo">$ opensc-tool -l
Readers known about:
Nr.    Driver     Name
0      pcsc       C3PO LTC31 (00426664) 00 00
$ opensc-tool -a
Using reader with a card: C3PO LTC31 (00426664) 00 00
3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12
$ opensc-tool -n
Using reader with a card: C3PO LTC31 (00426664) 00 00
CardOS M4
</pre>
<p>&nbsp;<br />
Para que funcione bien iceweasel/firefox y detecte el módulo sin problemas se recomienda reiniciar la sesión gráfica (no hace falta reiniciar el equipo).<br />
&nbsp;<br />
&nbsp;</p>
<h2>USO Y DISFRUTE</h2>
<p>Lo primero que hay que saber es que en el DNIe tenemos a nuestra disposición dos certificados, uno para identificarnos (certificado de autenticación) y otro para firmar (certificado de firma), lo que son los dos principales usos del DNIe.</p>
<p>También es importante saber que cada aplicación que utiliza el DNIe establece una &#8220;sesión&#8221; con el lector de tarjetas y que no puede haber dos sesiones abiertas a la vez. Es decir <b>no podemos usar el DNIe en dos aplicaciones a la vez</b>. Sin embargo muchas aplicaciones no indican adecuadamente esta circunstancia y simplemente parece que no funcionan.<br />
Así por ejemplo si iniciamos sesión en iceweasel/firefox para acceder a una web, no podemos firmar un archivo pdf con sinadura hasta cerrar sesión. Y al revés, tras firmar un fichero con sinadura no nos deja validarnos con iceweasel.<br />
Ante la duda <u>basta con extraer y volver a introducir el DNIe en el lector para asegurarse que está disponible el acceso</u>.<br />
&nbsp;<br />
Un último recordatorio, si se introduce el PIN del DNIe erróneamente tres veces seguidas, éste se bloquea. Así que al hacer pruebas con los programas y sus configuraciones hay que tener cuidado. A mí se me bloqueó haciendo pruebas con Sinadura (para desbloquearlo hay que pasar 5 minutos por una comisaria), así que después cada vez que hacía una prueba con un programa si no funcionaba perfectamente iniciaba sesión en iceweasel/firefox.<br />
&nbsp;</p>
<h3>Identificarse en sitios web con iceweasel/firefox</h3>
<p>El DNIe se puede utilizar al navegar para identificarse en un sitio web. Así por ejemplo si nos identificamos en la web de la <a href="http://www.seg-social.es" class="externo">seguridad social</a> podremos descargarnos al instante nuestra vida laboral.</p>
<p>Primero debemos asegurarnos que hemos registrado en iceweasel/firefox el módulo de DNIe PKCS#11 (usando el menú principal del escritorio en &#8220;<i>Oficina-> Registrar módulo DNIe PKCS#11</i>&#8220;).<br />
En caso contrario podemos registrarlo a mano desde &#8220;<i>Editar -> Preferencias -> Avanzado -> Cifrado -> Dispositivos de seguridad</i>&#8220;. Seleccionamos &#8220;Cargar&#8221;, indicamos un nombre, por ejemplo &#8220;DNIe &#8211; OpenSC PKCS#11&#8243;, y la ruta del módulo &#8220;/usr/lib/opensc-pkcs11.so&#8221;.<br />
<img src="/imgs/blog/dnie/Dispositivos_Seguridad.png" alt="DNIe" /><br />
&nbsp;<br />
Si la instalación ha sido correcta y tenemos el lector conectado con un DNIe introducido, nos habilitará la opción &#8220;Iniciar sesión&#8221; (¡bien!). Si iniciamos sesión nos pedirá el PIN, pero antes es mejor reiniciar el navegador para que nos pida instalar el certificado de la DGP (<a href="http://www.policia.es/" class="externo">Dirección General de la Policia</a>).<br />
&nbsp;<br />
<b>Comprobaciones</b><br />
Podemos probar nuestro DNIe en el navegador en la <a href="http://www.dnielectronico.es/como_utilizar_el_dnie/verificar.html" class="externo">página de verificación del portal oficial</a> (el enlace para la verificación está al final de esa página).</p>
<p>Si todo ha ido bien el navegador nos pide nuestro PIN para iniciar sesión (si no lo hemos introducido antes):<br />
<img src="/imgs/blog/dnie/DNIe-PIN.png" alt="PIN DNIe" /></p>
<p>Cuando conectamos con una web en la que debemos identificarnos nos pregunta cuál de los dos certificados (el de firma o el de autenticación) queremos utilizar. Para identificarnos usamos el de autenticación.<br />
<img src="/imgs/blog/dnie/certificado.png" alt="Certificado DNIe" /></p>
<p>Si el navegador nos indica:</p>
<blockquote><p>El otro extremo de la conexión SSL no puede verificar su certificado.<br />
(Código de error: ssl_error_bad_cert_alert)</p></blockquote>
<p>Es porque no hemos iniciado sesión correctamente (hemos fallado el PIN 3 veces, no lo hemos puesto, no está bien instalado el lector&#8230;).<br />
&nbsp;<br />
Lo recomendado es &#8220;Iniciar sesión&#8221; en el navegador solo cuando se necesita y &#8220;Terminar sesión&#8221; lo antes posible. Si visitamos una página que requiere certificado sin haber iniciado sesión, el navegador nos solicitará el PIN automáticamente, pero para cerrar sesión hay que ir &#8220;a mano&#8221; a la opción &#8220;<i>Dispositivos de seguridad</i>&#8221; del menú.<br />
&nbsp;</p>
<h3>Firmar archivos PDF con Sinadura</h3>
<p>Otro uso interesante del DNIe es firmar un archivo PDF. Esta firma tiene plena validez legal. Es decir, hasta ahora había que hacer un documento, imprimirlo y después firmarlo a mano. Ahora podemos hacer un documento, guardarlo como PDF (por ejemplo con <a href="http://es.openoffice.org/" class="externo">OpenOffice Writer</a>) y después firmarlo con nuestro DNIe.<br />
Hay que insistir en que tiene <b>plena validez legal</b>. Sirve para hacer contratos, compra ventas, reclamaciones&#8230;</p>
<p>Primero <a href="http://www.sinadura.net/downloads?p_p_id=20&#038;p_p_lifecycle=0&#038;p_p_state=maximized&#038;p_p_mode=view&#038;_20_struts_action=%2Fdocument_library%2Fview&#038;_20_folderId=70681" class="externo">descargamos Sinadura</a>, en mi caso he descargado la versión 2.0.0 para GNU/Linux de 32 bits.</p>
<p>Su instalación es muy sencilla, basta con hacer:</p>
<pre class="codigo">$ java -jar  sinadura-2.0.0-unix32-installer.jar</pre>
<p>y seguir el típico asistente de &#8220;siguiente&#8221;, &#8220;siguiente&#8221;, &#8220;siguiente&#8221;&#8230;</p>
<p>Para configurarlo vamos a &#8220;<i>Sinadura -> Preferencias -> Certificados</i>&#8220;, y elegir &#8220;<i>Tarjeta Criptográfica</i>&#8220;.<br />
También recomiendo ir a &#8220;<i>Sinadura -> Preferencias -> Firma</i>&#8221; y seleccionar otra imagen ya que la que viene por omisión (el logo de Sinadura) apenas permite leer el texto insertado. Yo me he creado una <a href="/imgs/blog/dnie/DNIe-150.png">imagen muy clarita del DNIe en grises</a>.<br />
&nbsp;</p>
<p>Utilizamos el botón &#8220;<i>Añadir documentos</i>&#8221; para seleccionar el documento pdf a firmar, en mi caso &#8220;prueba.pdf&#8221; y pulsamos &#8220;<i>Firmar</i>&#8220;.<br />
<img src="/imgs/blog/dnie/Sinadura-principal.png" alt="DNIe" /></p>
<p>El programa carga el certificado (la primera vez tarda un poco, si se cuelga probablemente sea por el problema de las sesiones que comentabamos al principio) y después nos pide el PIN del DNIe.<br />
<img src="/imgs/blog/dnie/Sinadura-Clave.png" alt="DNIe" /></p>
<p>Después elegimos el certificado a utilizar, en este caso el certificado de firma:<br />
<img src="/imgs/blog/dnie/Sinadura-Certificado.png" alt="DNIe" /></p>
<p>Nos solicita una confirmación:<br />
<img src="/imgs/blog/dnie/Sinadura-firma.png" alt="DNIe" /></p>
<p>Y ya está. Podemos verificar cualquier documento firmado también desde Sinadura. Primero lo seleccionamos y después utilizamos el botón &#8220;<i>Validar</i>&#8221;<br />
<img src="/imgs/blog/dnie/Sinadura-principal.png" alt="DNIe" /><br />
&nbsp;</p>
<h3>Más posibilidades</h3>
<p>Una de las posibilidades que la gente busca es firmar y/o cifrar correos electrónicos con el DNIe.<br />
Hay que decir que técnicamente se puede pero que su validez legal es cuanto menos dudosa, y como lo que se busca con el DNIe es tener validez legal no es muy práctico. Siempre se puede enviar un correo-e &#8220;normal&#8221; con un pdf firmado como adjunto, por ejemplo un contrato.</p>
<p>Esto es porque técnicamente para firmar y/o cifrar basta con tener un par de claves pública/privada, pero el estándar internacional PKI requiere, para firmar un correo-e, que el certificado de la clave indique una dirección de correo-e, que será la única que se &#8220;certificará&#8221;. Sin embargo en el DNIe no se indica ninguna dirección de correo-e, por lo que no se puede utilizar las firmas del DNIe para este fin.<br />
Lo más recomendado es firmar y cifrar con claves <a href="http://www.gnupg.org/" class="externo">GPG</a>, u obtener firmas de la <a href="http://www.fnmt.es/" class="externo">FNMT</a>, que sí están preparadas para este propósito.<br />
En todo caso hay buenas y sencillas guías en internet sobre cómo conseguir, técnicamente, firmar correos-e con el DNIe (<a href="http://www.securitybydefault.com/2008/07/gmail-dni-e.html" class="externo">GMail+DNIe</a>; <a href="http://www.securitybydefault.com/2008/12/thunderbird-dni-e.html" class="externo">Thunderbird+DNIe</a>).</p>
<p>Para consultar otras posibilidades tenemos <a href="http://www.google.es" class="externo">el oráculo</a>, la página de <a href="http://www.dnielectronico.es/servicios_disponibles/index.html" class="externo">Servicios Disponibles</a> o la web <a href="http://www.kriptopolis.org/autenticacion-login-con-el-dni-electronico-en-debian-etch-gnu-linux" class="externo">Kriptopolis</a>.<br />
&nbsp;<br />
&nbsp;<br />
<!-- wget http://v5.guadalinex.org/guadalinex-lobo/pool/main/o/opensc-dnie/opensc-dnie_1.4.0-5_i386.deb --></p>
<h2>Sobre este tutorial</h2>
<p>Hay bastantes guías en internet, pero en Julio de 2009 ninguna me daba buen resultado en Debian Lenny. Básicamente parecía que todo iba bien, excepto por el navegador (Iceweasel/Firefox) que &#8220;petaba&#8221; al introducir un DNIe en el lector. Al final encontré la solución en <a href="http://www.guadalinex.org/" class="externo">Guadalinex</a> gracias a una pista de <a href="http://universo.emergya.info/espacios/fontanon/dnie-y-lector-acr38-bajo-linux" class="externo">fontanon en univero emergya</a>.<br />
Tras publicar la primera versión de este tutorial con todos los pasos para que el lector funcione en Debian Lenny e indicando los problemas encontrados, se pusieron en contacto conmigo los fabricantes del lector C3PO LTC31 (ver los primeros comentarios a esta entrada) y descubrimos que el problema estaba en el empaquetado de las librerías de la DGT, cosa que a día de hoy (Septiembre de 2009) ya está solucionada.<br />
Después he obtenido otro lector, he tenido problemas para firmar PDFs&#8230; y así he ido modificando y haciendo crecer este tutorial hasta llegar a esta versión (Noviembre 2009).</p>
<p>Así pues gracias a la gente de C3PO, de sinadura y a todos los que han puesto información en internet sobre como usar y configurar el DNIe.<br />
&nbsp;</p>
<div class="keywords"><b>dnie, dni electrónico, linux, debian, lenny, C3PO LTC31, miniLector Bit4id, ACS ACR38-U</b></div>
]]></content:encoded>
			<wfw:commentRss>http://guimi.net/blogs/hiparco/dnie-en-gnulinux/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Compilar núcleo a la manera Debian</title>
		<link>http://guimi.net/blogs/hiparco/compilar-nucleo-a-la-manera-debian/</link>
		<comments>http://guimi.net/blogs/hiparco/compilar-nucleo-a-la-manera-debian/#comments</comments>
		<pubDate>Mon, 11 Jun 2007 16:21:29 +0000</pubDate>
		<dc:creator>Güimi</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Prompt]]></category>

		<guid isPermaLink="false">http://guimi.net/blogs/hiparco/?p=140</guid>
		<description><![CDATA[Comprobamos las versiones de los paquetes necesarios instalados con el script kverif.sh.
# Preparacion
sudo aptitude install linux-source-2.6
sudo aptitude install kernel-package
sudo aptitude install libncurses5-dev
mkdir ~/source
cd ~/source


# Descomprimimos las fuentes
tar xjf /usr/src/linux-source-2.6.17.tar.bz2
cd linux-source-2.6.17/


# Configuramos el kernel
make menuconfig

# Limpiamos el árbol de fuentes y reiniciamos los parámetros de kernel-package
make-kpkg clean

# Compilamos el kernel y generamos el paquete .deb
fakeroot /usr/bin/make-kpkg [...]]]></description>
			<content:encoded><![CDATA[<p>Comprobamos las versiones de los paquetes necesarios instalados con el script <a href="datos/tec-docs/scripts/kverif.sh">kverif.sh</a>.</p>
<p># Preparacion</p>
<pre class="codigo">sudo aptitude install linux-source-2.6
sudo aptitude install kernel-package
sudo aptitude install libncurses5-dev
mkdir ~/source
cd ~/source
</pre>
<p>
# Descomprimimos las fuentes</p>
<pre class="codigo">tar xjf /usr/src/linux-source-2.6.17.tar.bz2
cd linux-source-2.6.17/
</pre>
<p>
# Configuramos el kernel</p>
<pre class="codigo">make menuconfig</pre>
<p>
# Limpiamos el árbol de fuentes y reiniciamos los parámetros de kernel-package</p>
<pre class="codigo">make-kpkg clean</pre>
<p>
# Compilamos el kernel y generamos el paquete .deb</p>
<pre class="codigo">fakeroot /usr/bin/make-kpkg --revision=custom.1.0 kernel_image</pre>
<p>
# Instalamos el paquete creado</p>
<pre class="codigo">cd ..
sudo dpkg -i linux-image-2.6.17_custom.1.0_i386.deb</pre>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://guimi.net/blogs/hiparco/compilar-nucleo-a-la-manera-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Claves GPG con apt-key</title>
		<link>http://guimi.net/blogs/hiparco/claves-gpg-con-apt-key/</link>
		<comments>http://guimi.net/blogs/hiparco/claves-gpg-con-apt-key/#comments</comments>
		<pubDate>Thu, 12 Jan 2006 16:14:51 +0000</pubDate>
		<dc:creator>Güimi</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Prompt]]></category>

		<guid isPermaLink="false">http://guimi.net/blogs/hiparco/?p=136</guid>
		<description><![CDATA[Si al hacer apt-get update aparece el siguiente mensaje:
The following signatures couldn&#8217;t be verified because the public key is not available: NO_PUBKEY 010908312D230C5F
El sistema no est&#225; indicando que necesitamos una nueva llave para poder actualizar los paquetes.
De la clave (números y letras tras &#8216;NO_PUBKEY&#8217;) tomamos los 8 últimos caracteres, en el ejemplo: &#8216;2D230C5F&#8217;, e indicamos [...]]]></description>
			<content:encoded><![CDATA[<p>Si al hacer <span class="comando">apt-get update</span> aparece el siguiente mensaje:<br />
<span class="codigo">The following signatures couldn&#8217;t be verified because the public key is not available: NO_PUBKEY 010908312D230C5F</span><br />
El sistema no est&aacute; indicando que necesitamos una nueva llave para poder actualizar los paquetes.<br />
De la clave (números y letras tras &#8216;NO_PUBKEY&#8217;) tomamos los 8 últimos caracteres, en el ejemplo: &#8216;2D230C5F&#8217;, e indicamos a gpg que nos baje del servidor de llaves de Debian esa clave:<br />
<span class="comando">#gpg &#8211;keyserver keyring.debian.org &#8211;recv-key 2D230C5F</p>
<pre class="codigo">
    gpg: requesting key 2D230C5F from hkp server keyring.debian.org
    gpg: key 2D230C5F: "Debian Archive Automatic Signing Key (2006) &lt; ftpmaster@debian.org>" not changed
    gpg: Total number processed: 1
    gpg:              unchanged: 1
</pre>
<p>Después exportamos la nueva clave de gpg y la añadimos en apt-key con el siguiente comando:<br />
<span class="comando">gpg &#8211;armor &#8211;export 2D230C5F | apt-key add -<br /></span></p>
<pre class="codigo">
    gpg: no ultimately trusted keys found
    OK
</pre>
<p>Por último podemos comprobar que la nueva clave es válida:<br />
<span class="comando"># apt-key list</p>
<pre class="codigo">
    /etc/apt/trusted.gpg
    --------------------
    pub   1024D/4F368D5D 2005-01-31 [expires: 2006-01-31]
    uid                  Debian Archive Automatic Signing Key (2005) &lt;ftpmaster@debian.org >

    pub   1024D/2D230C5F 2006-01-03 [expires: 2007-02-07]
    uid                  Debian Archive Automatic Signing Key (2006) &lt;ftpmaster@debian.org>
</pre>
<p>Ya podemos volver a hacer apt-get update.</p>
]]></content:encoded>
			<wfw:commentRss>http://guimi.net/blogs/hiparco/claves-gpg-con-apt-key/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

