Remove unused modules.
This commit is contained in:
parent
53a8a82724
commit
b708136be7
4 changed files with 0 additions and 372 deletions
|
@ -1,334 +0,0 @@
|
|||
= Apache HTTP Server
|
||||
|
||||
'''
|
||||
|
||||
[IMPORTANT]
|
||||
======
|
||||
|
||||
This page was automatically converted from https://fedoraproject.org/wiki/Apache_HTTP_Server
|
||||
|
||||
It is probably
|
||||
|
||||
* Badly formatted
|
||||
* Missing graphics and tables that do not convert well from mediawiki
|
||||
* Out-of-date
|
||||
* In need of other love
|
||||
|
||||
Please fix it, remove this notice, and then add to `_topic_map.yml`
|
||||
|
||||
Pull requests accepted at https://pagure.io/fedora-docs/quick-docs
|
||||
|
||||
Once that is live, go to the original wiki page and add an `{{old}}`
|
||||
tag, followed by a note like
|
||||
|
||||
....
|
||||
{{admon/note|This page has a new home!|
|
||||
This wiki page is no longer maintained. Please find the up-to-date
|
||||
version at: https://docs.fedoraproject.org/whatever-the-url
|
||||
}}
|
||||
....
|
||||
|
||||
======
|
||||
|
||||
'''
|
||||
|
||||
|
||||
The Apache HTTP Server is one of the most commonly-used web servers.
|
||||
This page acts as a quick start guide to deploying and configuring
|
||||
Apache on Fedora. For (many) more details, please see
|
||||
https://httpd.apache.org/docs/current/[upstream's extensive
|
||||
documentation].
|
||||
|
||||
[[installation]]
|
||||
Installation
|
||||
~~~~~~~~~~~~
|
||||
|
||||
`$ su` +
|
||||
`# dnf install httpd`
|
||||
|
||||
To have the server start at each boot:
|
||||
|
||||
`# systemctl enable httpd.service`
|
||||
|
||||
To start the server now:
|
||||
|
||||
`# systemctl start httpd.service`
|
||||
|
||||
At this point, you should be able to browse to http://localhost on the
|
||||
server and access the Apache test page. You will most likely not be able
|
||||
to access the server from any other host, yet: we will change this
|
||||
link:#firewall-configuration[later].
|
||||
|
||||
[[tlsssl-support]]
|
||||
TLS/SSL support
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
If you want TLS/SSL support, you can also install , which is based on
|
||||
https://www.openssl.org[OpenSSL]. Alternatives are (uses
|
||||
https://www.gnutls.org/[GnuTLS]) and (uses
|
||||
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS[NSS]).
|
||||
|
||||
[[using-mod_ssl]]
|
||||
Using mod_ssl
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Install mod_ssl package and it will be automatically enabled
|
||||
|
||||
`# dnf install mod_ssl`
|
||||
|
||||
[[install-an-existing-certificate]]
|
||||
Install an existing certificate
|
||||
+++++++++++++++++++++++++++++++
|
||||
|
||||
If you already have a certificate generated on another computer, move
|
||||
the certificate and the key file to the correct folder, and ensure their
|
||||
SELinux contexts, ownership, and permissions are correct:
|
||||
|
||||
`# mv key_file.key /etc/pki/tls/private/myhost.com.key` +
|
||||
`# restorecon /etc/pki/tls/private/myhost.com.key` +
|
||||
`# chown root.root /etc/pki/tls/private/myhost.com.key` +
|
||||
`# chmod 0600 /etc/pki/tls/private/myhost.com.key` +
|
||||
`#` +
|
||||
`# mv certificate.crt /etc/pki/tls/certs/myhost.com.crt` +
|
||||
`# restorecon /etc/pki/tls/certs/myhost.com.crt` +
|
||||
`# chown root.root /etc/pki/tls/certs/myhost.com.crt` +
|
||||
`# chmod 0600 /etc/pki/tls/certs/myhost.com.crt`
|
||||
|
||||
After this link:#mod_ssl-configuration[ set it up]
|
||||
|
||||
[[generate-a-new-certificate]]
|
||||
Generate a new certificate
|
||||
++++++++++++++++++++++++++
|
||||
|
||||
How to https://fedoraproject.org/wiki/Https#openssl[generate a new
|
||||
certificate]
|
||||
|
||||
[[mod_ssl-configuration]]
|
||||
mod_ssl configuration
|
||||
+++++++++++++++++++++
|
||||
|
||||
The default TLS/SSL configuration is contained in the file (if you are
|
||||
using ). If you examine that file, you will see the directives that
|
||||
specify where the TLS/SSL certificate and key are located:
|
||||
|
||||
`SSLCertificateFile /etc/pki/tls/certs/localhost.crt` +
|
||||
`SSLCertificateKeyFile /etc/pki/tls/private/localhost.key`
|
||||
|
||||
If you look carefully, you will see that these directives are actually
|
||||
enclosed in a block defining a
|
||||
https://httpd.apache.org/docs/current/vhosts/[virtual host]:
|
||||
|
||||
+
|
||||
`...` +
|
||||
`SSLCertificateFile /etc/pki/tls/certs/localhost.crt` +
|
||||
`...` +
|
||||
`SSLCertificateKeyFile /etc/pki/tls/private/localhost.key` +
|
||||
`...` +
|
||||
|
||||
If we wanted to define a different location for these files, we could
|
||||
edit the lines in directly, but it would be better to create a new file
|
||||
:
|
||||
|
||||
+
|
||||
`SSLCertificateFile /etc/pki/tls/certs/www.myhost.org.crt` +
|
||||
`SSLCertificateKeyFile /etc/pki/tls/private/www.myhost.org.key` +
|
||||
|
||||
This file will override those two settings for the _default_:443 virtual
|
||||
host; all other settings from will be kept.
|
||||
|
||||
[[settings-for-individual-virtual-hosts]]
|
||||
Settings for individual virtual hosts
|
||||
|
||||
If you want a specific virtual host to use SSL/TLS with a different
|
||||
certificate from the default, open that virtual host's configuration
|
||||
file, usually , and insert these lines between and :
|
||||
|
||||
`SSLEngine on` +
|
||||
`SSLCertificateFile /etc/pki/tls/certs/hostname.crt` +
|
||||
`SSLCertificateKeyFile /etc/pki/tls/private/hostname.key`
|
||||
|
||||
[[installing-webapps]]
|
||||
Installing webapps
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You probably want to run something on your web server. Many of the most
|
||||
popular 'web applications' are packaged for Fedora. Using the packaged
|
||||
versions of web applications is usually recommended: they will be
|
||||
configured following the distribution's best practices which help to
|
||||
ensure the security of the installation, for instance by installing
|
||||
static files to locations the web server does not have the ability to
|
||||
write to, and doing access control with configuration files rather than
|
||||
files, which are slightly more vulnerable to attack.
|
||||
|
||||
Packaged web applications will also be configured to work with SELinux,
|
||||
which provides significant security benefits.
|
||||
|
||||
You will also receive updates through the usual Fedora update process,
|
||||
making it easier to keep your installation up to date.
|
||||
|
||||
They will also often have the default configuration tweaked according to
|
||||
Fedora's conventions, meaning you have to do less work to get the
|
||||
application up and running.
|
||||
|
||||
Most web applications are simply packaged according to their name. For
|
||||
example, you can install Wordpress with:
|
||||
|
||||
`# dnf install wordpress`
|
||||
|
||||
Packaged web applications will usually provide Fedora-specific
|
||||
instructions in a documentation file - for instance, Wordpress provides
|
||||
the files and . It is always a good idea to read these files!
|
||||
|
||||
Packaged web applications usually restrict access by default so you can
|
||||
access them only from the server host itself, to ensure you can run all
|
||||
initial configuration safely and things like administration interfaces
|
||||
are not left accessible to the public. For information on how to broaden
|
||||
access, see link:#webapp-access-control[below].
|
||||
|
||||
Web applications commonly require the use of a database server. This
|
||||
wiki contains information on installing and configuring PostgreSQL and
|
||||
MariaDB on Fedora.
|
||||
|
||||
[[configuration]]
|
||||
Configuration
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
is the main Apache configuration file. It _includes_ : if the same
|
||||
setting is specified in both and a file in , the setting from the file
|
||||
will win. Files in are read in alphabetical order: a setting from will
|
||||
win over a setting from , which will win over a setting from , which
|
||||
will win over a setting from .
|
||||
|
||||
It is usually best practice never to modify or any of the files shipped
|
||||
by Fedora packages directly. If you make any local changes to these
|
||||
files, then any changes to them in newer package versions will not be
|
||||
directly applied: instead a file will be created and you will have to
|
||||
merge the changes manually. It is usually better instead to create a new
|
||||
file in which will take precedence over the file you wish to 'modify',
|
||||
and make your settings there. For instance, to change a setting
|
||||
specified in you could create the file and place your setting in that
|
||||
file. We will see an example of this next.
|
||||
|
||||
After making any changes to your server configuration, you should run:
|
||||
|
||||
`# apachectl reload`
|
||||
|
||||
to apply the changes. Certain changes may require Apache to be fully
|
||||
restarted:
|
||||
|
||||
`# systemctl restart httpd.service`
|
||||
|
||||
[[enabling-access-to-web-applications]]
|
||||
Enabling access to web applications
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Fedora-packaged web applications are usually configured such that, by
|
||||
default, access is allowed only from localhost. Typically you will find
|
||||
that there is a file with the following (among other settings):
|
||||
|
||||
+
|
||||
` ` +
|
||||
` # Apache 2.4` +
|
||||
` Require local` +
|
||||
` ` +
|
||||
` ` +
|
||||
` # Apache 2.2` +
|
||||
` Order Deny,Allow` +
|
||||
` Deny from all` +
|
||||
` Allow from 127.0.0.1` +
|
||||
` Allow from ::1` +
|
||||
` ` +
|
||||
|
||||
Before allowing general access to the webapp, ensure you have configured
|
||||
it correctly and the administration interface and other sensitive areas
|
||||
are not accessible without appropriate authentication. Also remember to
|
||||
ensure your database configuration is secure, if the application uses a
|
||||
database. To broaden access to the application, you can create a file .
|
||||
To allow access to all systems on a typical local network, you could
|
||||
write:
|
||||
|
||||
+
|
||||
` ` +
|
||||
` # Apache 2.4` +
|
||||
` Require local` +
|
||||
` Require ip 192.168.1` +
|
||||
` ` +
|
||||
` ` +
|
||||
` # Apache 2.2` +
|
||||
` Order Deny,Allow` +
|
||||
` Deny from all` +
|
||||
` Allow from 127.0.0.1` +
|
||||
` Allow from ::1` +
|
||||
` Allow from 192.168.1` +
|
||||
` ` +
|
||||
|
||||
Once you are sure the application is correctly configured, this
|
||||
configuration will allow access from any host:
|
||||
|
||||
+
|
||||
` ` +
|
||||
` # Apache 2.4` +
|
||||
` Require all granted` +
|
||||
` ` +
|
||||
` ` +
|
||||
` # Apache 2.2` +
|
||||
` Order Deny,Allow` +
|
||||
` Allow from all` +
|
||||
` ` +
|
||||
|
||||
[[opening-firewall-ports]]
|
||||
Opening firewall ports
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Apache uses port 80 for plain http connections and port 443 for TLS/SSL
|
||||
connections by default. To make this service available from other
|
||||
computers or the Internet your have to allow Apache through the firewall
|
||||
like this:
|
||||
|
||||
To open the firewall at each boot:
|
||||
|
||||
For plain HTTP connections:
|
||||
|
||||
`# firewall-cmd --permanent --add-service=http`
|
||||
|
||||
For TLS/SSL connections:
|
||||
|
||||
`# firewall-cmd --permanent --add-service=https`
|
||||
|
||||
To open the firewall right now:
|
||||
|
||||
For plain HTTP connections:
|
||||
|
||||
`# firewall-cmd --add-service=http`
|
||||
|
||||
For TLS/SSL connections:
|
||||
|
||||
`# firewall-cmd --add-service=https`
|
||||
|
||||
Remember that if your server is running behind a NAT router, you will
|
||||
also need to configure your router to forward the HTTP and HTTPS ports
|
||||
to your server if you wish to allow access from outside your local
|
||||
network.
|
||||
|
||||
[[disable-test-page]]
|
||||
Disable test page
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
To disable the test page comment out all the lines in the file
|
||||
|
||||
[[references]]
|
||||
References
|
||||
~~~~~~~~~~
|
||||
|
||||
* https://httpd.apache.org/docs/current/[Apache documentation]
|
||||
* https://httpd.apache.org/docs/current/getting-started.html[Apache
|
||||
"Getting Started"]
|
||||
* https://httpd.apache.org/docs/current/ssl/[Apache TLS/SSL
|
||||
documentation]
|
||||
* https://httpd.apache.org/docs/current/misc/security_tips.html[Apache
|
||||
security tips]
|
||||
* OwnCloud
|
||||
'''
|
||||
|
||||
See a typo, something missing or out of date, or anything else which can be
|
||||
improved? Edit this document at https://pagure.io/fedora-docs/quick-docs.
|
|
@ -1,12 +0,0 @@
|
|||
= Apache HTTP Server
|
||||
[id='apache-http-server']
|
||||
|
||||
The Apache HTTP Server is one of the most commonly-used web servers. This page acts as a quick start guide to deploying and configuring Apache on Fedora.
|
||||
|
||||
For more details, refer to https://httpd.apache.org/docs/current/[upstream's extensive documentation].
|
||||
|
||||
include::{md}/proc_installing-httpd.adoc[leveloffset=+1]
|
||||
include::{md}/proc_securing-apache-httpd.adoc[leveloffset=+1]
|
||||
include::{md}/proc_installing-webapps.adoc[leveloffset=+1]
|
||||
include::{md}/proc_configuring-apache-httpd.adoc[leveloffset=+1]
|
||||
include::{md}/ref_apache-http-server.adoc[leveloffset=+1]
|
|
@ -1,18 +0,0 @@
|
|||
= Disabling Test Page
|
||||
[id='disabling-test-page']
|
||||
|
||||
To disable the test page, comment out all the lines in the file `/etc/httpd/conf.d/welcome.conf` using `pass:[#]` as follows:
|
||||
|
||||
----
|
||||
# <LocationMatch "^/+$">
|
||||
# Options -Indexes
|
||||
# ErrorDocument 403 /.noindex.html
|
||||
# </LocationMatch>
|
||||
|
||||
# <Directory /usr/share/httpd/noindex>
|
||||
# AllowOverride None
|
||||
# Require all granted
|
||||
# </Directory>
|
||||
|
||||
# Alias /.noindex.html /usr/share/httpd/noindex/index.html
|
||||
----
|
|
@ -1,8 +0,0 @@
|
|||
= References
|
||||
[id='ref_apache-http-server']
|
||||
|
||||
* https://httpd.apache.org/docs/current/[Apache Documentation]
|
||||
* https://httpd.apache.org/docs/current/getting-started.html[Apache "Getting Started"]
|
||||
* https://httpd.apache.org/docs/current/ssl/[Apache TLS/SSL documentation]
|
||||
* https://httpd.apache.org/docs/current/misc/security_tips.html[Apache security tips]
|
||||
* https://fedoraproject.org/wiki/OwnCloud[OwnCloud]
|
Loading…
Add table
Add a link
Reference in a new issue