Как настроить аутентификацию по паролю на Apache в Ubuntu

Apache — популярный веб-сервер, который скрывает конфиденциальную информацию веб-сайтов от неавторизованных пользователей.

Это самый простой способ защитить ваш сайт от бесплатных доверенных сертификатов. В этой статье показано, как настроить аутентификацию с помощью паролей на Apache в Ubuntu.

Установка Apache

Используйте следующую команду для установки пакета Apache.

# apt-get install apache2 apache2-utils -y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  apache2-bin apache2-data libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.1-0
Suggested packages:
  apache2-doc apache2-suexec-pristine | apache2-suexec-custom
The following NEW packages will be installed:
  apache2 apache2-bin apache2-data apache2-utils libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.1-0
0 upgraded, 9 newly installed, 0 to remove and 421 not upgraded.
Need to get 1,537 kB of archives.
After this operation, 6,350 kB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libapr1 amd64 1.5.2-3 [86.0 kB]
Get:2 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaprutil1 amd64 1.5.4-1build1 [77.1 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaprutil1-dbd-sqlite3 amd64 1.5.4-1build1 [10.6 kB]
Get:4 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaprutil1-ldap amd64 1.5.4-1build1 [8,720 B]
Get:5 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 liblua5.1-0 amd64 5.1.5-8ubuntu1 [102 kB]
Get:6 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2-bin amd64 2.4.18-2ubuntu3.1 [923 kB]
Get:7 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2-utils amd64 2.4.18-2ubuntu3.1 [81.3 kB]                 
Get:8 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2-data all 2.4.18-2ubuntu3.1 [162 kB]                     
Get:9 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2 amd64 2.4.18-2ubuntu3.1 [86.7 kB]                       
Fetched 1,537 kB in 29s (51.3 kB/s)                                                                                                 
Selecting previously unselected package libapr1:amd64.
(Reading database ... 173836 files and directories currently installed.)
.
.
.
Enabling conf localized-error-pages.
Enabling conf other-vhosts-access-log.
Enabling conf security.
Enabling conf serve-cgi-bin.
Enabling site 000-default.
Processing triggers for libc-bin (2.23-0ubuntu3) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for systemd (229-4ubuntu4) ...
Processing triggers for ufw (0.35-0ubuntu2) ...

Чтобы создать файл паролей

Команда «htpasswd» позволяет вам создать файл паролей.

Здесь мы создадим скрытый файл .htpasswd в нашем каталоге конфигурации /etc/apache2.

# htpasswd -c /etc/apache2/.htpasswd user1
New password:
Re-type new password:
Adding password for user user1
# htpasswd -c /etc/apache2/.htpasswd user2
New password:
Re-type new password:
Adding password for user user2

Вы можете просмотреть имя пользователя и зашифрованный пароль для каждого пользователя.

# cat /etc/apache2/.htpasswd
user1:$apr1$d/XhO7Ko$/nyf1UGdWfaA0rQ17VVAT/

Теперь пришло время настроить аутентификацию по паролю в  Apache.

# nano /etc/apache2/sites-enabled/000-default.conf

<Directory "/var/www/html">
      AuthType Basic
      AuthName "Restricted Content"
      AuthUserFile /etc/apache2/.htpasswd
      Require valid-user

Сохраните и выйдите из файла.

Проверьте конфигурацию перед ее перезагрузкой.

~# apache2ctl configtest
Syntax OK

Перезапустите Apache, чтобы изменения вступили в силу и проверьте статус.

systemctl restart apache2
systemctl status apache2
 apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           ??apache2-systemd.conf
   Active: active (running) since Fri 2016-11-18 17:39:43 IST; 18s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4476 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
  Process: 4501 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
    Tasks: 55 (limit: 512)
   CGroup: /system.slice/apache2.service
           ??4518 /usr/sbin/apache2 -k start
           ??4521 /usr/sbin/apache2 -k start
           ??4522 /usr/sbin/apache2 -k start

Nov 18 17:39:42 linuxhelp1 systemd[1]: Starting LSB: Apache2 web server...
Nov 18 17:39:42 linuxhelp1 apache2[4501]:  * Starting Apache httpd web server apache2
Nov 18 17:39:43 linuxhelp1 apache2[4501]:  *
Nov 18 17:39:43 linuxhelp1 systemd[1]: Started LSB: Apache2 web server.

Используйте следующую команду для управления доступом с помощью файлов .htaccess.

 nano /etc/apache2/apache2.conf

  Options Indexes FollowSymLinks
  AllowOverride All
  Require all granted

Теперь вам нужно добавить файл .htaccess в каталог

 nano /var/www/html/.htaccess

AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

Сохраните и закройте файл.

Перезапустите веб-сервер, чтобы изменения вступили в силу, и проверьте статус

# systemctl restart apache2
# systemctl status apache2
 apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           ??apache2-systemd.conf
   Active: active (running) since Fri 2016-11-18 17:43:58 IST; 17s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4630 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
  Process: 4655 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
    Tasks: 55 (limit: 512)
   CGroup: /system.slice/apache2.service
           ??4672 /usr/sbin/apache2 -k start
           ??4675 /usr/sbin/apache2 -k start
           ??4676 /usr/sbin/apache2 -k start

Nov 18 17:43:57 linuxhelp1 systemd[1]: Starting LSB: Apache2 web server...
Nov 18 17:43:57 linuxhelp1 apache2[4655]:  * Starting Apache httpd web server apache2
Nov 18 17:43:58 linuxhelp1 apache2[4655]:  *
Nov 18 17:43:58 linuxhelp1 systemd[1]: Started LSB: Apache2 web server.

После завершения вышеуказанного процесса попробуйте получить доступ к ограниченному контенту в веб-браузере, как показано ниже

Введите следующие учетные данные.

Появится страница по умолчанию Apache.

Снова введите тот же IP-адрес.

Если вы не предоставите соответствующие учетные данные, тогда он отобразит вывод, как показано ниже,

 

cryptoparty

Cryptography is typically bypassed, not penetrated.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

5e7fa976b0640d40