![서버 127.0.0.1:3128에는 사용자 이름과 비밀번호가 필요합니다. 서버에 다음과 같이 표시됩니다. 부모에 대한 cntlm](https://rvso.com/image/1314339/%EC%84%9C%EB%B2%84%20127.0.0.1%3A3128%EC%97%90%EB%8A%94%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%9D%B4%EB%A6%84%EA%B3%BC%20%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%EA%B0%80%20%ED%95%84%EC%9A%94%ED%95%A9%EB%8B%88%EB%8B%A4.%20%EC%84%9C%EB%B2%84%EC%97%90%20%EB%8B%A4%EC%9D%8C%EA%B3%BC%20%EA%B0%99%EC%9D%B4%20%ED%91%9C%EC%8B%9C%EB%90%A9%EB%8B%88%EB%8B%A4.%20%EB%B6%80%EB%AA%A8%EC%97%90%20%EB%8C%80%ED%95%9C%20cntlm.png)
방금 새로운 Ubuntu 12.04에 cntlm을 설치했습니다. 구성 파일에 etc/cntlm.conf
아래와 같이 네트워크 구성을 삽입했습니다.
Username: myUsername
Domain : myDomain
Password: myPassword
Proxy : myProxy:8080
Listen: 3128
그런데 브라우저 네트워크 프록시로 설정 127.0.0.1:3128
하고 웹사이트를 방문하려고 하면 cntlm 팝업 메뉴가 나타나 사용자 이름과 비밀번호를 요구합니다.
이에 대한 해결책은 무엇입니까? 내 네트워크 도메인 이름을 어떻게 얻을 수 있나요? 내 도메인 이름이나 기타 세부 사항이 잘못된 것 같습니다.
답변1
1) CNTLM을 기본 디렉터리(Windows의 경우 C:\Program Files (x86)\cntlm\ )에 설치합니다.
2) 실행cmd.exe
3) 종류 :cd "C:\Program Files (x86)\cntlm\"
4) 종류 :cntlm.exe -H -d your_domain -u your_username
비밀번호를 물어볼 것입니다. 비밀번호를 입력하면 cntlm이 해시를 제공합니다. 이 같은:
c:\Program Files (x86)\Cntlm>cntlm -H -d your_domain -u your_username
Password:
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassNTLMv2 2A0B7C2457FB7DD8DA4EB737C4FA224F
이제 비밀번호가 해시되었습니다. 텍스트 편집기에 저장하세요.
5) 종류 :cntlm -Mhttp://www.google.com
비밀번호를 다시 입력하세요. 그것은 당신에게 그런 것을 줄 것입니다
c:\Program Files (x86)\Cntlm>cntlm -M http://www.google.com
Password:
Config profile 1/4... Credentials rejected
Config profile 2/4... OK (HTTP code: 302)
----------------------------[ Profile 1 ]------
Auth NTLM
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
------------------------------------------------
이제 프로필 2가 성공한 것을 확인할 수 있습니다. 프로필 2에 OK라고 표시되어 있기 때문입니다. 시스템에 따라 다를 수 있습니다.
비결은,
- 인증이 NT인 경우 PassNT만 사용해야 합니다.
- 인증이 LM인 경우 PassLM만 사용해야 합니다.
- 인증이 NTLM인 경우 PassLM과 PassNT를 모두 사용해야 합니다.
- 인증이 NTLMv2인 경우 PassNTLMv2만 사용해야 합니다.
이제 우리는 원하는 것을 모두 얻었습니다. 내 구성의 경우 Auth에서는 NTLM이라고 말하므로 cntlm.ini 구성 파일에서 PassNT와 PassLM을 모두 사용하겠습니다.
이것은 주어진 답변에 따른 구성 파일의 예입니다.
#
# Cntlm Authentication Proxy Configuration File
#
Username yourusername
Domain yourdomain
Auth NTLM
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
Workstation yourhostname.yourdomain
# Most probably proxy.yourdomain:8080
Proxy yourProxyIP:yourProxyPort
NoProxy localhost, 127.0.0.*, 10.*, 192.168.*
Listen 3132
Gateway yes
이제 컴퓨터의 IP 주소와 포트 3132를 프록시로 사용할 수 있습니다.
참고 1: 도메인\사용자 이름을 사용자 이름으로 사용하지 마세요. 참고 2: 있다면 도메인(yourdomain.intra) 뒤에 '.intra' 확장자를 사용하는 것을 잊지 마세요.
답변2
파일 에서 해당 필드를 다음 필드 중 하나로 cntlm.conf
대체해야 합니다 .Password
PassLM
(LM 해시를 사용하는 경우)PassNT
(NT 해시를 사용하는 경우)PassNTLMv2
(NTLMv2 해시를 사용하는 경우)
그런 다음 일반 텍스트 비밀번호를 작성하지 말고 다음으로 계산할 수 있는 해당 해시를 작성해야 합니다.cntlm -H -d <domain> -u <user>
답변3
나는 이와 같은 문제가 있었다.
우선 다음 명령을 시도해 보세요.
sudo cntlm -M http://www.google.com
결과를 확인하세요. 유일한 방법이라면좋아요~이다인증 = LM, 그런 다음 구성 파일을 수정해야 합니다(이 줄의 주석 처리 제거).
Auth LM
Flags 0x06820000
구성 파일을 변경하는 방법을 모르는 경우 다음을 수행하십시오.
gksudo gedit /etc/cntlm.conf
CNTLM을 다시 시작하는 것을 잊지 마세요.
sudo service cntlm restart