Самый простой способ, который я могу придумать, - это установить права доступа к домашнему каталогу пользователя, чтобы исключить исполняемый бит (0xx
, 2xx
, 4xx
, 6xx
. )Если пользователь попытается войти в систему, он получит сообщение об ошибке, подобное этому:
Could not chdir to home directory /home/erik: Permission denied
Сайт перенаправляет вас на страницу входа:
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: /_layouts/CommerceServer/IM/Login.aspx?ReturnUrl=%2f_layouts%2fCommerceServer%2fIM%2fFileDownload.aspx%3fDisplayName%3dSTD_FULL_FILEFEED.TXT%26FileName%3dSTDPRICE_FULL [following]
--2019-09-15 19:53:29-- https://au.ingrammicro.com/_layouts/CommerceServer/IM/Login.aspx?ReturnUrl=%2f_layouts%2fCommerceServer%2fIM%2fFileDownload.aspx%3fDisplayName%3dSTD_FULL_FILEFEED.TXT%26FileName%3dSTDPRICE_FULL
Вероятно, он не принимает предоставленные вами учетные данные в качестве базовой аутентификации (, которую отправляет wget ), а вместо этого использует файлы cookie сеанса. Вы можете попробовать извлечь файлы cookie из своего браузера (при входе в систему )и отправить их с помощью wget(--load-cookies
). Они также могут следить за другими аспектами пользовательского агента запроса (, например ), которые вы также можете попробовать изменить.
Если вместо этого можно использовать curl, откройте инспектор (Ctrl+Shift+I
), перейдите на вкладку сети, загрузите файл, щелкните правой кнопкой мыши -запись для загрузки в списке запросов, наведите указатель мыши на «Копировать», затем выберите «Копировать как cURL», и команда теперь в вашем буфере обмена будет включать файлы cookie.