WordPress: HTTPS aktivieren

Um WordPress sauber über HTTPs verwenden zu könne sind einige Anpassungen notwendig gewesen.

  1. Links bzw. eingebundene Elemente in den Webseiten, z.B. auf Grafiken, müssen durch https ersetzt werden, da sonst der Browser beim Aufruf der Webseite daraufhin weißt, dass Elemente vorhanden sind, die nicht per HTTPS angebunden sind.
  2. Die Startadresse sollte abhängig, ob man per http oder https “rein kommt” auch dementsprechend angepasst werden.
# wp-content/themes/monochrome/functions.php
function force_https_the_content($content) {
  if ( is_ssl() )
  {
    $content = str_replace( 'src="http://', 'src="https://', $content );
    $content = str_replace( 'href="http://o-o-s.de', 'href="https://o-o-s.de', $content );
  }
  return $content;
}
add_filter('the_content', 'force_https_the_content');

Quelle: http://wordpress.stackexchange.com/questions/32953/how-can-i-rewrite-old-attachment-urls

# wp-config.php
// redefine path urls if site is access via https
if ($_SERVER['HTTPS']) {
define('WP_HOME','https://o-o-s.de');
define('WP_SITEURL','https://o-o-s.de');
} else {
define('WP_HOME','http://o-o-s.de');
define('WP_SITEURL','http://o-o-s.de');
}

Quelle: http://amish-geeks.de/blog/wordpress-mit-https/

Es bietet sich auch ein Rewrite für wp-admin an, um dies per HTTPS ab zu sichern:

# .htaccess
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)\ HTTP/ [NC]
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^/?(wp-admin/|wp-login\.php) https://o-o-s.de%{REQUEST_URI}%{QUERY_STRING} [R=301,QSA,L]

Windows: Wann wurde das Computerkennwort der in der Domain das letzte mal geändert?

Das Computerkennwort steht in der Registry unter “HKEY_LOCAL_MACHINE\SECURITY\Policy\Secrets\$MACHINE.ACC”. Da dieser Zweig jedoch nur für das System selber lesbar ist, muss regedit im Systemkontext gestartet werden, am einfachsten geht das mit mittels psexec:

psexec -s -i regedit.exe

Anschließend kann der Schlüssel “HKEY_LOCAL_MACHINE\SECURITY\Policy\Secrets\$MACHINE.ACC\CurVal” als Text-Datei exportiert werden.

In der Textdatei steht nun in der dritten Zeile das Datum des letzten Schreibzugriffs auf diesen Schlüssen.

Schlüsselname:          HKEY_LOCAL_MACHINE\SECURITY\Policy\Secrets\$MACHINE.ACC\CurrVal
Klassenname:            
Letzter Schreibzugriff: 19.04.2012 - 03:06 Wert 0
Name:            NAME>
Typ:             REG_NONE   Daten:

Nun wird noch ein Domaincontroller der Domain benötigt, zu dem der Computer gehört.

Jetzt noch den CN des Computerobjektes

Diese Informationen reichen nun aus, um heraus zu finden, wann das AD-Kennwort des Computerkontos das letzte mal gesetzt wurde:

repadmin /showobjmeta DCServer1 CN=Client,DC=domain |find "pwdLastSet"

Quelle:

Linux: Sparkleshare als DropBox Alternative

Mittlerweile hat wahrscheinlich jeder schon etwas von dem Dienst DropBox gehört. Er ermöglicht es einem, Dateien automatisch von der lokalen Festplatte in die “Cloud” zu synchronisieren um dann unter Umständen die dort liegenden Inhalte mit anderen zu teilen.

So etwas ähnliches kann SparkleShare auch, jedoch mit dem Vorteil, dass man zum Ablegen der Dateien einen eigenen Server (git repository)  nutzen kann :-) Zum Datenaustausch wird ein Git-Repository verwenden, die Authentifizierung erfolgt mittels SSH-Schlüssel.

Um das ganze Serverseitig mit einem Linux System und Clientseitig mit einem Windows System zu betreiben, sind folgende Aktionen notwendig.

Linux Server vorbereiten:

Als erstes habe ich einen eigenen Benutzer angelegt

adduser --disabled-password USERNAME
cd /home/USERNAME
mkdir .ssh
### Hier den Public key hinein kopieren. Er liegt unter %userprofile%\AppData\Roaming\sparkleshare\
vim .ssh/authorized_keys
chmod 700 /home/USERNAME/.ssh
chmod 600 /home/USERNAME/.ssh/authorized_keys
chown USERNAME:USERNAME .ssh/ -R

Anschließend noch git installieren und das Homeverzeichniss als Repository anlegen:

apt-get install git git-core
git init --bare /home/USERNAME/

Testen kann man die Synchronisation mittels

git clone ssh://USERNAME@server.tld/home/USERNAME/

Windows Client

Nun noch den Windows Client herunter laden:

Und nach der Einrichtung angeben, dass man einen eigenen Server verwenden möchte

Server: ssh://USERNAME@server.tld:Port
Pfad: /home/USERNAME

Abschließend noch ein Hinweis:

Da das ganze OpenSource ist, freuen sich die Macher bestimmt auch über eine kleine Spende ;-)

http://sparkleshare.org/support-us/

Selbst signierte Zertifikate werden meist dann bevorzugt, wenn man das Geld für ein gekauftes Zertifikat sparen möchte. Es bringt jedoch den Nachteil, dass solche Zertifikate nicht auf ihre Echtheit hin überprüft werden, da es keine Zertifikatskette gibt, der vertraut werden kann. Fetchmail stört sich z.B. auch an selbst signierten Zertifikaten, jedoch kann man fetchmail dies auch abgewöhnen.

Dazu braucht man als erstes den Fingerabdruck des Zertifikates.

fetchmail -v mx02.o-o-s.de
fetchmail: IMAP< A0001 OK Capability completed.fetchmail: IMAP> A0002 STARTTLS
fetchmail: IMAP< A0002 OK Begin TLS negotiation now.
fetchmail: Server-Zertifikat:
fetchmail: Herausgeber-Organisation: o-o-s.de
fetchmail: Herausgeber-CommonName: mx02.o-o-s.de
fetchmail: Subjekt-CommonName: mx02.o-o-s.de
fetchmail: mx02.o-o-s.de-Schlüssel-Fingerabdruck: 98:03:84:12:1F:FE:30:9B:AB:25:6D:B3:5B:F4:FE:B9
fetchmail: Fehler bei Server-Zertifikat-Überprüfung: self signed certificate

Jetzt fügen wir dem abzufragenden Konto in der .fetchmairc folgende Zeile hinzu:

sslfingerprint "98:03:84:12:1F:FE:30:9B:AB:25:6D:B3:5B:F4:FE:B9"

Nun brauchen wir noch das Serverzertifikat, an dieses kommen wir wie folgt:

openssl s_client -connect mx02.o-o-s.de:995 -showcerts

In der Ausgabe kopieren wir die Zeilen zwischen “—–BEGIN CERTIFICATE—–” sowie ”—–END CERTIFICATE—–” inklusive der BEGIN & END Zeile in die Datei ~/.certs/mx02.o-o-s.de.pem, anschließend rehashen wir das Zertifikat:

c_rehash ~/.certs/
Doing /root/.certs/
mx02.o-o-s.de.pem => 5487d62b.0

Nun erweitern wir die .fetchmailrc um zwei weitere Einträge

sslcertck
sslcertpath /root/.certs

…. und das Thema sollte gegessen sein :-)

Synology DS212+: Thumbnail Größe anzeigen

Synology erstellt beim upload der Bilder entweder auf dem NAS oder am lokalen PC, wenn der Synology Assistant verwendet wird, pro Bild ein oder mehrere Thumbnails. Je nachdem wie viele Bilder man auf das NAS kopiert hat, können die Thumbnails schon einen Menge an Platz weg nehmen. Um sich den Platzverbrauch anzeigen zu lassen, nimmt man am besten den SSH Zugang:

find /volume1/photo/ -type d -name @eaDir -exec du -skh {} \;
 
Execution time 0.10596489906311 seconds