#
# Documentation: http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:SSL
-# mitigate against BEAST attacks
-# http://blog.ivanristic.com/2011/10/mitigating-the-beast-attack-on-tls.html
-#ssl.cipher-list = "ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM"
+# (Following SSL/TLS Deployment Best Practices 1.3 / 17 September 2013 from:
+# https://www.ssllabs.com/projects/best-practices/index.html)
+# - BEAST is considered mitigaed on client side now, and new weaknesses have been found in RC4,
+# so it is strongly advised to disable RC4 ciphers (HIGH doesn't include RC4)
+# - It is recommended to disable 3DES too (although disabling RC4 and 3DES breaks IE6+8 on Windows XP,
+# so you might want to support 3DES for now - just remove the '!3DES' parts below).
+# - The examples below prefer ciphersuites with "Forward Secrecy" (and ECDHE over DHE (alias EDH)), remove '+kEDH +kRSA'
+# if you don't want that.
+# - SRP and PSK are not supported anyway, excluding those ('!kSRP !kPSK') just keeps the list smaller (easier to review)
+# Check your cipher list with: openssl ciphers -v '...' (use single quotes as your shell won't like ! in double quotes)
+#
+# If you know you have RSA keys (standard), you can use:
+#ssl.cipher-list = "aRSA+HIGH !3DES +kEDH +kRSA !kSRP !kPSK"
+# The more generic version (without the restriction to RSA keys) is
+#ssl.cipher-list = "HIGH !aNULL !3DES +kEDH +kRSA !kSRP !kPSK"
+
+# Make the server prefer the order of the server side cipher suite instead of the client suite.
+# This option is enabled by default, but only used if ssl.cipher-list is set.
+#
+#ssl.honor-cipher-order = "enable"
+#
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
+
+ ## If you have a .crt and a .key file, cat them together into a
+ ## single PEM file:
+ ## $ cat lighttpd.key lighttpd.crt > lighttpd.pem
ssl.pemfile = "/etc/lighttpd/server.pem"
+
# ssl.ca-file = "/etc/certs/ca-certificates.crt"
$HTTP["useragent"] =~ "MSIE" {