এসএসএল সহ ওয়েবস্কট


115

এইচটিটিপিএস সহ ওয়েবস্কিট থাকা কি সম্ভব?

এইচটিটিপিএস-এ স্যুইচ করার সময়, আমার ওয়েবসকেট একটি সুরক্ষা ত্রুটি প্রদান করে এবং নিয়মিত এইচটিটিপি সঙ্গে নিখুঁতভাবে কাজ করে।

নীচে, একটি স্নিপেট;

socket = new WebSocket("ws://my_www:1235"); 

আমার খারাপ, আমি বুঝতে পেরেছিলাম যে আমি যে আকাশের সকেট সার্ভারটি ব্যবহার করছি তা নিরাপদ নয়, ফ্ল্যাশ.net.সিকিউরসকেট ব্যবহার করতে আমাকে পুনরায় লিখতে হবে ...
এরিক

উত্তর:


170

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


এটাই আমার আছে তবে আমি বুঝতে পেরেছিলাম যে আমি যে আকাশের সকেট সার্ভারটি ব্যবহার করছি সেটি নিরাপদ নয়, ফ্ল্যাশ.net ব্যবহার করতে আমাকে আবার লিখতে হবে ecসিকিউরসকেট ...
এরিক

ফ্ল্যাশটিরও মারাত্মক সমস্যা রয়েছে ... আপনি কি ওয়েবস্কট সার্ভার তৈরি করছেন (যদি তাই হয় তবে কেন), বা আপনি কোনও অ্যাপ তৈরি করছেন?
পিটার মোসকোভিটস

1
আমার একটি এআইআর সকেট সার্ভার হ্যাঁ চলছে।
এরিক

সুতরাং পৃষ্ঠাটি এইচটিটিপি লোড না করা হলে ডাব্লুএসএস কীভাবে নির্বাচন করবেন?
অ্যানাটোলি টেকটোনিক

29

আপনি HTTPS- র মাধ্যমে ওয়েবসকেটগুলি ব্যবহার করতে পারবেন না, তবে আপনি টিএলএসের মাধ্যমে ওয়েবসকেটগুলি ব্যবহার করতে পারেন (HTTPS টিএলএসের চেয়ে বেশি HTTP)। ইউআরআইতে কেবল "wss: //" ব্যবহার করুন।

আমি বিশ্বাস করি ফায়ারফক্সের সাম্প্রতিক সংস্করণ আপনাকে কোনও এইচটিটিপিএস পৃষ্ঠা থেকে নন-টিএলএস ওয়েবসকেট ব্যবহার করতে দেবে না, তবে বিপরীতে কোনও সমস্যা হওয়া উচিত নয়।


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

@ মুয়াজ আপনার ওয়েবসকেট সার্ভারটি ডাব্লুএসএস মোডে চলমান হওয়া উচিত এবং আপনার ওয়েবসারভার হিসাবে একই এসএসএল শংসাপত্র / কীগুলি দিয়ে লোড করা উচিত যা ওয়েবসকেট সার্ভারের সাথে সংযোগ দেওয়ার চেষ্টা করা আপনার মূল ওয়েব পৃষ্ঠাগুলি সরবরাহ করে।
কনক

4
ধন্যবাদ. BTW, আমি এটা প্রক্সী (Apache ব্যবহার করে) থেকে অনুরোধ দ্বারা মীমাংসিত করেছি wss://করতে ws://। সুতরাং, আমি এটি ব্যবহার করি wss://ws.domain.comএবং অ্যাপাচি এতে প্রক্সি প্রয়োগ করি এবং যেখানে ডাব্লুএস সার্ভার চলছে সেই অনুরোধটি পুনর্নির্দেশ করুন। উদাহরণ: ws://10.12.23.45:5641/server.php। এবং আমি জানি এটির একটি খুব খারাপ সমাধান - যদিও এটি আমার পক্ষে কাজ করে। আপনি যদি আমাকে অ্যাপাচি কনফিগারেশনের মাধ্যমে গাইড করেন তবে আমি আপনার সহায়তার প্রশংসা করব। যেমন: কোথায় রাখবেন .certধন্যবাদ ইত্যাদি!
মুয়াজ

@ মুয়াজ দুঃখিত, অ্যাপাচি কনফিগারেশনটি আমি নিজে গুগল করা ছাড়া জানি না।
কনক

21

1 অতিরিক্ত ক্যাভিয়েট (কানাকা / পিটারের উত্তর ছাড়াও): আপনি যদি ডাব্লুএসএস ব্যবহার করেন এবং সার্ভার শংসাপত্রটি ব্রাউজারের কাছে গ্রহণযোগ্য না হয় তবে আপনি কোনও ব্রাউজার রেন্ডার ডায়ালগটি পেতে পারেন না (যেমন এটি ওয়েব পৃষ্ঠাগুলির ক্ষেত্রে ঘটে)। এটি হ'ল ওয়েবসকেটগুলিকে তথাকথিত "সাবসোর্স" হিসাবে বিবেচনা করা হয় এবং শংসাপত্র গ্রহণ / সুরক্ষা ব্যতিক্রম / যাই হোক না কেন ডায়ালগগুলি সাবসোর্সগুলির জন্য রেন্ডার করা হয় না।


এমনকি যদি এটি এইচটিটিপিএসের জন্য ব্যবহৃত একইর মতো সার্টিফিকেট হয়?
ভেকাহ

1
"ব্রাউজার রেন্ডার ডায়ালগ" বলতে কী বোঝ? পছন্দ alert()?
ইভান পেরেভেজেন্টসেভ

2
ব্রাউজারের মধ্যে মূলত উদ্ভূত ডায়ালগগুলি (কোনও পৃষ্ঠা নয়)। "এই শংসাপত্রটি অবৈধ, আপনি কি চালিয়ে যেতে চান?"
ওভারস্টেট

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