Добавление пользователя NCSA в Squid без перезаписи файла паролей
Обновите существующий файл паролей в стиле NCSA, не перезаписывая учётные записи, и различайте хранение учётных данных и политику доступа Squid.
Первый пользователь работает. Вы добавляете второго, и первый исчезает. Проблема может быть в команде файла паролей, а не в ограничении на одного пользователя в Squid.
Параметр htpasswd Apache с ключом -c создаёт файл паролей. При применении к существующему файлу он перезаписывает его. Не используйте этот параметр каждый раз, когда добавляете или обновляете пользователя.
Для существующего файла, который ведёт ваш администратор, форма такая:
htpasswd /etc/squid/passwords alex
Используйте настоящий файл, настроенный для basic_ncsa_auth, с соответствующими административными правами. Программа запрашивает пароль, а не помещает его в командную строку.
Вспомогательная программа должна уметь читать полученный файл, а поддерживаемые ею форматы паролей должны соответствовать тому, как создаются записи. Создание нового файла в другом месте не заставит Squid использовать его.
Сохранённый пользователь не получает автоматически прав на каждое назначение. У вспомогательной программы аутентификации Squid и его правил доступа разные задачи.
Смена пароля с удалённого клиента — ещё одно требование. Файл NCSA не даёт протокол самостоятельной смены пароля только потому, что браузер может использовать прокси. Используйте принятый в сервисе процесс управления учётными записями.