ভিপিএন ট্র্যাফিক স্ট্রানেল করুন এবং এটি 443 পোর্টে এসএসএল ট্র্যাফিকের মতো দেখায় তা নিশ্চিত করুন


13

আমি আমার বহির্গামী এবং আগত ট্র্যাফিককে যতটা সম্ভব এসএসএল ট্র্যাফিকের কাছাকাছিভাবে বৈধ হিসাবে দেখানোর চেষ্টা করছি। আমার নিজের ট্র্যাফিক ডিপিআই-এর কোনও উপায় আছে কি না তা নিশ্চিত করার জন্য এটি এসএসএল ট্র্যাফিক এবং ওপেনভিপিএন ট্র্যাফিকের মতো না? এবং আমার কনফিগার সেটআপের উপর ভিত্তি করে কি সমস্ত ট্র্যাফিক 443 বন্দরটি এসএসএল পোর্ট ব্যবহার করে?

আমার কনফিগারেশনটি নিম্নরূপ:

ল্যাপটপে স্টান্নেল:

[openvpn]
# Set sTunnel to be in client mode (defaults to server)
client = yes  
# Port to locally connect to
accept = 127.0.0.1:1194  
# Remote server for sTunnel to connect to
connect = REMOTE_SERVER_IP:443

ল্যাপটপে ওপেনভিপিএন কনফিগ করুন:

client
dev tun
proto tcp
remote 127.0.0.1 1194
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun

সার্ভারে স্ট্যানেল কনফিগ:

sslVersion = all
options = NO_SSLv2
;chroot = /var/lib/stunnel4/
; PID is created inside the chroot jail
pid = /stunnel4.pid
; Debugging stuff (may useful for troubleshooting)
 debug = 7
 output = /var/log/stunnel4/stunnel4.log
setuid = root
setgid = root
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
compression = zlib
[openvpn]
accept = REMOTE_SERVER_IP:443
connect = REMOTE_SERVER_IP:11440
cert=/etc/stunnel/server.pem
key=/etc/stunnel/server.key

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

local REMOTE_SERVER_IP
port 11440
proto tcp

ভিপিএনগুলির সাথে নতুন দিকগুলি শেখার চেষ্টা করা হচ্ছে এবং বিশ্লেষণ Ect সহ নেটওয়ার্ক প্রোটোকল বোঝার ...
জেসন

2
আপনার ল্যাপটপে ওয়্যারশার্ক দিয়ে চলার সাথে আপনি দ্বিতীয় প্রশ্নের উত্তর দিতে পারেন এবং সম্ভবত পথে আরও অনেক কিছু শিখতে পারেন
অ্যালেক ইস্তমিন

আপনার টিএলএস টানেলের ( সার্ভার সাইড এবং ক্লায়েন্ট সাইড) সাধারণ আক্রমণগুলি এড়ানোর জন্য আপনার সম্ভবত টিএলএস সংক্ষেপন (সিআরআইএম এর কারণে) অক্ষম করা উচিত এবং টিএলএস প্রোটোকল এবং ক্রিপটোসুইটগুলির সংখ্যা সীমিত করা উচিত নয় যদি আপনি সত্যিকার অর্থে এটি ব্যবহার করতে চান দুনিয়া।
ysdx

আপনি এসএসএল / টিএলএসের জন্য অন্যান্য বন্দর ব্যবহার করতে পারেন। এমনকি এটি এসসিটিপি এবং আইপিভি 6 এর মাধ্যমেও করি।
স্কেপেরেন

উত্তর:


22

টিপিএসের ওপেনভিপিএন

আপনার ভিপিএন পরিবহন প্রোটোকল হিসাবে টিসিপি ব্যবহার করছে। টানেল উদাহরণটি টিসিএস / টিসিপিতে টিসিপি স্ট্রিমের বিষয়বস্তু আবদ্ধ করতে ব্যবহৃত হয়। আপনি এই প্রোটোকল স্ট্যাক পাবেন:

[আইপি] <------------------------> [আইপি]
[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]
            [টিএলএস] <~~~~~> [টিএলএস]
[টিসিপি] <-> [টিসিপি] <-----> [টিসিপি] <-> [টিসিপি]
[আইপি] <-> [আইপি] <-----> [আইপি] <-> [আইপি]
[] [] [] []
 সার্ভার এইচটিটিপিএস প্রক্স স্ট্যান্ডেল ক্লায়েন্ট

আপনি কি HTTP সংযোগ পদ্ধতির বিস্তারিত বলতে পারেন? এটি সেট আপ করার জন্য আমি কোথায় গাইড পেতে পারি?
কনটেক্সটিফাই করুন

kobtextify: ওপেনভিপিএন / এইচটিটিপি_কননেট / টিএলএস এর সম্ভাব্য বাস্তবায়ন সম্পর্কে কিছু বিশদ যুক্ত করেছে।
ysdx

ধন্যবাদ! ওয়েব সার্ভার বা স্কুইড অংশটি কেমন হবে?
কনটেক্সটিফাই করুন

আমি অনুমান করি «acl VPN_SERVER dstdomain vpn.example.com« l acl VPN_PORT পোর্টসমূহ 1194 «l acl সংযোগ পদ্ধতি কানেক্ট করা» «http_access VPN_SERVER VPN_PORT সংযোগ allow সমস্ত পোস্ট অস্বীকার করুন»
ysdx

4

ysdx এর উত্তর দুর্দান্ত, এবং কীভাবে ট্র্যাফিকটি তারের দিকে দেখবে তা খুব সুন্দরভাবে বর্ণনা করেছে।

বামে উল্লেখ না করা হয়েছে, ট্র্যাফিক বিশ্লেষণ অ্যাপ্লিকেশনগুলি সনাক্তকরণের দিকে অনেক বেশি এগিয়ে যেতে পারে।

আসুন ধরে নেওয়া যাক আপনার ওপেনভিপিএন সংযোগটি কেবল তারের https সংযোগের মতো দেখায়, তাই কোনও আক্রমণকারী বাইট স্ট্রিমটি পড়তে পারে না এবং এটি কী ধরণের সংযোগ তা জানতে পারে না।

একটি সাধারণ https সংযোগ খুব বেশি ভয়ঙ্করভাবে বাঁচবে না। হতে পারে আপনার ব্রাউজার কোনও সংযোগ আপনার মেল সার্ভারের জন্য উন্মুক্ত রাখে, আমি জানি না। যদিও সাধারণভাবে, প্রচুর বিবিধ দূরবর্তী সার্ভারের সাথে তুলনামূলকভাবে সংক্ষিপ্ত সংযোগ থাকবে।

ওটিওএইচ, ওপেনভিপিএন সংযোগটি ঘন্টা বা দিনের জন্য বেঁচে থাকতে পারে এবং ওপেনভিএনএন সার্ভারে প্রচুর ডেটা প্রেরণ করবে।

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


2
হ্যাঁ. আরও কী, আমার ধারণা, ট্র্যাফিকের আকার (যেমন এটির "বার্সনেস") দেখতে পাওয়া সম্ভব এবং এটি একটি স্ট্যান্ডার্ড এইচটিটিপি / টিএলএস, আইএমএপি / টিএলএস, পপ / টিএলএস, ওপেনভিপিএন / টিএলএসের সাথে তুলনা করা সম্ভব। আপনি ট্র্যাফিকের সেই প্রোফাইলগুলির সাথে প্রদত্ত টিএলএস ট্র্যাফিককে শ্রেণিবদ্ধ করার চেষ্টা করতে পারেন এবং আপনার টিএলএস সংযোগে কীভাবে ট্র্যাফিক এনক্যাপুলেটেড করা হয়েছে তা সম্পর্কে ধারণা থাকতে পারে।
ysdx
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.