From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 25 Aug 2005 11:21:23 +0300 From: Michael Shigorin To: ALT Linux Community Message-ID: <20050825082123.GM3168@osdn.org.ua> Mail-Followup-To: ALT Linux Community References: <20050825110345.179c8189.aphlux@mail.ru> <015001c5a945$a71e8540$62fe0a0a@WORKER> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="5fECsWged6836Ycf" Content-Disposition: inline In-Reply-To: <015001c5a945$a71e8540$62fe0a0a@WORKER> User-Agent: Mutt/1.4.2.1i Subject: [Comm] Re: httpd and virtualhosts and ssl X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: shigorin@gmail.com, ALT Linux Community List-Id: ALT Linux Community List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Aug 2005 08:21:26 -0000 Archived-At: List-Archive: List-Post: --5fECsWged6836Ycf Content-Type: multipart/mixed; boundary="KSn4sQg3MnruwCB4" Content-Disposition: inline --KSn4sQg3MnruwCB4 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Aug 25, 2005 at 11:21:47AM +0400, Konstantin Polanskiy wrote: > =F7=CF=D4 =D4=C1=CB =CE=C5 =D2=C1=C2=CF=D4=C1=CC=CF, =C1 =D0=CF=D3=CC=C5 = =D4=CF=C7=CF =CB=C1=CB =D1 =C4=CF=C2=C1=D7=C9=CC =D3=D4=D2=CF=CB=D5 > Port 443 > =F4=CF =CE=C1=CB=CF=CE=C5=C3 =DA=C1=D2=C1=C2=CF=D4=C1=CC=CF%)) =F5=C6. =F4=C1=CD =C4=C1=D7=CE=CF =CC=C5=D6=C1=CC=C9 =C7=D2=C1=C2=CC=C9, = =C4=CF =CB=CF=D4=CF=D2=D9=C8 =CE=C9 =D5 =CB=CF=C7=CF =CE=C5 =C4=CF=C8=CF=C4= =C9=CC=C9 =D2=D5=CB=C9 =C8=CF=D4=D1 =C2=D9 =DA=C1=C4=CF=CB=D5=CD=C5=CE=D4=C9=D2=CF=D7= =C1=D4=D8. =E5=D3=CC=C9 =F7=D9 =D7=CF=DA=D8=CD=A3=D4=C5=D3=D8 =D0=CF=D7=D4=CF=D2=C9=D4= =D8 =C7=C4=C5-=CE=C9=D4=D8 =D3=C2=CF=CB=D5 "=D3 =DE=C9=D3=D4=CF=C7=CF =CC= =C9=D3=D4=C1", =D4=CF =C4=C1=D7=C1=CA=D4=C5 =CE=C1=DE=CE=A3=CD =D3 =D0=D2=C9=CC=C1=C7=C1= =C5=CD=CF=C7=CF vhost config (=D2=C5=CB=CF=CD=C5=CE=C4=D5=C0 =D4=C1=CB=D6=C5 =D0=CF=DE=C9=D4=C1=D4=D8 README =C9 =D0=CF=D3=CD=CF=D4=D2=C5=D4=D8, =DE=D4= =CF =CB=CF=CE=C6=C9=C7=D5=D2=C1=C3=C9=D1 =D7=C9=D2=D4=C8=CF=D3=D4=CF=D7 =C9= =DA /etc/httpd/conf/vhost.d/*.conf =D7=CB=CC=C0=DE=C1=C5=D4=D3=D1 =C1=D7=D4=CF= =CD=C1=D4=CF=CD). =E2=D9=CC=CF =C2=D9 =D4=C1=CB=D6=C5 =CE=C5=D0=CC=CF=C8=CF =D0=CF=D7=C5=D3= =C9=D4=D8 =C2=C1=C7=D5 =CE=C1 mod_ssl, =C1 =D4=CF =C5=DD=A3 =CF=D0=D1=D4=D8 =D5=D3=CB=CF=CC=D8=DA=CE=A3=D4. --=20 ---- WBR, Michael Shigorin ------ Linux.Kiev http://www.linux.kiev.ua/ --KSn4sQg3MnruwCB4 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="ssl.default-vhost.conf" Content-Transfer-Encoding: quoted-printable ## ## SSL Virtual Host Context ## # General setup for the virtual host DocumentRoot /home/httpd/html #ServerName new.host.name #ServerAdmin you@your.address ErrorLog logs/ssl-error_log TransferLog logs/ssl-access_log Port 443 # SSL Engine Switch: # Enable/Disable SSL for this virtual host. SSLEngine on # SSL Cipher Suite: # List the ciphers that the client is permitted to negotiate. # See the mod_ssl documentation for a complete list. #SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL # Server Certificate: # Point SSLCertificateFile at a PEM encoded certificate. If # the certificate is encrypted, then you will be prompted for a # pass phrase. Note that a kill -HUP will prompt again. A test # certificate can be generated with `make certificate' under # built time. SSLCertificateFile conf/ssl/server.crt # Server Private Key: # If the key is not combined with the certificate, use this # directive to point at the key file. SSLCertificateKeyFile conf/ssl/server.key # 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 @@ServerRoot@@/conf/ssl/ssl.crt/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 @@ServerRoot@@/conf/ssl/ssl.crt #SSLCACertificateFile @@ServerRoot@@/conf/sssl/sl.crt/ca-bundle.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 @@ServerRoot@@/conf/ssl/ssl.crl #SSLCARevocationFile @@ServerRoot@@/conf/ssl/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 10 # 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. # #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} >=3D 1 and %{TIME_WDAY} <=3D 5 \ # and %{TIME_HOUR} >=3D 8 and %{TIME_HOUR} <=3D 20 ) \ # or %{REMOTE_ADDR} =3D~ m/^192\.76\.162\.[0-9]+$/ # # SSL Engine Options: # Set various options for the SSL engine. # FakeBasicAuth: # Translate the client X.509 into a Basic Authorisation. This means th= at # 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 u= ser # file needs this password: `xxj31ZMTZzkVA'. # 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. # CompatEnvVars: # This exports obsolete environment variables for backward compatibility # to Apache-SSL 1.x, mod_ssl 2.0.x, Sioux 1.0 and Stronghold 2.x. Use t= his # to provide compatibility to existing CGI scripts. # 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. # OptRenegotiate: # This enables optimized SSL connection renegotiation handling when SSL # directives are used in per-directory context.=20 #SSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars +StrictRequire # 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: # 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 whe= re # mod_ssl sends the close notify alert. # 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. U= se # this only for browsers where you know that their SSL implementation # works correctly.=20 # 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. SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown # Per-Server Logging: # The home of a custom SSL log file. Use this when you want a # compact non-error SSL logfile on a virtual host basis. CustomLog logs/ssl_request_log \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" =20 --KSn4sQg3MnruwCB4-- --5fECsWged6836Ycf Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) iD8DBQFDDX+DbsPDprYMm3IRAoW/AJ93xo6gD0CBFFqn4YD3f090IHyfPgCglcsW VALShtDtOuKjfSqY9sZcCso= =6HYg -----END PGP SIGNATURE----- --5fECsWged6836Ycf--