Created
June 16, 2012 21:30
-
-
Save janisozaur/2942543 to your computer and use it in GitHub Desktop.
security-files
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# dav_svn.conf - Example Subversion/Apache configuration | |
# | |
# For details and further options see the Apache user manual and | |
# the Subversion book. | |
# | |
# NOTE: for a setup with multiple vhosts, you will want to do this | |
# configuration in /etc/apache2/sites-available/*, not here. | |
# <Location URL> ... </Location> | |
# URL controls how the repository appears to the outside world. | |
# In this example clients access the repository as http://hostname/svn/ | |
# Note, a literal /svn should NOT exist in your document root. | |
<Location /svn/sis> | |
# Uncomment this to enable the repository | |
DAV svn | |
# Set this to the path to your repository | |
#SVNPath /var/lib/svn | |
# Alternatively, use SVNParentPath if you have multiple repositories under | |
# under a single directory (/var/lib/svn/repo1, /var/lib/svn/repo2, ...). | |
# You need either SVNPath and SVNParentPath, but not both. | |
SVNParentPath /home/svn | |
# Access control is done at 3 levels: (1) Apache authentication, via | |
# any of several methods. A "Basic Auth" section is commented out | |
# below. (2) Apache <Limit> and <LimitExcept>, also commented out | |
# below. (3) mod_authz_svn is a svn-specific authorization module | |
# which offers fine-grained read/write access control for paths | |
# within a repository. (The first two layers are coarse-grained; you | |
# can only enable/disable access to an entire repository.) Note that | |
# mod_authz_svn is noticeably slower than the other two layers, so if | |
# you don't need the fine-grained control, don't configure it. | |
# Basic Authentication is repository-wide. It is not secure unless | |
# you are using https. See the 'htpasswd' command to create and | |
# manage the password file - and the documentation for the | |
# 'auth_basic' and 'authn_file' modules, which you will need for this | |
# (enable them with 'a2enmod'). | |
#AuthType Basic | |
#AuthName "Subversion Repository - Security of information systems" | |
#AuthUserFile /etc/apache2/dav_svn.passwd | |
# To enable authorization via mod_authz_svn (enable that module separately): | |
#<IfModule mod_authz_svn.c> | |
#AuthzSVNAccessFile /etc/apache2/dav_svn.authz | |
#</IfModule> | |
# The following three lines allow anonymous read, but make | |
# committers authenticate themselves. It requires the 'authz_user' | |
# module (enable it with 'a2enmod'). | |
#<LimitExcept GET PROPFIND OPTIONS REPORT> | |
# Require valid-user | |
#</LimitExcept> | |
#<IfDefine SSL> | |
# SSLRequireSSL | |
# SSLRequire %{SSL_CLIENT_S_DN_O} eq "jankol" | |
#</IfDefine> | |
</Location> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<IfModule mod_ssl.c> | |
<VirtualHost *:443> | |
ServerAdmin webmaster@localhost | |
DocumentRoot /var/www | |
<Directory /> | |
Options FollowSymLinks | |
AllowOverride None | |
</Directory> | |
<Directory /var/www/> | |
Options Indexes FollowSymLinks MultiViews | |
AllowOverride None | |
Order allow,deny | |
allow from all | |
</Directory> | |
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ | |
<Directory "/usr/lib/cgi-bin"> | |
AllowOverride None | |
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch | |
Order allow,deny | |
Allow from all | |
</Directory> | |
ErrorLog ${APACHE_LOG_DIR}/error.log | |
# Possible values include: debug, info, notice, warn, error, crit, | |
# alert, emerg. | |
LogLevel warn | |
CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined | |
Alias /doc/ "/usr/share/doc/" | |
<Directory "/usr/share/doc/"> | |
Options Indexes MultiViews FollowSymLinks | |
AllowOverride None | |
Order deny,allow | |
Deny from all | |
Allow from 127.0.0.0/255.0.0.0 ::1/128 | |
</Directory> | |
# SSL Engine Switch: | |
# Enable/Disable SSL for this virtual host. | |
SSLEngine on | |
# A self-signed (snakeoil) certificate can be created by installing | |
# the ssl-cert package. See | |
# /usr/share/doc/apache2.2-common/README.Debian.gz for more info. | |
# If both key and certificate are stored in the same file, only the | |
# SSLCertificateFile directive is needed. | |
SSLCertificateFile /opt/ssl/sisCA/server/certs/serverWEB.crt | |
SSLCertificateKeyFile /opt/ssl/sisCA/server/keys/serverWEB.key | |
ServerSignature On | |
#CustomLog logs/ssl_request_log \ | |
# "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" | |
# Server Certificate Chain: | |
# Point SSLCertificateChainFile at a file containing the | |
# concatenation of PEM encoded CA certificates which form the | |
# certificate chain for the server certificate. Alternatively | |
# the referenced file can be the same as SSLCertificateFile | |
# when the CA certificates are directly appended to the server | |
# certificate for convinience. | |
#SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt | |
# Certificate Authority (CA): | |
# Set the CA certificate verification path where to find CA | |
# certificates for client authentication or alternatively one | |
# huge file containing all of them (file must be PEM encoded) | |
# Note: Inside SSLCACertificatePath you need hash symlinks | |
# to point to the certificate files. Use the provided | |
# Makefile to update the hash symlinks after changes. | |
#SSLCACertificatePath /etc/ssl/certs/ | |
SSLCACertificateFile /opt/ssl/sisCA/CA/sisCA.crt | |
# Certificate Revocation Lists (CRL): | |
# Set the CA revocation path where to find CA CRLs for client | |
# authentication or alternatively one huge file containing all | |
# of them (file must be PEM encoded) | |
# Note: Inside SSLCARevocationPath you need hash symlinks | |
# to point to the certificate files. Use the provided | |
# Makefile to update the hash symlinks after changes. | |
#SSLCARevocationPath /etc/apache2/ssl.crl/ | |
#SSLCARevocationFile /etc/apache2/ssl.crl/ca-bundle.crl | |
# Client Authentication (Type): | |
# Client certificate verification type and depth. Types are | |
# none, optional, require and optional_no_ca. Depth is a | |
# number which specifies how deeply to verify the certificate | |
# issuer chain before deciding the certificate is not valid. | |
SSLVerifyClient require | |
SSLVerifyDepth 2 | |
# Access Control: | |
# With SSLRequire you can do per-directory access control based | |
# on arbitrary complex boolean expressions containing server | |
# variable checks and other lookup directives. The syntax is a | |
# mixture between C and Perl. See the mod_ssl documentation | |
# for more details. | |
#<Location /> | |
#SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)/ \ | |
# and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \ | |
# and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \ | |
# and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \ | |
# and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \ | |
# or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/ | |
#</Location> | |
# SSL Engine Options: | |
# Set various options for the SSL engine. | |
# o FakeBasicAuth: | |
# Translate the client X.509 into a Basic Authorisation. This means that | |
# the standard Auth/DBMAuth methods can be used for access control. The | |
# user name is the `one line' version of the client's X.509 certificate. | |
# Note that no password is obtained from the user. Every entry in the user | |
# file needs this password: `xxj31ZMTZzkVA'. | |
# o ExportCertData: | |
# This exports two additional environment variables: SSL_CLIENT_CERT and | |
# SSL_SERVER_CERT. These contain the PEM-encoded certificates of the | |
# server (always existing) and the client (only existing when client | |
# authentication is used). This can be used to import the certificates | |
# into CGI scripts. | |
# o StdEnvVars: | |
# This exports the standard SSL/TLS related `SSL_*' environment variables. | |
# Per default this exportation is switched off for performance reasons, | |
# because the extraction step is an expensive operation and is usually | |
# useless for serving static content. So one usually enables the | |
# exportation for CGI and SSI requests only. | |
# o StrictRequire: | |
# This denies access when "SSLRequireSSL" or "SSLRequire" applied even | |
# under a "Satisfy any" situation, i.e. when it applies access is denied | |
# and no other module can change it. | |
# o OptRenegotiate: | |
# This enables optimized SSL connection renegotiation handling when SSL | |
# directives are used in per-directory context. | |
#SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire | |
<FilesMatch "\.(cgi|shtml|phtml|php)$"> | |
SSLOptions +StdEnvVars | |
</FilesMatch> | |
<Directory /usr/lib/cgi-bin> | |
SSLOptions +StdEnvVars | |
</Directory> | |
# SSL Protocol Adjustments: | |
# The safe and default but still SSL/TLS standard compliant shutdown | |
# approach is that mod_ssl sends the close notify alert but doesn't wait for | |
# the close notify alert from client. When you need a different shutdown | |
# approach you can use one of the following variables: | |
# o ssl-unclean-shutdown: | |
# This forces an unclean shutdown when the connection is closed, i.e. no | |
# SSL close notify alert is send or allowed to received. This violates | |
# the SSL/TLS standard but is needed for some brain-dead browsers. Use | |
# this when you receive I/O errors because of the standard approach where | |
# mod_ssl sends the close notify alert. | |
# o ssl-accurate-shutdown: | |
# This forces an accurate shutdown when the connection is closed, i.e. a | |
# SSL close notify alert is send and mod_ssl waits for the close notify | |
# alert of the client. This is 100% SSL/TLS standard compliant, but in | |
# practice often causes hanging connections with brain-dead browsers. Use | |
# this only for browsers where you know that their SSL implementation | |
# works correctly. | |
# Notice: Most problems of broken clients are also related to the HTTP | |
# keep-alive facility, so you usually additionally want to disable | |
# keep-alive for those clients, too. Use variable "nokeepalive" for this. | |
# Similarly, one has to force some clients to use HTTP/1.0 to workaround | |
# their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and | |
# "force-response-1.0" for this. | |
BrowserMatch "MSIE [2-6]" \ | |
nokeepalive ssl-unclean-shutdown \ | |
downgrade-1.0 force-response-1.0 | |
# MSIE 7 and newer should be able to use keepalive | |
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown | |
</VirtualHost> | |
</IfModule> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# OpenSSL example configuration file. | |
# This is mostly being used for generation of certificate requests. | |
# | |
# This definition stops the following lines choking if HOME isn't | |
# defined. | |
HOME = . | |
RANDFILE = $ENV::HOME/.rnd | |
# Extra OBJECT IDENTIFIER info: | |
#oid_file = $ENV::HOME/.oid | |
oid_section = new_oids | |
# To use this configuration file with the "-extfile" option of the | |
# "openssl x509" utility, name here the section containing the | |
# X.509v3 extensions to use: | |
# extensions = | |
# (Alternatively, use a configuration file that has only | |
# X.509v3 extensions in its main [= default] section.) | |
[ new_oids ] | |
# We can add new OIDs in here for use by 'ca', 'req' and 'ts'. | |
# Add a simple OID like this: | |
# testoid1=1.2.3.4 | |
# Or use config file substitution like this: | |
# testoid2=${testoid1}.5.6 | |
# Policies used by the TSA examples. | |
tsa_policy1 = 1.2.3.4.1 | |
tsa_policy2 = 1.2.3.4.5.6 | |
tsa_policy3 = 1.2.3.4.5.7 | |
#################################################################### | |
[ ca ] | |
default_ca = CA_default # The default ca section | |
#################################################################### | |
[ CA_default ] | |
dir = /opt/ssl/sisCA # Where everything is kept | |
certs = $dir/certs # Where the issued certs are kept | |
crl_dir = $dir/crl # Where the issued crl are kept | |
database = $dir/index.txt # database index file. | |
unique_subject = no # Set to 'no' to allow creation of | |
# several ctificates with same subject. | |
new_certs_dir = $dir/newcerts # default place for new certs. | |
certificate = $dir/cacert.pem # The CA certificate | |
serial = $dir/serial # The current serial number | |
crlnumber = $dir/crlnumber # the current crl number | |
# must be commented out to leave a V1 CRL | |
crl = $dir/crl.pem # The current CRL | |
private_key = $dir/private/cakey.pem# The private key | |
RANDFILE = $dir/private/.rand # private random number file | |
x509_extensions = usr_cert # The extentions to add to the cert | |
# Comment out the following two lines for the "traditional" | |
# (and highly broken) format. | |
name_opt = ca_default # Subject Name options | |
cert_opt = ca_default # Certificate field options | |
# Extension copying option: use with caution. | |
# copy_extensions = copy | |
# Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs | |
# so this is commented out by default to leave a V1 CRL. | |
# crlnumber must also be commented out to leave a V1 CRL. | |
# crl_extensions = crl_ext | |
default_days = 365 # how long to certify for | |
default_crl_days= 30 # how long before next CRL | |
default_md = default # use public key default MD | |
preserve = no # keep passed DN ordering | |
# A few difference way of specifying how similar the request should look | |
# For type CA, the listed attributes must be the same, and the optional | |
# and supplied fields are just that :-) | |
policy = policy_match | |
# For the CA policy | |
[ policy_match ] | |
countryName = match | |
stateOrProvinceName = match | |
organizationName = match | |
organizationalUnitName = optional | |
commonName = supplied | |
emailAddress = optional | |
# For the 'anything' policy | |
# At this point in time, you must list all acceptable 'object' | |
# types. | |
[ policy_anything ] | |
countryName = optional | |
stateOrProvinceName = optional | |
localityName = optional | |
organizationName = optional | |
organizationalUnitName = optional | |
commonName = supplied | |
emailAddress = optional | |
#################################################################### | |
[ req ] | |
default_bits = 1024 | |
default_keyfile = privkey.pem | |
distinguished_name = req_distinguished_name | |
attributes = req_attributes | |
x509_extensions = v3_ca # The extentions to add to the self signed cert | |
# Passwords for private keys if not present they will be prompted for | |
# input_password = secret | |
# output_password = secret | |
# This sets a mask for permitted string types. There are several options. | |
# default: PrintableString, T61String, BMPString. | |
# pkix : PrintableString, BMPString (PKIX recommendation before 2004) | |
# utf8only: only UTF8Strings (PKIX recommendation after 2004). | |
# nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings). | |
# MASK:XXXX a literal mask value. | |
# WARNING: ancient versions of Netscape crash on BMPStrings or UTF8Strings. | |
string_mask = utf8only | |
# req_extensions = v3_req # The extensions to add to a certificate request | |
[ req_distinguished_name ] | |
countryName = Country Name (2 letter code) | |
countryName_default = AU | |
countryName_min = 2 | |
countryName_max = 2 | |
stateOrProvinceName = State or Province Name (full name) | |
stateOrProvinceName_default = Some-State | |
localityName = Locality Name (eg, city) | |
0.organizationName = Organization Name (eg, company) | |
0.organizationName_default = Internet Widgits Pty Ltd | |
# we can do this but it is not needed normally :-) | |
#1.organizationName = Second Organization Name (eg, company) | |
#1.organizationName_default = World Wide Web Pty Ltd | |
organizationalUnitName = Organizational Unit Name (eg, section) | |
#organizationalUnitName_default = | |
commonName = Common Name (e.g. server FQDN or YOUR name) | |
commonName_max = 64 | |
emailAddress = Email Address | |
emailAddress_max = 64 | |
# SET-ex3 = SET extension number 3 | |
[ req_attributes ] | |
challengePassword = A challenge password | |
challengePassword_min = 4 | |
challengePassword_max = 20 | |
unstructuredName = An optional company name | |
[ usr_cert ] | |
# These extensions are added when 'ca' signs a request. | |
# This goes against PKIX guidelines but some CAs do it and some software | |
# requires this to avoid interpreting an end user certificate as a CA. | |
basicConstraints=CA:FALSE | |
# Here are some examples of the usage of nsCertType. If it is omitted | |
# the certificate can be used for anything *except* object signing. | |
# This is OK for an SSL server. | |
# nsCertType = server | |
# For an object signing certificate this would be used. | |
# nsCertType = objsign | |
# For normal client use this is typical | |
# nsCertType = client, email | |
# and for everything including object signing: | |
# nsCertType = client, email, objsign | |
# This is typical in keyUsage for a client certificate. | |
# keyUsage = nonRepudiation, digitalSignature, keyEncipherment | |
# This will be displayed in Netscape's comment listbox. | |
nsComment = "OpenSSL Generated Certificate" | |
# PKIX recommendations harmless if included in all certificates. | |
subjectKeyIdentifier=hash | |
authorityKeyIdentifier=keyid,issuer | |
# This stuff is for subjectAltName and issuerAltname. | |
# Import the email address. | |
# subjectAltName=email:copy | |
# An alternative to produce certificates that aren't | |
# deprecated according to PKIX. | |
# subjectAltName=email:move | |
# Copy subject details | |
# issuerAltName=issuer:copy | |
#nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem | |
#nsBaseUrl | |
#nsRevocationUrl | |
#nsRenewalUrl | |
#nsCaPolicyUrl | |
#nsSslServerName | |
# This is required for TSA certificates. | |
# extendedKeyUsage = critical,timeStamping | |
[ v3_req ] | |
# Extensions to add to a certificate request | |
basicConstraints = CA:FALSE | |
keyUsage = nonRepudiation, digitalSignature, keyEncipherment | |
[ v3_ca ] | |
# Extensions for a typical CA | |
# PKIX recommendation. | |
subjectKeyIdentifier=hash | |
authorityKeyIdentifier=keyid:always,issuer | |
# This is what PKIX recommends but some broken software chokes on critical | |
# extensions. | |
#basicConstraints = critical,CA:true | |
# So we do this instead. | |
basicConstraints = CA:true | |
# Key usage: this is typical for a CA certificate. However since it will | |
# prevent it being used as an test self-signed certificate it is best | |
# left out by default. | |
# keyUsage = cRLSign, keyCertSign | |
# Some might want this also | |
# nsCertType = sslCA, emailCA | |
# Include email address in subject alt name: another PKIX recommendation | |
# subjectAltName=email:copy | |
# Copy issuer details | |
# issuerAltName=issuer:copy | |
# DER hex encoding of an extension: beware experts only! | |
# obj=DER:02:03 | |
# Where 'obj' is a standard or added object | |
# You can even override a supported extension: | |
# basicConstraints= critical, DER:30:03:01:01:FF | |
[ crl_ext ] | |
# CRL extensions. | |
# Only issuerAltName and authorityKeyIdentifier make any sense in a CRL. | |
# issuerAltName=issuer:copy | |
authorityKeyIdentifier=keyid:always | |
[ proxy_cert_ext ] | |
# These extensions should be added when creating a proxy certificate | |
# This goes against PKIX guidelines but some CAs do it and some software | |
# requires this to avoid interpreting an end user certificate as a CA. | |
basicConstraints=CA:FALSE | |
# Here are some examples of the usage of nsCertType. If it is omitted | |
# the certificate can be used for anything *except* object signing. | |
# This is OK for an SSL server. | |
# nsCertType = server | |
# For an object signing certificate this would be used. | |
# nsCertType = objsign | |
# For normal client use this is typical | |
# nsCertType = client, email | |
# and for everything including object signing: | |
# nsCertType = client, email, objsign | |
# This is typical in keyUsage for a client certificate. | |
# keyUsage = nonRepudiation, digitalSignature, keyEncipherment | |
# This will be displayed in Netscape's comment listbox. | |
nsComment = "OpenSSL Generated Certificate" | |
# PKIX recommendations harmless if included in all certificates. | |
subjectKeyIdentifier=hash | |
authorityKeyIdentifier=keyid,issuer | |
# This stuff is for subjectAltName and issuerAltname. | |
# Import the email address. | |
# subjectAltName=email:copy | |
# An alternative to produce certificates that aren't | |
# deprecated according to PKIX. | |
# subjectAltName=email:move | |
# Copy subject details | |
# issuerAltName=issuer:copy | |
#nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem | |
#nsBaseUrl | |
#nsRevocationUrl | |
#nsRenewalUrl | |
#nsCaPolicyUrl | |
#nsSslServerName | |
# This really needs to be in place for it to be a proxy certificate. | |
proxyCertInfo=critical,language:id-ppl-anyLanguage,pathlen:3,policy:foo | |
#################################################################### | |
[ tsa ] | |
default_tsa = tsa_config1 # the default TSA section | |
[ tsa_config1 ] | |
# These are used by the TSA reply generation only. | |
dir = ./demoCA # TSA root directory | |
serial = $dir/tsaserial # The current serial number (mandatory) | |
crypto_device = builtin # OpenSSL engine to use for signing | |
signer_cert = $dir/tsacert.pem # The TSA signing certificate | |
# (optional) | |
certs = $dir/cacert.pem # Certificate chain to include in reply | |
# (optional) | |
signer_key = $dir/private/tsakey.pem # The TSA private key (optional) | |
default_policy = tsa_policy1 # Policy if request did not specify it | |
# (optional) | |
other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional) | |
digests = md5, sha1 # Acceptable message digests (mandatory) | |
accuracy = secs:1, millisecs:500, microsecs:100 # (optional) | |
clock_precision_digits = 0 # number of digits after dot. (optional) | |
ordering = yes # Is ordering defined for timestamps? | |
# (optional, default: no) | |
tsa_name = yes # Must the TSA name be included in the reply? | |
# (optional, default: no) | |
ess_cert_id_chain = no # Must the ESS cert id chain be included? | |
# (optional, default: no) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment