Проверка подлинности пользователя прокси-сервера
Я установил прокси-сервер squid и теперь пытаюсь найти способ изменить пароль для любых учетных записей через Интернет. Я ищу в Google и нахожу, что chpasswd.cgi имеет эту функцию. Я загружаю chpasswd-cgi.tar.gz и распаковываю его:
tar zxf chpasswd-cgi.tar.gz
Затем я прочитал README, чтобы узнать, как его установить. Он говорит, что просто введите./configure, затем я пытаюсь ввести make, затем make install.
Получение ниже ошибки
[root@proxy chpasswd-1.9.1]# make
gcc -c -O2 -w -I. -DHAVE_LIBCRYPT=1 -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_CRYPT_H=1 -DHAVE_PWD_H=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_TIME_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STRSTR=1 -DPREFIX=\"/usr/local/etc/chpasswd\" -DEnglish chpasswd.c
chpasswd.c:686: error: static declaration of ‘strip_latin’ follows non-static declaration
chpasswd.c:602: note: previous implicit declaration of ‘strip_latin’ was here
make: *** [chpasswd.o] Error 1
[root@proxy chpasswd-1.9.1]# make install
gcc -c -O2 -w -I. -DHAVE_LIBCRYPT=1 -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_CRYPT_H=1 -DHAVE_PWD_H=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_TIME_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STRSTR=1 -DPREFIX=\"/usr/local/etc/chpasswd\" -DEnglish chpasswd.c
chpasswd.c:686: error: static declaration of ‘strip_latin’ follows non-static declaration
chpasswd.c:602: note: previous implicit declaration of ‘strip_latin’ was here
make: *** [chpasswd.o] Error 1
Как мне решить это?
2 ответа
Это может быть полезно: http://www.squid-cache.org/mail-archive/squid-users/200502/0464.html
Однако для такой функции, как обновление паролей, я хотел бы знать, что за безопасностью этого скрипта следят, поэтому, если ему нужно работать над исходным кодом, просто чтобы его скомпилировать, я бы беспокоился о том, поддерживается. Я бы либо искал должным образом поддерживаемый дистрибутив, либо убедился бы в том, что уверен, что смогу поддерживать его сам, и у меня есть достаточно веские причины, чтобы захотеть взять его на себя.
Файл паролей находится в формате htpasswd (от Apache), поэтому для обновления паролей будет доступно другое программное обеспечение. Также squid может общаться с другими бэкэндами аутентификации. (например, ldap часто подходит для среды, в которой вы хотите аутентифицировать использование squid). Или, возможно, chpasswd-cgi доступен в поддерживаемом пакете для вашего дистрибутива ОС?
Вы можете получить более полезные ответы, если определите дистрибутив ОС, который вы используете.
Вам нужно удалить статическое слово стрип-латины, продолжать спускаться вниз и в конце концов вы его найдете.
Но у меня возникла проблема.
Можем ли мы изменить количество цифр в пароле? Я не вижу возможности редактировать эту часть, и я создаю новый сервер, и когда я импортирую файл passwd_file, люди с более чем 8 цифрами не смогут войти в систему, потому что -d ограничит его до 8.