Я нахожусь в сети с брандмауэром, который требует имя пользователя / пароль. Я хочу написать скрипт для некоторых автоматических установок yum (в частности, инструментов для монтирования nfs), но сначала мне нужно перейти на веб-страницу в lynx и войти в систему, чтобы обойти брандмауэр. Есть ли способ передать аргумент user / pwd в lynx из терминала, чтобы он автоматически входил в систему?
1 ответ
Я не знаю пути через lynx, но есть несколько вещей, которые вы можете попробовать с помощью curl или elinks, в зависимости от конфигурации страницы входа.
Если это просто обычная проверка подлинности прокси, вы можете попробовать передать имя пользователя и пароль через curl:
curl -u username:password http://example.com
Вы также можете использовать curl для более сложных входов в систему, хранения файлов cookie сеанса и тому подобного. Проверьте "Использование cURL для автоматизации заданий HTTP"
Наконец, вы можете сделать это грязным способом, используя ELinks. ELinks имеет функцию сохранения имени пользователя и пароля, а также переключатель командной строки для автоматической отправки формы. Комбинируя два, это может быть тем, что вам нужно:
Включите сохранение пароля в elinks.conf, добавив следующую строку:
set document.browse.forms.auto_submit = 1
Затем выполните команду для автоматической отправки первой формы на веб-странице:
elinks http://example.com/login -auto-submit 1
Тогда проблема заключается в выходе из elinks, возможно, вам придется убить его в вашем скрипте.
Удачи.