ওপেনভিপিএন ক্লায়েন্টকে নিজের ডিএনএস সার্ভারগুলি ধাক্কা দেওয়ার অনুমতি দিন, ওপেনভিপিএন সার্ভারের পুশ ডিএনএস নির্বিশেষে?


9

একটি ডেবিয়ানে একটি ওপেনভিপিএন সার্ভার চলছে এবং এটি সার্ভার কনফিগারেশন ফাইলে একটি ডিএনএস ঠেলে দেয়:

"ডিএইচসিপি-বিকল্প ডিএনএস ৮.৮.৮.৮" টিপুন

ব্যবহারকারীদের ক্লায়েন্ট পক্ষের যে ডিএনএস সার্ভারগুলি পরিবর্তন করার অনুমতি দেওয়ার আছে?

এখানে ধরা আছে, ওপেনভিপিএন সার্ভারটি অবশ্যই একটি ডিএনএসকে ধাক্কা দেবে কারণ অন্যথায় অনেক ওপেনভিপিএন ক্লায়েন্ট ওয়েব সিস্টেমে খুলতে পারবেন না যতক্ষণ না সিস্টেমের নেটওয়ার্ক সেটিংসে ম্যানুয়ালি ডিএনএস সার্ভার সেট না করে।

আমার লক্ষ্যটি হ'ল প্রযুক্তিগতভাবে দক্ষ ব্যবহারকারীদের জন্য একটি ডিফল্ট ডিএনএস সার্ভারটি স্বয়ংক্রিয়ভাবে প্রয়োগ করা হবে, পাশাপাশি দক্ষ কম্পিউটার ব্যবহারকারীদের তাদের নিজস্ব ডিএনএস সার্ভার সেট করার অনুমতি দেওয়া হবে।

নোট করুন যে পিসিতে ডিএনএস সেটিংস পরিবর্তন করার সময় ওপেনভিএনপি সার্ভারে 'পুশ "ডিএইচসিপি-বিকল্প ডিএনএস ৮.৮.৮." "বিকল্পটি সক্রিয় রয়েছে, কিছুই করে না। স্থানীয় ডিএনএস সেটিংস নির্বিশেষে সার্ভার দ্বারা চালিত ডিএনএস রয়ে গেছে।

কোন ধারনা?

ওপেনভিপিএন সার্ভার কনফিগারেশন:

# cat /etc/openvpn/openvpn.conf
server 10.186.35.0 255.255.255.0
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
ifconfig-pool-persist ipp.txt
#push "route 0.0.0.0 0.0.0.0"
#push "redirect-gateway"
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
comp-lzo
user nobody
group users
persist-key
persist-tun
status openvpn-status.log
verb 3
script-security 3
auth-user-pass-verify /etc/openvpn/auth-chap via-env
client-cert-not-required
duplicate-cn
management 127.0.0.1 5119
script-security 3 system
username-as-common-name
client-connect /etc/openvpn/scripts/clientconnect.sh
client-disconnect /etc/openvpn/scripts/clientdisconnect.sh
log-append /var/log/openvpn.log
log /var/log/openvpn.log

আপডেট: ক্লায়েন্ট অপারেটিং সিস্টেমগুলি হ'ল উইন্ডোজ এবং ম্যাক


আপনি আপনার ডিএইচসিপি ক্লায়েন্টগুলির প্রাথমিক অপারেটিং সিস্টেমটি নির্দিষ্ট করেন নি, তাই আমরা সত্যিই বলতে পারি "হ্যাঁ, ডিএইচসিপি সরবরাহ করা ডিএনএস সার্ভারগুলি সাধারণত রীতিমতো তুচ্ছ"। আপনি কী অনুভব করছিলেন যা পরামর্শ দিয়েছিল যে এই ঘটনাটি ছিল না?
অ্যান্ড্রু বি

দুঃখিত, অপারেটিং সিস্টেমগুলি হ'ল উইন্ডোজ এবং ম্যাক। ওপেনভিএনপি সার্ভারের সাথে সংযুক্ত থাকাকালীন আমি কার্যকরভাবে ডিএনএস সেটিংস পরিবর্তন করতে সক্ষম হব না। উদাহরণস্বরূপ ওপেনভিএনপি সার্ভারটি ডিএনএস সরবরাহ করে: ৮.৮.৮.৮ এবং যখন আমি দক্ষিণ আফ্রিকার একটি স্থানীয় ডিএনএসে পরিবর্তন করি (স্থানীয়ভাবে), তখন আমার অফিসিয়াল ডিএনএস সার্ভারটি ৮.৮.৮.৮ (বা গুগলের এনালগ) থাকে। এক dnsleaktest c0m উপর DNS সার্ভার পরীক্ষা করতে পারেন
Dimi

উত্তর:


16

2017 এর হিসাবে (ওপেনভিপিএন 2.4) এটি এখন সম্ভব। আপনার ক্লায়েন্ট কনফিগারেশন ফাইলে এই লাইনটি যুক্ত করুন:

pull-filter ignore "dhcp-option DNS"

এবং এটি উদ্ধৃত পাঠ্যের সাথে শুরু হওয়া সমস্ত ধাক্কাযুক্ত কনফিগার লাইন উপেক্ষা করবে।

বিকল্পগুলি টপ-ডাউনের সাথে মিলে যায়, তাই প্রথম ম্যাচটি ব্যবহৃত হয়। আপনি এটি কয়েকটি রুটের অনুমতি দেওয়ার জন্য এবং অন্যকে প্রত্যাখ্যান করতে ব্যবহার করতে পারেন, যদি এটি আপনার প্রয়োজন অনুসারে হয়।

তিন কর্ম কীওয়ার্ড হয় accept, ignoreএবং reject। আমি এর জন্য কোনও ব্যবহারের সন্ধান পাইনি reject


4

অফিসিয়াল ওপেনভিপিএন ডকুমেন্টেশনে আপনি এটি পেতে পারেন:

[...]
--route-nopull
  When used with --client or --pull, accept options pushed by server EXCEPT for routes and 
  dhcp options like DNS servers.
  When used on the client, this option effectively bars the server from adding routes to the 
  client's routing table, however note that this option still allows the server to set the 
  TCP/IP properties of the client's TUN/TAP interface.
[...]

দুর্ভাগ্যক্রমে, আপনি যা জিজ্ঞাসা করছেন তা ছাড়াও, এটি আপনার কনফিগারেশন দ্বারা সরবরাহিত পুনর্নির্দেশ-গেটওয়ে অক্ষম করারও পার্শ্ব প্রতিক্রিয়া রয়েছে এবং এটি আপনার ক্ষেত্রে, কোনও সমস্যার প্রতিনিধিত্ব করতে পারে।

আমি যা প্রস্তাব করি তা সম্পূর্ণ ভিন্ন পদ্ধতির is

যেমন আপনি স্পষ্টভাবে উল্লেখ করেছেন: " আমার লক্ষ্যটি হ'ল প্রযুক্তিগতভাবে দক্ষ ব্যবহারকারীদের জন্য একটি ডিফল্ট ডিএনএস সার্ভারটি স্বয়ংক্রিয়ভাবে প্রয়োগ করা এবং দক্ষ কম্পিউটার ব্যবহারকারীদের তাদের নিজস্ব ডিএনএস সার্ভার সেট করার অনুমতি দেওয়া। " দেখে মনে হচ্ছে আপনি ঠিক কী জানেন যে ব্যবহারকারীরা আপনাকে সরবরাহ করতে চান একটি ডিএনএস-কনফিগার এবং কোন ব্যবহারকারী আপনি এই জাতীয় কনফিগারেশন সরবরাহ করতে চান না।

সুতরাং, আপনার ওপেন কনফিগারেশনটিকে সরাসরি মূল ওপেনপিএনএন কনফিগারেশনের ফাইলটিতে চাপানোর পরিবর্তে (... এবং যেমন আপনার সমস্ত ব্যবহারকারীকে এই জাতীয় কনফিগারেশন সরবরাহ করুন ), আপনি প্রতি ব্যবহারকারী কনফিগার প্রয়োগ করতে পারেন । আপনি এটি দিয়ে এটি করতে পারেন:

--client-config-dir dir
  Specify a directory dir for custom client config files. After a connecting client 
  has been authenticated, OpenVPN will look in this directory for a file having the 
  same name as the client's X509 common name. If a matching file exists, it will be
  opened and parsed for client-specific configuration options. If no matching file is
  found, OpenVPN will instead try to open and parse a default file called "DEFAULT", 
  which may be provided but is not required. Note that the configuration files must 
  be readable by the OpenVPN process after it has dropped it's root privileges.
  This file can specify a fixed IP address for a given client using --ifconfig-push, as 
  well as fixed subnets owned by the client using --iroute.
  One of the useful properties of this option is that it allows client configuration 
  files to be conveniently created, edited, or removed while the server is live, without 
  needing to restart the server.
  The following options are legal in a client-specific context: --push, --push-reset, 
  --iroute, --ifconfig-push, and --config.

সুতরাং, মূল কনফিগারেশন হিসাবে, আপনার অপসারণ করা উচিত :

  [**** to be removed from the main config***]
  push "dhcp-option DNS 8.8.8.8"
  push "dhcp-option DNS 8.8.4.4"

এবং / ইত্যাদি / ওপেনভিপিএন / ইউজারকনফ ডিরেক্টরিতে রেফারেন্স যুক্ত করুন (উদাহরণস্বরূপ। আপনার পছন্দসইটি বেছে নিতে নির্দ্বিধায়):

 [**** to be ADDED to the main config***]
 client-config-dir /etc/openvpn/userconf

তারপরে, এই জাতীয় ব্যবহারকারীর ডিরেক্টরিতে, উপরের দুটি সারি মুছে ফেলা এমন ফাইল সহ আপনি যেমন DNS সরবরাহ করতে চান তাদের প্রত্যেকের জন্য একটি ফাইল তৈরি করুন।

স্পষ্টতই আপনি প্রতিটি ব্যবহারকারীর জন্য ওপেনভিপিএন কনফিগারেশনকে সূক্ষ্ম-সুর করতে পারেন, উপরের দুটি সারিটিতে কাস্টমাইজেশন সীমাবদ্ধ করে না।

চূড়ান্ত নোট হিসাবে, আপনি সিসিডি-এক্সক্লুসিভ প্যারামিটারেও আগ্রহী হতে পারেন ।


প্রয়াসের জন্য দামিয়ানো কিন্তু আমি ভয় করি সঠিক উত্তরটি হ'ল টিএপি অ্যাডাপ্টারের ডিএনএস সার্ভারটি পরিবর্তন করা উচিত, কারণ ডিএনএস সার্ভারগুলিকে ধাক্কা দেয় এমন ওপেনভিপিএন সার্ভারের সাথে সংযোগ স্থাপনের সময় ইন্টারনেট সংযোগের আইপিভি 4 বৈশিষ্ট্যগুলি কার্যকর হয় না। এইভাবে সার্ভার কনফিগারেশন থেকে কিছু অপসারণ করা প্রয়োজন হয় না, তবে কেবল উইন্ডোজ মেশিনের ট্যাপ অ্যাডাপ্টারের আইপিভি 4 বৈশিষ্ট্য সম্পাদনা করতে।
দিমি

@ ডিমি: বাস্তবে যে সমাধানটি এটি প্রদর্শিত হবে তার চেয়ে অনেক বেশি সীমিত। যেহেতু বিভিন্ন ভিপিএন সংযোগগুলি বিভিন্ন ডিএনএস সার্ভার ব্যবহার করে এবং লিঙ্কগুলি স্থাপনের ক্রমটি নির্ধারণ করবে যে কোন টিএপি অ্যাডাপ্টার ব্যবহার করা হয়েছে, তাই আমি সম্ভবত ডিএনএসের নির্দিষ্ট সেটটি ব্যবহার করার জন্য টিএপি অ্যাডাপ্টারগুলিকে পূর্ব-কনফিগার করতে পারি না, আমি যে ডিএনএসগুলি কনফিগার করছি সেটি এমনকি প্রযোজ্য নাও হতে পারে সংযোগ যা নির্দিষ্ট TAP অ্যাডাপ্টার ব্যবহার করে প্রতিষ্ঠিত। সংক্ষেপে, আপনার workaround কেবল তখনই কাজ করে যদি সেখানে থাকে তবে একটিমাত্র ভিপিএন সংযোগ সবসময় একই ট্যাপ অ্যাডাপ্টারের মাধ্যমে প্রতিষ্ঠিত হয়।
0xC0000022L

1

আমার সমস্যাটি হুবহু এক রকম ছিল না, তবে অনুসন্ধানের ফলাফলগুলিতে এই প্রশ্নটি উপস্থিত হওয়ার জন্য লক্ষণগুলি যথেষ্ট পরিমাণে সমান ছিল, সুতরাং অন্য যে কেউ একই কারণে এখানে বাধা দেয়:

আমি ম্যান ওএসের জন্য ওপেনভিপিএন জিইউ টানেলব্লিক ব্যবহার করছি । আমার ওপেনভিপিএন সার্ভারটি কোনও ডিএইচসিপি বা ডিএনএস বিকল্পগুলিকে ধাক্কা দেওয়ার জন্য সেট করা হয়নি, তবে ক্লায়েন্টটি এখনও ডিপিএন সার্ভারটি ভিপিএন এর উপরে ব্যবহার করছিল, আমি স্থানীয়, নন-ভিপিএন ডিএনএস সার্ভারের পরিবর্তে এটি ব্যবহার করতে চাইছিলাম।

সমাধান Tunnelblick এর কনফিগারেশন → সেটিংস ট্যাব ঢোকা এবং পরিবর্তন ছিল সেট ডিএনএস / WINS করতে না সেট নেমসার্ভারটি


0

@ আলদাভিভার জন্য ধন্যবাদ, এটি আমার ম্যাকোস 10.11 এ কাজ করছে।

আমার স্ক্রিনশট সংযুক্ত করুন।

এখানে চিত্র বর্ণনা লিখুন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.