SSL & Serverzertifikat

Zertifikat-request

Ist openssl installiert, dann
$ openssl req -newkey 1024 -keyout key.pem -nodes -new -out req.pem

-nodesnicht password geschuetzt.
-newneu erstellen nicht Ueberschreiben.
req.pemist das Certificate Signing Request File (CSR).
Dieses wird benaetigt um das Zertifikat bei der Certifying Authority (CA) zu zertifizieren.
key.pemist die Schluesseldatei.

in Zertifikat enthalten sind.

* Country Name (2 letter code):
* State or Province Name:
* Organization Name:
* Organizational Unit Name:
* Common Name:
* Email Address:
* A challenge password:

Die Zertifikatanforderung kann auch angesehen werden:

openssl req -noout -text -in req.pem

Signierung

Damit das Zertifikat vom Webbrowser als sicher anerkannt wird, sollte dieses Zertifikat von einer Oeffentlichen CA signieren oder signieren lassen z.B.

Zum Beispiel kann so ein Zertifikat bei der Telekom beantragt werden.

www.telekom.de/t-telesec

Nach die Zertifizierung erhlaet man von der CA das User Zertifikat. (cert.pem).
p.s. Man kann sein erzeugtes Zertifikat selbst signieren.

Ein selbst signiertes Zertifikat kann wie folgt generiert werden
$ openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem

Apache und SSL Konfiguration

Apache und mod_ssl.
key.pem und cert.pem in folgede Verzeichnisse zu kopieren.
key.pem in das Verzeichnis /etc/httpd/ssl.key/
cert.pem in das Verzeichnis /etc/httpd/ssl.crt/

direkt in der httpd.conf erfolgen, order auch in eine neue Datei ausgelagert werden.

Include /etc/httpd/conf.d/myssl.conf

## SSL Virtual Host Context
Listen 443

# General setup for the virtual host
DocumentRoot “/srv/www/ssldocs”
# SSL Engine Switch:
SSLEngine on
# Server Certificate:
SSLCertificateFile /etc/httpd/ssl.cert/cert.pem
# Server Private Key:
SSLCertificateKeyFile /etc/httpd/ssl.key/key.pem

Options None
AllowOverride None
Order allow,deny
Allow from all

edit etc/sysconfig/apache die Variable
HTTPD_SEC_MOD_SSL=yes

edit /etc/sysconfig/apache die Variable:
APACHE_SERVER_FLAGS=”SSL”
Neustart.
Zum Testen kann nun folgender Befehl helfen.
$ netstat -atnp | grep apache

Zertifikat-Authority

Ein selbst signiertes Zertifikat kann wie folgt generiert werden
$ openssl req -new -x509 -keyout userkey.pem -out cert.pem -nodes

Generate key pair: (2048 bit DSA key)

ssh-keygen -t dsa -b 2048

Copy public key to remote machine:

If you need to make a .ssh directory on the remote machine:
cat ~/.ssh/id_dsa.pub | ssh user@remote.machine.com 'mkdir .ssh; cat >> .ssh/authorized_keys'
or:
cat ~/.ssh/id_dsa.pub | ssh user@remote.machine.com 'cat >> .ssh/authorized_keys'

$ vi /etc/ssh/sshd_config
remove comment from
# PubkeyAuthentication yes
restart ssh
$ svcadm restart sshd

command:
ssh [-v] [remoteuser@]remotehost [command]
ssh -v remoteuser@remotehost -p portnumber

Leave a Reply

Your email address will not be published. Required fields are marked *

*