<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.slacky.eu/wikislack/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
		<id>http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;feed=atom&amp;action=history</id>
		<title>Strong Authentication - Cronologia</title>
		<link rel="self" type="application/atom+xml" href="http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;action=history"/>
		<updated>2013-05-18T16:59:17Z</updated>
		<subtitle>Cronologia della pagina su questo sito</subtitle>
		<generator>MediaWiki 1.20.3</generator>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;diff=1462&amp;oldid=prev</id>
		<title>L1q1d il 09:56, 29 ago 2006</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;diff=1462&amp;oldid=prev"/>
				<updated>2006-08-29T09:56:22Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr style='vertical-align: top;'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Versione meno recente&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Versione delle 09:56, 29 ago 2006&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 1:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 1:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Ufficio_e_Web]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Obiettivo: =&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Obiettivo: =&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Si vuole proteggere una pagina / webapp in tomcat con un&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Si vuole proteggere una pagina / webapp in tomcat con un&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>L1q1d</name></author>	</entry>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;diff=1461&amp;oldid=prev</id>
		<title>L1q1d il 09:55, 29 ago 2006</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Strong_Authentication&amp;diff=1461&amp;oldid=prev"/>
				<updated>2006-08-29T09:55:45Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Obiettivo: =&lt;br /&gt;
Si vuole proteggere una pagina / webapp in tomcat con un&lt;br /&gt;
autenticazione forte, in maniera cioe' che il server permetta l'accesso solo ad&lt;br /&gt;
un client che si presenti con un certificato ritenuto valido.&lt;br /&gt;
= Creare una CA (Certificate Authority) locale = &lt;br /&gt;
== Utilizzo a scopo commerciale ==&lt;br /&gt;
In un caso di utilizzo a scopo commerciale il nostro certificato andrebbe firmato da&lt;br /&gt;
una CA reale come VeriSign o altre, a scopo sia di studio che di utilizzo in una&lt;br /&gt;
Intranet privata creeremo invece un CA locale.&lt;br /&gt;
Per questo c'e un makefile pronto, l'unico passo obbligatorio e' modificare il file&lt;br /&gt;
openssl.conf per adattarlo alle proprie necessita', specificando i parametri&lt;br /&gt;
obbligatori “commonName”, ”organizationName”, “countryName”,&lt;br /&gt;
“stateOrProvinceName” e se si vuole i facoltativi “organizationalUnitName” ed&lt;br /&gt;
“emailAddress”, dopodiche' nella directory dove c'e il makefile:&lt;br /&gt;
 $&amp;gt; make init&lt;br /&gt;
Nella directory viene creata la struttura necessaria alla CA locale, in particolare il&lt;br /&gt;
file ca-key.pem sara' il certificato principale della CA.&lt;br /&gt;
== Lato Server ==&lt;br /&gt;
Creare un Java Keystore ( .jks) lato server, al suo interno un alias per il server con&lt;br /&gt;
una coppia di chiavi RSA:&lt;br /&gt;
n.b. $SERVER e' la variabile a cui sostituire il nome server&lt;br /&gt;
 $&amp;gt; keytool -genkey -alias $SERVER -keyalg RSA -keystore $SERVER.jks -validity 365&lt;br /&gt;
Generare una Certificate Signing Request (.csr) per le chiavi server:&lt;br /&gt;
 $&amp;gt; keytool -certreq -keyalg RSA -alias $SERVER -file $SERVER.csr -keystore $SERVER.jks&lt;br /&gt;
Firmare la richiesta generando un Certificato (.cert)&lt;br /&gt;
 $&amp;gt; make sign&lt;br /&gt;
Convertire il Certificato in un formato adatto al keystore dove andra' importato&lt;br /&gt;
 $&amp;gt; openssl x509 -in $SERVER.cert -out $SERVER-der.cer -outform DER&lt;br /&gt;
 n.b. L'out ha estensione .cer e non .cert per windows&lt;br /&gt;
Completare il primo Keystore importando al suo interno due certificati: prima quello della CA per ragioni di dipendenza tra i due e poi quello server:&lt;br /&gt;
 $&amp;gt; keytool -import -alias root -keystore $SERVER.jks -trustcacerts -file ca-cert.pem&lt;br /&gt;
 $&amp;gt; keytool -import -alias $SERVER -file $SERVER-der.cer -keystore $SERVER.jks&lt;br /&gt;
Creare un Keystore CA , che conterra' solo certificati ma di entrambe le parti&lt;br /&gt;
 $&amp;gt; keytool -import -alias ca-cert -keystore cacerts.jks -file ca-cert.pem -trustcacerts&lt;br /&gt;
== Lato Client ==&lt;br /&gt;
Generare le chiavi RSA del client&lt;br /&gt;
 $&amp;gt; openssl genrsa -des3 -out $CLIENT.key 1024&lt;br /&gt;
Generare la richiesta CSR per il client&lt;br /&gt;
 $&amp;gt; openssl req -key $CLIENT.key -new -out $CLIENTE.csr&lt;br /&gt;
Firmare la richiesta ed ottenere un Certificato (.cer) client&lt;br /&gt;
 $&amp;gt; make sign&lt;br /&gt;
Combinare Chiavi (.key) e Certificato (.cer) in un unico package PKCS12 (.pfx)&lt;br /&gt;
 $&amp;gt; openssl pkcs12 -export -inkey $CLIENT.key -in $CLIENT.cer -out&lt;br /&gt;
 $CLIENT.pfx&lt;br /&gt;
= Installazione e Configurazione =&lt;br /&gt;
La procedura eseguita fino a qui rilascia 3 file rilevanti: i due Java Keystore&lt;br /&gt;
$SERVER.jks e cacerts.jks e un file $CLIENT.pfx.&lt;br /&gt;
== Lato Server ==&lt;br /&gt;
Copiare i due Keystore sotto la dir /conf di Tomcat&lt;br /&gt;
Editare il file server.xml sotto la dir /conf di Tomcat, e modificare la sezione&lt;br /&gt;
relativa ai connettori Ssl da cosi:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Connector port=&amp;quot;8443&amp;quot;&lt;br /&gt;
maxThreads=&amp;quot;150&amp;quot; minSpareThreads=&amp;quot;25&amp;quot; maxSpareThreads=&amp;quot;75&amp;quot;&lt;br /&gt;
enableLookups=&amp;quot;false&amp;quot; disableUploadTimeout=&amp;quot;true&amp;quot;&lt;br /&gt;
acceptCount=&amp;quot;100&amp;quot; debug=&amp;quot;0&amp;quot; scheme=&amp;quot;https&amp;quot; secure=&amp;quot;true&amp;quot;&lt;br /&gt;
clientAuth=&amp;quot;false&amp;quot; sslProtocol=&amp;quot;TLS&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
a cosi:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Connector port=&amp;quot;443&amp;quot;&lt;br /&gt;
maxThreads=&amp;quot;150&amp;quot; minSpareThreads=&amp;quot;25&amp;quot; maxSpareThreads=&amp;quot;75&amp;quot;&lt;br /&gt;
enableLookups=&amp;quot;false&amp;quot; disableUploadTimeout=&amp;quot;true&amp;quot;&lt;br /&gt;
acceptCount=&amp;quot;100&amp;quot; debug=&amp;quot;0&amp;quot; scheme=&amp;quot;https&amp;quot; secure=&amp;quot;true&amp;quot;&lt;br /&gt;
clientAuth=&amp;quot;true&amp;quot; sslProtocol=&amp;quot;TLS&amp;quot;&lt;br /&gt;
keystoreFile=&amp;quot;conf\$SERVER.jks&amp;quot; keystorePass=&amp;quot;changeit&amp;quot;&lt;br /&gt;
truststoreFile=&amp;quot;conf\cacerts.jks&amp;quot; truststorePass=&amp;quot;changeit&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
modificando quindi:&lt;br /&gt;
• La porta, da 8443 a 443, che e' la porta di default per https&lt;br /&gt;
• La variabile “clientAuth” da “false” a “true”&lt;br /&gt;
• Aggiungendo le due righe relative ai Keystore Jks&lt;br /&gt;
== Lato Client ==&lt;br /&gt;
Importare il file $CLIENT.pfx nel browser&lt;br /&gt;
&lt;br /&gt;
Autore: Federico Pallante&lt;br /&gt;
mailto:vaquerito@slacky.it&lt;/div&gt;</summary>
		<author><name>L1q1d</name></author>	</entry>

	</feed>