RHEL7: Configure Apache group-managed content.
Note: This is an RHCE 7 exam objective.
Prerequisites
First, follow the instructions to install an Apache web server.
Note: Don’t forget to install the httpd-manual package. This could help you a lot with any syntax issue.
Main Configuration
To allow only a group of users (here nikos and steve from the team) to access a specific directory (here private), edit the /etc/httpd/conf/httpd.conf file and paste the following lines at the end:
<Directory "/var/www/html/private">
AuthType Basic
AuthName "Password protected area"
AuthGroupFile /etc/httpd/conf/team
AuthUserFile /etc/httpd/conf/passwd
Require group team
</Directory>
Check the configuration file:
# apachectl configtest
Syntax OK
Create the /var/www/html/private directory and assign the correct SELinux context:
# mkdir -p /var/www/html/private
# restorecon -R /var/www/html/private
Create the /etc/httpd/conf/team file and paste the following line:
team: nikos steve
Create the /etc/httpd/conf/passwd file, add the nikos and steve accounts with their own passwords:
# htpasswd -c /etc/httpd/conf/passwd nikos
New password: nikos
Re-type new password: nikos
Adding password for user nikos
# htpasswd /etc/httpd/conf/passwd steve
New password: steve
Re-type new password: steve
Adding password for user steve
Restart the httpd service:
# systemctl restart httpd
Configuration Check
To check the configuration, type:
# yum install -y elinks
# elinks http://localhost/private/
Leave a comment