Назад | Перейти на главную страницу

менять пароль htaccess ежедневно

Я хочу защитить поддомен, к которому пользователю предоставляется доступ только на 1 день. Можно ли настроить задание cron, которое будет автоматически обновлять файл .htpasswd с новым паролем ежедневно?

Вам, вероятно, следует использовать приложение, которое предназначено для этого, а не взламывать что-то вместе с cron. Но, если вам нужно сделать его хакерским ...

Вам нужно будет запустить htpasswd в «пакетном режиме». На странице руководства htpasswd:

htpasswd -mb /usr/web/.htpasswd-all jones Pwd4Steve

          Encrypts the password from the command line (Pwd4Steve)
          using the MD5 algorithm, and stores it in the specified
          file.

Примерно так должно работать:

FILE=/path/to/your/htaccess/file
# There are a bunch of ways to get a new password, this is one:
NEW_PASS=`cat /dev/urandom|tr -dc "a-zA-Z0-9-_\$\?"|fold -w 9|head -n1`
HTPASSWD=/usr/bin/htpasswd
WEB_USER=samuel_l_jackson
# This should do it
$HTPASSWD -b $FILE $WEB_USER $NEW_PASS
# You'll probably want to email the password to your user, 
# so they can actually use the new password

Обычно я отвечал только: да, это возможно.

Но вы даже можете интегрировать базу данных, в которой хранятся пользователь и пароль. Например mod_auth_mysql. А затем вы даже можете включить / отключить / изменить все с помощью стандартного SQL. Я оставлю только намек на это вопрос и домашняя страница. Иногда этот подход не работает, но в этом случае вы можете обойти это, заменив mod_auth_mysql с участием mod_auth_pam а затем интегрировать MySQL в PAM. Но я позволю этому в качестве упражнения для читателя ...