Freitag, 23. Oktober 2009, 17:36 Uhr von Christian
Seit der vor kurzem erschienenen Version 1.6.6 von Subversion gibt es nun eine einfachere Möglichkeit als bisher, die Versionskennung aus der Fußzeile zu entfernen. Ab Revision 40008 wird nämlich die ServerSignature-Direktive der Apache-Konfiguration ausgewertet, wie aus der Änderungsübersicht hervorgeht. In einem Kommentar an der geänderten Stelle im Quellcode steht lediglich „ServerSignature must be enabled“, im Commit-Kommentar immerhin „If ServerSignature is disabled in apache, do not print Subversion’s version information“. Da ServerSignature jedoch einen der Werte On, Off und EMail annehmen kann, ist nicht ganz klar, was genau mit „enabled“ bzw. „disabled“ gemeint ist und was demnach bei einem Wert von EMail passiert. Da das auch nicht unbedingt aus dem Quellcode ersichtlich ist, habe ich also selbst getestet.
Ergebnis: Die Versionskennung wird nur bei der Einstellung ServerSignature On ausgegeben. Bei den Einstellungen EMail bzw. Off wird die gesamte Fußzeile unterdrückt, anders als mithilfe der Eingangs erwähnten anderen Methode zur Filterung lediglich der Versionsnummer.
Ab Revision 40031 der entsprechenden Datei repos.c ist zusätzlich ein Kommentar vorhanden, der diesen Code-Abschnitt jedoch als eher temporäre Lösung („kludge“) einstuft. Daher sollte man sich nicht völlig darauf verlassen, dass sie immer und auch zukünftig wirkt wie erhofft.
Freitag, 16. Oktober 2009, 23:18 Uhr von Christian
Bin vor ein paar Tagen über die drei englischen Wörter lunch, launch und lounge gestolpert. Insbesondere ihre Aussprache und damit deren Unterscheidbarkeit aufgrund der Aussprache waren mir nicht ganz klar. Zum Glück gibts für solche Fälle Hörbeispiele im Netz zu finden: lunch, launch und lounge.
Freitag, 16. Oktober 2009, 18:23 Uhr von Christian
Ich musste gerade auf einem alten Solaris-System (SunOS) mein Passwort ändern, was allerdings nicht ganz so einfach war, wie ich mir das vorgestellt hatte.
$ passwd
passwd: Changing password for […]
Enter existing login password:
New Password:
passwd: The password must contain at least 1 special character(s).
Please try again
New Password:
passwd: The first 8 characters of the password must contain at least 1 digit(s).
Please try again
New Password:
passwd: The first 8 characters of the password must contain at least 2 uppercase alpha character(s).
Permission denied
$ passwd
passwd: Changing password for […]
Enter existing login password:
New Password:
passwd: Password too short – must be at least 8 characters.
Please try again
New Password:
passwd: The first 8 characters of the old and new passwords must differ by at least 7 positions.
Please try again
New Password:
Re-enter new Password:
passwd: password successfully changed for […]
Da denkt man sich einen Haufen (eigentlich guter) Passwörter aus und weiß zum Schluss kaum noch, welches denn nun endlich vom System akzeptiert wurde. Ich wage mir gar nicht auszumalen, welche anderen Regelbrüche ich mit etwas mehr Fantasie noch hätte provozieren können. Auch wird durch die Kombination solcher Regeln der Zufall beim Aufbau eines Passwortes eingeschränkt, was einem potenziellen Angreifer zugutekommt.
Mittwoch, 14. Oktober 2009, 19:15 Uhr von Christian
Beim WebDAV-Zugriff auf ein Subversion-Repository via Browser wird immer eine Fußzeile generiert, welche die Versionsnummer des installierten SVN-Servers enthält, z. B. „Powered by Subversion version 1.5.5 (r34862).“. Meines Wissens kann diese momentan nicht direkt per Konfigurationsdirektive unterdrückt werden. Wer sich also daran gestört fühlt, kann sie durch Einsatz des Apache-Moduls mod_substitute vor Auslieferung der HTML-Seite mithilfe eines regulären Ausdrucks herausfiltern, sodass letztendlich nur noch „Powered by Subversion.“ ausgegeben wird.
Dafür muss zuerst das Modul mit
a2enmod substitute
aktiviert werden. Anschließend kann der folgende Schnipsel an entsprechender Stelle in die Apache-Konfiguration eingefügt werden.
<IfModule mod_substitute.c>
AddOutputFilterByType SUBSTITUTE text/html
Substitute "s|(Powered by <[^>]*>Subversion<[^>]*>) version .*\.|$1.|"
</IfModule>
Die Prüfung mit IfModule sorgt dafür, dass der Block nur aktiv wird, falls auch das Modul aktiv ist, da Apache sonst die Übernahme der Konfiguration mit der Meldung „Invalid command ‚Substitute‘, perhaps misspelled or defined by a module not included in the server configuration“ verweigert.
Bei mir ist dieser „Hack“ nun seit fast drei Monaten im Einsatz, ohne dass sich Probleme oder Nebenwirkungen gezeigt haben.
Da ich gerne alles fotografiere, was mir vor die Linse kommt, musste auch mal ein Gewitter dran glauben. Das ist eigentlich schon der zweite Versuch. Ich bin nur noch nicht dazu gekommen, das Material des ersten aufzubereiten, also gehts mit dem von heute früh zwischen etwa 2 und 3 Uhr los.
Hier auch mal der Versuch, das ganze in Bewegtbild (QuickTime-Filme) festzuhalten. Um wirklich etwas zu sehen, am besten mithilfe der Steuerleiste durchnavigieren. Falls jemand eine bessere Möglichkeit kennt, eine Art Daumenkino für solchen Zweck anzulegen (Lightbox oder ähnliches ist einfach zu träge) … ich bin gespannt.