টিপিএসের ওপেনভিপিএন
আপনার ভিপিএন পরিবহন প্রোটোকল হিসাবে টিসিপি ব্যবহার করছে। টানেল উদাহরণটি টিসিএস / টিসিপিতে টিসিপি স্ট্রিমের বিষয়বস্তু আবদ্ধ করতে ব্যবহৃত হয়। আপনি এই প্রোটোকল স্ট্যাক পাবেন:
[আইপি] <------------------------> [আইপি]
[VPN খুলুন] <------------------------> [VPN খুলুন]
[টিএলএস] <~~~~~> [টিএলএস]
[টিসিপি] <-> [টিসিপি] <-----> [টিসিপি] <-> [টিসিপি]
[আইপি] <-> [আইপি] <-----> [আইপি] <-> [আইপি]
[] [] [] []
সার্ভার স্টানেল স্টানেল ক্লায়েন্ট
স্টানালের উদাহরণগুলির মধ্যে আপনার কাছে এই প্রোটোকল স্ট্যাকটি তারে রয়েছে:
[আইপি]
[ওপেনভিপিএন]
[টিএলএস]
[বিভিন্ন TCP (443)]
[আইপি]
[...]
টিএলএস যেমন এর পেড লোকে এনক্রিপ্ট করে, তখন আক্রমণকারী কেবল দেখতে পাবে:
[??? ]
[টিএলএস]
[বিভিন্ন TCP (443)]
[আইপি]
[...]
সুতরাং হ্যাঁ, এটি সরল টিএলএস ট্র্যাফিক (এটি HTTP / TLS, SMTP / TLS, POP / TLS বা ট্র্যাফিকের দিকে নজর রাখার জন্য কারও জন্য কিছু হতে পারে তবে এটি অনেকটা HTTP / TLS এর মতো দেখতে টিসিপি পোর্ট 443 ব্যবহৃত হয়েছে) looks আপনি ওয়্যারশার্ক ব্যবহার করে এটি পরীক্ষা করতে পারেন: স্ট্রানাল দৃষ্টান্তগুলির মধ্যে ট্র্যাফিক রেকর্ড করুন। ওয়্যারশার্ক ইউআইতে (স্ট্রিমের একটি প্যাকেটের ডান বোতাম), আপনি ওয়্যারশার্ককে ট্র্যাফিকটিকে টিএলএস হিসাবে ব্যাখ্যা করতে বলতে পারেন: এটি এটি টিএলএস ট্র্যাফিক হিসাবে স্বীকৃতি দেবে (আপনি টিএলএস অধিবেশনটির পেডলোড নয়, বিভিন্ন টিএলএস বার্তা দেখতে পাবেন) ।
আধুনিক ব্রাউজারটি কী করবে তা দেখতে আপনি ক্লায়েন্টে এসএনআই ব্যবহার করতে চাইতে পারেন । আপনি ব্যবহার করতে চাইতে পারেন ALPN পাশাপাশি কিন্তু বর্তমানে stunnel যে হ্যান্ডেল নেই।
বিল্টিন টিএলএস সহ ওপেনভিপিএন
তুলনায়, আপনি যদি ওপেনভিপিএন ব্যবহার করে থাকেন তবে আপনার কাছে এরকম কিছু থাকবে:
[আইপি]
[ওপেনভিপিএন]
[টিসিপি]
[আইপি]
[...]
যা দেখতে এরকম দেখাচ্ছে:
[??? ]
[ওপেনভিপিএন]
[টিসিপি]
[আইপি]
[...]
বিল্টিন টিএলএস স্তরটি (আইপি, ইথারনেট) প্যাকেটগুলি সজ্জিত করে না তবে এটি কেবল সেশনটি সেট আপ এবং সত্যায়িত করতে ব্যবহৃত হয়:
[টিএলএস]
[ওপেনভিপিএন]
[টিসিপি]
[আইপি]
[...]
এই ক্ষেত্রে, আপনার ট্র্যাফিকটি সরল টিএলএস ট্র্যাফিকের মতো দেখাচ্ছে না তবে এটি অবশ্যই ওপেনভিপিএন। যদি আপনি এই ট্র্যাফিকটিকে ওয়ারশার্কে ওপেনভিপিএন হিসাবে ব্যাখ্যা করেন তবে আপনি ওপেনভিপিএন বার্তাগুলি এবং এর মধ্যে টিএলএস বার্তা (তবে পে-লোড নয়) সনাক্ত করতে পারবেন।
সতর্কতা
আপনার সচেতন হওয়া উচিত যে যদি কোনও প্যাসিভ আক্রমণকারী এটি বলতে সক্ষম না হয় যে আপনার রিমোট সার্ভারটি আসলে একটি ওপেনভিপিএন সার্ভার, তবে একটি সক্রিয় আক্রমণকারী এটি খুঁজে পেতে সক্ষম হবে: কেবলমাত্র আপনার সার্ভারের সাথে টিএলএসের সাথে সংযুক্ত হয়ে, তিনি সক্ষম হবেন এটি কোনও HTTP / TLS সার্ভার নয় তা নিশ্চিত করার জন্য । ওপেনভিপিএন প্রোটোকল কথা বলার চেষ্টা করে তিনি সনাক্ত করতে সক্ষম হবেন যে আপনার সার্ভারটি ওপেনভিপিএন / টিএলএস সার্ভার।
ক্লায়েন্ট প্রমাণীকরণ সহ টিএলএসের ওপেনভিপিএন
এটি নিয়ে আপনি চিন্তিত যে আপনি টিএলএস ক্লায়েন্ট প্রমাণীকরণ সক্ষম করতে পারবেন: আক্রমণকারী কোনও কার্যকরী টিএলএস অধিবেশন শুরু করতে সক্ষম হবে না এবং টিএলএসের মধ্যে কোন পে-লোড এনপ্যাপুলেটেড তা অনুমান করতে সক্ষম হবে না।
* সতর্কতা: ** আমি ওপেনভিপিএন-তে বিল্টিন টিএলএস সমর্থন সম্পর্কে কথা বলছি না (এটি আপনাকে কেন সহায়তা করবে না সে সম্পর্কে বিশদ বিবরণের জন্য উপরে দেখুন)।
মাল্টিপ্লেক্সড ওপেনভিপিএন / টিএলএস এবং এইচটিটিপি / টিএলএস
আর একটি সমাধান টিএলএস অধিবেশন ধরে এইচটিটিপি এবং ওপেনভিপিএন উভয়কেই পরিবেশন করা। sslh স্বয়ংক্রিয়ভাবে প্রোটোকলের পেলোড সনাক্ত করতে এবং কোনও সরল এইচটিটিপি / টিসিপি সার্ভার বা আপনি ওপেনভিপিএন / টিসিপি সার্ভারে প্রেরণের জন্য ব্যবহার করা যেতে পারে। সার্ভারটি স্ট্যান্ডার্ড এইচটিটিপি / টিএলএস সার্ভারের মতো দেখবে তবে যে কেউ এই সার্ভারের সাথে ওপেনভিপিএন / টিএলএস বলতে চেষ্টা করছে তা সনাক্ত করতে সক্ষম হবে যে এটি আসলে ওপেনভিপিএন / টিএলএস সার্ভারও।
ওপেনভিপিএন / টিসিপি
বা এইচটিটিপি / টিসিপি
[1] .---------। .------। HTTP- র / বিভিন্ন TCP .-------------।
-> | সুড়ঙ্গ | ----> | | sslh | -------> | এইচটিটিপি সার্ভার |
'---------' '------' | '-------------'
| .----------------।
'------> | ওপেনভিপিএন সার্ভার |
VPN খুলুন / বিভিন্ন TCP '----------------'
[1] = হয় ওপেনভিপিএন / টিএলএস / টিসিপি বা এইচটিটিপি / টিএলএস / টিসিপি
ওপেনভিপিএন টিটিএস-এর মাধ্যমে HTTP সংযোগের মাধ্যমে
আর একটি সমাধান হ'ল একটি স্ট্যান্ডার্ড এইচটিটিপি / টিএলএস সার্ভার ব্যবহার করা এবং ওপেনভিপিএন সার্ভারের সাথে সংযোগ রাখতে HTTP সংযোগ / টিএলএস ব্যবহার করা: এটি একটি স্ট্যান্ডার্ড এইচটিটিপি সার্ভারের মতো দেখাবে। এমনকি HTTP সংযোগের অনুরোধটি অনুমোদনের জন্য আপনার ক্লায়েন্টের প্রমাণীকরণেরও প্রয়োজন হতে পারে (স্কুইড এটি করতে সক্ষম হওয়া উচিত)।
ওপেনভিপিএন এর মধ্যে এইচটিটিপি প্রক্সি ব্যবহারের বিকল্প রয়েছে:
http-proxy proxy.example.com
আপনি এটি একটি দুর্গম উদাহরণের সাথে একটি দূরবর্তী এইচটিটিপিএস প্রক্সির সাথে সংযুক্ত করতে সক্ষম হবেন:
http-proxy 127.0.0.1 8443
remote vpn.example.com
যা এই প্রোটোকল স্ট্যাকটি প্রয়োগ করবে:
[আইপি] <------------------------> [আইপি]
[VPN খুলুন] <------------------------> [VPN খুলুন]
[HTTP] <-------------> [HTTP]
[টিএলএস] <~~~~~> [টিএলএস]
[টিসিপি] <-> [টিসিপি] <-----> [টিসিপি] <-> [টিসিপি]
[আইপি] <-> [আইপি] <-----> [আইপি] <-> [আইপি]
[] [] [] []
সার্ভার এইচটিটিপিএস প্রক্স স্ট্যান্ডেল ক্লায়েন্ট