wget: 401 승인되지 않음

wget: 401 승인되지 않음

NTLM으로 보호되는 전체 웹사이트를 다운로드하고 싶지만 다음과 같은 이유로 실패합니다.

HTTP-Anforderung gesendet, warte auf Antwort... 401 Unauthorized

Unbekanntes Authentifizierungsschema.

Authorisierung fehlgeschlagen.

이것은 내가 사용하는 명령입니다:

# wget --http-user=expample.com/username --http-password='mypassword' http://example.com/ -v

로그인 자격 증명은 100% 정확합니다.

# wget --version
GNU Wget 1.13.4 übersetzt unter linux-gnu.

+digest +https +ipv6 +iri +large-file +nls -ntlm +opie +ssl/gnutls

Wgetrc:
    /root/.wgetrc (Benutzer)
    /etc/wgetrc (System)
Lokale: /usr/share/locale
Übersetzt: gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/etc/wgetrc"
    -DLOCALEDIR="/usr/share/locale" -I. -I../lib -I../lib
    -D_FORTIFY_SOURCE=2 -Iyes/include -g -O2 -fstack-protector
    --param=ssp-buffer-size=4 -Wformat -Werror=format-security
    -DNO_SSLv2 -D_FILE_OFFSET_BITS=64 -g -Wall
Gebunden: gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
    -Werror=format-security -DNO_SSLv2 -D_FILE_OFFSET_BITS=64 -g -Wall
    -Wl,-z,relro -Lyes/lib -lgnutls -lgcrypt -lgpg-error -lz -lidn -lrt
    ftp-opie.o gnutls.o ../lib/libgnu.a

답변1

다음 과 조합해서 --http-user만 유용합니다.--http-passwd기본인증웹 사이트상에서.

이것은 거의 사용되지 않으며 웹 페이지 외부에서 사용자 이름과 비밀번호를 묻는 메시지가 표시되고 서버에 다음과 같이 묻는 메시지가 표시되기 때문에 쉽게 인식됩니다.

사이트는 사용자 이름과 비밀번호를 조회하고 세션에 대한 해당 정보를 유지하기 위해 다른 체계(보통 쿠키 기반 체계)를 사용할 가능성이 높습니다. wget이것도 처리할 수 있지만(맨 페이지를 확인하고 --save-session-cookie및 검색 load-cookies) 다음과 같은 것을 사용하여 이를 자동화하는 것이 더 나을 것입니다.셀렌, 실제 브라우저에 작업을 지시하거나 프로그래밍 방식으로 필드를 채우고 버튼을 클릭할 수 있는 곳입니다. 내 경험에 따르면 이 접근 방식은 자바스크립트가 많이 삽입된 웹사이트에서도 항상 작동합니다.

관련 정보