Данное описание составлено на основе инструкций asusforum.ru и справедливо для прошивок 1.9.2.7-9 и выше, но воспользоваться им вы можете только на свой страх и риск.
Все нижеуказанные действия проводились на моделях WL500g Premium v.1, WL500g Premium v.1, WL500W с подключенным USB диском и флеш накопителем в различных комбинациях, но так же справедливы для остальных моделей, которые поддерживают работу с внешним диском или флешкой и настройку из командной строки.
Так же запаситесь временем, чтобы никуда не спешить и случайно в запарке не испортить всю работу.
Если есть непосредственное соединение с Интернетом, то настройка пройдет без проблем в виде скачивания необходимых пакетов альтернативными способами и переливки их в роутер.
Если не имеете начальных знаний о Линуксе, то опять-же необходим либо Интернет для гугления, либо литература в печатном виде по Линуксовым командам.
1. Подразумевается, что роутер настроен, установлен сервер lighttpd (подробности - в моей "настройке с нуля").
2. Устанавливаем:
ipkg install openssl
ipkg install openldap-libs
ipkg install apr-util
3. Скачиваем и разархивируем программку:
wget http://wl500g.info/attachment.php?attachmentid=2776&d=1206708294 -O ./htdigest.tar.gz
tar -xzvf ./htdigest.tar.gz
cp ./htdigest /opt/sbin/htdigest
4. Создаем сертификат:
cd /opt/var/run
openssl req -new -x509 -keyout lighttpd.pem -out lighttpd.pem -days 3650 -nodes
Отвечаем на вопросы на собственное усмотрение :
Country Name (2 letter code) [AU]:RU
State or Province Name (full name) [Some-State]:Moscow state
Locality Name (eg, city) []:Moscow
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Privet router
Organizational Unit Name (eg, section) []:Internet
Common Name (eg, YOUR name) []:routername
Email Address []:[email protected]
5. Настраиваем:
nano /opt/etc/lighttpd/lighttpd.conf
Раскомментируем в нем строчки "mod_access", "mod_auth","mod_cgi", "mod_accesslog" )
Указываем где лежат файлы веб морды:
server.document-root = "/opt/share/www/lighttpd"
Указываем тот же порт, что и был:server.port = 80
если делали перенос родной веб морды:
nvram set http_lanport=8080 && nvram commit
Иначе - оставляем свой (например 8081).Разкомментируем секцию cgi.assign, изменяем для ".cgi" на "/usr/bin/perl"
Проверяем наличие и правильность строк :
далее меняем секцию auth.require, она должна выглядить так::
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/opt/etc/lighttpd/.passwd"
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/opt/var/run/lighttpd.pem"
server.document-root = "/opt/share/www/secure"
auth.require = ( "" =>
(
"method" => "digest",
"realm" => "router",
"require" => "valid-user"
)
)
}
6. Создаем файл с паролями:
htdigest -c /opt/etc/lighttpd/.passwd router username
спросят пароль для пользователя username
Для добавления пользователя и смены пароля существующему используются следующие команды:
htdigest /opt/etc/lighttpd/.passwd router username2
htdigest /opt/etc/lighttpd/.passwd router username
7. Рестартуем lighttpd:
/opt/etc/init.d/S80lighttpd restart
8. Сохраняемся:
Заходим на свой роутер: https://my.router/
должно спросить устанавливать ли сертификат, а потом логин с паролем и пустить.