Cntlm config फाइल में प्रॉक्सी जानकारी कैसे भरें?


80

Cntlm एक NTLM / NTLM सत्र प्रतिक्रिया / NTLMv2 है जो HTTP प्रॉक्सी को प्रमाणित करके आपको Microsoft मालिकाना दुनिया की जंजीरों से मुक्त करने में मदद करने का इरादा रखता है।

मेरे पास निम्न प्रारूप में मेरा प्रॉक्सी URL है:

http://user:passwords@my_proxy_server.com:80

और मुझे यह जानकारी प्रदान करनी होगी cntlm। इसकी विन्यास फाइल cntlm.iniमें निम्नलिखित संरचना और पैरामीटर हैं:

Username 
Domain
Password    
Proxy   

मुझे यकीन नहीं है, इन चार विकल्पों को भरने के लिए मेरी मूल प्रॉक्सी संपत्ति को कैसे तोड़ना है?

जवाबों:


111

अपने उपयोगकर्ता, डोमेन और प्रॉक्सी जानकारी को अपडेट करें cntlm.ini, फिर इस कमांड के साथ अपने प्रॉक्सी का परीक्षण करें (अपने Cntlm स्थापना फ़ोल्डर में चलाएं):

cntlm -c cntlm.ini -I -M http://google.ro

यह आपके पासवर्ड के लिए पूछेगा, और उम्मीद है कि आपकी आवश्यक प्रमाणीकरण जानकारी प्रिंट करें, जिसे आपके में सहेजा जाना चाहिए cntlm.ini

नमूना cntlm.ini:

Username            user
Domain              domain

# provide actual value if autodetection fails
# Workstation         pc-name

Proxy               my_proxy_server.com:80
NoProxy             127.0.0.*, 192.168.*

Listen              127.0.0.1:54321
Listen              192.168.1.42:8080
Gateway             no

SOCKS5Proxy         5000
# provide socks auth info if you want it
# SOCKS5User          socks-user:socks-password

# printed authentication info from the previous step
Auth            NTLMv2
PassNTLMv2      98D6986BCFA9886E41698C1686B58A09

नोट: लिनक्स पर विन्यास फाइल हैcntlm.conf


क्या मुझे http://user:passwords@my_proxy_server.com:80सिस्टम-व्यवस्थापक से डोमेन का पता लगाना चाहिए या नहीं?
दिलावर

Domain domainलाइन पर टिप्पणी करने का प्रयास करें और परीक्षण चलाएं, यह काम कर सकता है।
अलेक्जेंड्रुल

इसके अलावा, आप एक Password my-passwordलाइन जोड़ने की कोशिश कर सकते हैं । अफसोस की बात है कि मैं यहां आपके सेटअप को दोहरा नहीं सकता।
एलेक्ज़ेंड्रुल

2
लिनक्स (टकसाल) पर नोट करें कि config फाइल cntlm.conf है और यह कमांड (.exe भाग के बिना) काम करती है
कार्ल प्रीचेट

1
दिलचस्प है। पोस्टरिटी के लिए, मैंने इसे केवल /etc/cntlm.confUbuntu 14.04 पर पाया ।
वेबर 2

54

समाधान दो कदम लेता है!

सबसे पहले, उपयोगकर्ता, डोमेन और प्रॉक्सी फ़ील्ड को पूरा करें cntlm.ini। उपयोगकर्ता नाम और डोमेन संभवत: आपके कार्यालय में विंडोज में लॉग इन करने के लिए जो भी आप उपयोग करते हैं, उदाहरण के लिए होना चाहिए।

Username            employee1730
Domain              corporate
Proxy               proxy.infosys.corp:8080

फिर cntlm जैसे कमांड के साथ टेस्ट करें

cntlm.exe -c cntlm.ini -I -M http://www.bbc.co.uk

यह आपके पासवर्ड के लिए पूछेगा (फिर से जो भी आप Windows_ में लॉग इन करने के लिए उपयोग करते हैं)। उम्मीद है कि यह 200 http 200 ओके ’को कहीं प्रिंट करेगा, और आपकी कुछ क्रिप्टोकरंसी प्रमाणीकरण सूचनाओं को प्रिंट करेगा। अब इन्हें इसमें शामिल करें cntlm.ini, जैसे:

Auth            NTLM
PassNT          A2A7104B1CE00000000000000007E1E1
PassLM          C66000000000000000000000008060C8

अंत में, http_proxyविंडोज में पर्यावरण चर सेट करें (यह मानते हुए कि आप उस Listenफ़ील्ड के साथ नहीं बदले जो डिफ़ॉल्ट रूप से सेट है 3128) निम्न में से

http://localhost:3128

15

किसी भी विन्यास के बिना, आप बस निम्नलिखित आदेश जारी कर सकते हैं (संशोधित myusernameऔर mydomainअपनी जानकारी के साथ):

cntlm -u myusername -d mydomain -H

या

cntlm -u myusername@mydomain -H

यह आपसे पासवर्ड पूछेगा myusernameऔर आपको निम्न आउटपुट देगा:

PassLM          1AD35398BE6565DDB5C4EF70C0593492
PassNT          77B9081511704EE852F94227CF48A793
PassNTLMv2      A8FC9092D566461E6BEA971931EF1AEC    # Only for user 'myusername', domain 'mydomain'

फिर निम्न सामग्री (आपकी जगह , और आपकी जानकारी और पिछले कमांड के परिणाम ) के साथ फ़ाइल cntlm.ini(या cntlm.confडिफ़ॉल्ट पथ का उपयोग करके लिनक्स पर) बनाएं :myusernamemydomainA8FC9092D566461E6BEA971931EF1AEC

Username    myusername
Domain      mydomain

Proxy       my_proxy_server.com:80
NoProxy     127.0.0.*, 192.168.*

Listen      127.0.0.1:5865
Gateway     yes

SOCKS5Proxy 5866

Auth        NTLMv2
PassNTLMv2  A8FC9092D566461E6BEA971931EF1AEC

तब आपके पास स्थानीय पोर्ट पर एक स्थानीय ओपन प्रॉक्सी 5865और स्थानीय पोर्ट पर एक और एक समझ SOCKS5 प्रोटोकॉल होगा 5866


3

यहाँ एक गाइड है कि कैसे cntlm का उपयोग किया जाए

Cntlm क्या है?

cntlm एक NTLM / NTLMv2 है जो HTTP प्रॉक्सी को प्रमाणित करता है

यह आपके प्रॉक्सी का पता लेता है और एक सुन सॉकेट खोलता है, जो माता-पिता प्रॉक्सी के प्रत्येक अनुरोध को अग्रेषित करता है

क्यों cntlm?

Cntlm का उपयोग करके हम choro, pip3, apt-getकमांड लाइन से उपकरण चलाना संभव बनाते हैं

pip3 install requests
choco install git

Cntlm का मुख्य लाभ पासवर्ड सुरक्षा है।

Cntlm से आप पासवर्ड हैश का उपयोग कर सकते हैं।

तो कोई PLAINTEXT PASSWORD इन %HTTP_PROXY%और %HTTPS_PROXY%पर्यावरण चर

Cntlm स्थापित करें

आप sourceforge से नवीनतम cntlm रिलीज़ प्राप्त कर सकते हैं

ध्यान दें! उपयोगकर्ता नाम और डोमेन

मेरा उपयोगकर्ता नाम है zezulinsky

मेरा डोमेन है local

जब मैं कमांड का उपयोग करता हूं तो उपयोग करता हूं zezulinsky@local

जब आप कमांड चलाते हैं तो अपना उपयोगकर्ता नाम रखें

पासवर्ड जनरेट करें

एक कमांड चलाएं

cntlm -u zezulinsky@local -H

अपना पासवर्ड डालें:

Password:

परिणामस्वरूप आपको हैशेड पासवर्ड मिल रहा है:

PassLM          AB7D42F42QQQQ407552C4BCA4AEBFB11
PassNT          PE78D847E35FA7FA59710D1231AAAF99
PassNTLMv2      46738B2E607F9093296AA4C319C3A259

सत्यापित करें कि आपका जेनरेट किया गया हैश वैध है

एक कमांड चलाएं

cntlm -u zezulinsky@local -M http://google.com

अपना पासवर्ड डालें

Password:

परिणाम आउटपुट

Config profile  1/4... OK (HTTP code: 301)
----------------------------[ Profile  0 ]------
Auth            NTLMv2
PassNTLMv2      46738B2E607F9093296AA4C319C3A259
------------------------------------------------

ध्यान दें! जांचें कि PassNTLMv2 हैश समान है परिणामी हैश दोनों कमांड के लिए समान है

PassNTLMv2      46738B2E607F9093296AA4C319C3A259

कॉन्फ़िगरेशन फ़ाइल बदलें

जेनरेट की गई हैश को cntlm.iniकॉन्फ़िगरेशन फ़ाइल में रखें

C:\Program Files (x86)\Cntlm\cntlm.ini

यहां बताया गया है कि आपका cntlm.iniलुक कैसा होना चाहिए

Username    zezulinsky
Domain      local
PassLM      AB7D42F42QQQQ407552C4BCA4AEBFB11
PassNT      PE78D847E35FA7FA59710D1231AAAF99
PassNTLMv2  46738B2E607F9093296AA4C319C3A259

Proxy       PROXYSERVER:8080
NoProxy     localhost, 127.0.0.*
Listen      3128

ध्यान दें! cntlm.ini के अंत में newline

cntlm.iniकॉन्फ़िगरेशन फ़ाइल के अंत में एक नई पंक्ति जोड़ना महत्वपूर्ण है

अपने पर्यावरण चर सेट करें

HTTPS_PROXY=http://localhost:3128
HTTP_PROXY=http://localhost:3128

जांचें कि आपका cntlm काम करता है

cntlm.exeप्रक्रिया एक्सप्लोरर के साथ नामित सभी प्रक्रियाओं को रोकें

कमांड चलाएं

cntlm -u zezulinsky@local -H

आउटपुट जैसा दिखता है

cygwin warning:
  MS-DOS style path detected: C:\Program Files (x86)\Cntlm\cntlm.ini
  Preferred POSIX equivalent is: /Cntlm/cntlm.ini
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
section: local, Username = 'zezulinsky'
section: local, Domain = 'local'
section: local, PassLM = 'AB7D42F42QQQQ407552C4BCA4AEBFB11'
section: local, PassNT = 'PE78D847E35FA7FA59710D1231AAAF99'
section: local, PassNTLMv2 = '46738B2E607F9093296AA4C319C3A259'
section: local, Proxy = 'PROXYSERVER:8080'
section: local, NoProxy = 'localhost, 10.*, 127.0.0.*
section: local, Listen = '3128'
Default config file opened successfully
cntlm: Proxy listening on 127.0.0.1:3128
Adding no-proxy for: 'localhost'
Adding no-proxy for: '10.*'
Adding no-proxy for: '127.0.0.*'
cntlm: Workstation name used: MYWORKSTATION
cntlm: Using following NTLM hashes: NTLMv2(1) NT(0) LM(0)
cntlm: PID 1234: Cntlm ready, staying in the foreground

एक नया cmd खोलें और एक कमांड चलाएँ:

pip3 install requests

आपके पास अनुरोध अजगर पैकेज स्थापित होना चाहिए

अपनी मशीन को पुनरारंभ करें

बधाई हो, अब आपके पास स्थापित और कॉन्फ़िगर किया गया cntlm है


1

बस जोड़ने के लिए, यदि आप "पाइप" ऑपरेशन कर रहे हैं, तो आपको जोड़ने और अतिरिक्त करने की आवश्यकता हो सकती है --proxy = localhost: port_number "

जैसे pip install --proxy=localhost:3128 matplotlib

पूरी जानकारी देखने के लिए इस लिंक पर जाएँ ।


0

एक बार जब आप फ़ाइल जनरेट करते हैं, और अपना पासवर्ड बदलते हैं, तो आप नीचे के रूप में चला सकते हैं,

cntlm -H

उपयोगकर्ता नाम समान होगा। यह पासवर्ड के लिए पूछेगा, इसे दे, फिर PassNTLMv2 की प्रतिलिपि बनाएँ, cntlm.ini को संपादित करें, फिर बस निम्नलिखित चलाएँ

cntlm -v

-3

मेरे लिए बस cntlm -Hसही हैश उत्पन्न नहीं कर रहा था, लेकिन यह उपयोगकर्ता नाम प्रदान करने के लिए नीचे कमांड के साथ करता है।

यदि आपको cntlm के लिए एक नया पासवर्ड हैश जेनरेट करने की आवश्यकता है, क्योंकि आपने इसे बदल दिया है या आपको इसे अपडेट करने के लिए मजबूर किया गया है, तो आप बस नीचे दिए गए कमांड को टाइप कर सकते हैं और आउटपुट के साथ अपनी cntlm.conf कॉन्फ़िगरेशन फ़ाइल को अपडेट कर सकते हैं:

$ cntlm -u test -H
Password: 
PassLM          D2AABAF8828482D5552C4BCA4AEBFB11
PassNT          83AC305A1582F064C469755F04AE5C0A
PassNTLMv2      4B80D9370D353EE006D714E39715A5CB    # Only for user 'test', domain ''

यह पोस्ट पूरी तरह से जानकारी को याद नहीं कर रही है, कि NTLMv2 हैश के लिए डोमेन और उपयोगकर्ता नाम सही ढंग से काम करने के लिए निर्धारित किया जाना चाहिए, और यह भी कि इस जानकारी को कैसे और कहां संग्रहीत करना है।
पेट्र
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.