diff options
Diffstat (limited to 'files/bn/archive/b2g_os/security')
4 files changed, 359 insertions, 0 deletions
diff --git a/files/bn/archive/b2g_os/security/application_security/index.html b/files/bn/archive/b2g_os/security/application_security/index.html new file mode 100644 index 0000000000..6bc0456f8b --- /dev/null +++ b/files/bn/archive/b2g_os/security/application_security/index.html @@ -0,0 +1,135 @@ +--- +title: অ্যাপ্লিকেশনের নিরাপত্তা +slug: Archive/B2G_OS/Security/Application_security +tags: + - Apps + - Firefox OS + - Guide + - Intermediate + - Mobile + - Security + - অ্যাপ + - গাইড + - নিরাপত্তা + - ফায়ারফক্স ওএস + - মোবাইল +translation_of: Archive/B2G_OS/Security/Application_security +--- +<div class="summary"> + <p>এই আর্টিকেলে ফায়ারফক্স ওএস অ্যাপ্লিকেশনের নিরাপত্তা মডেল নিয়ে বিস্তারিত আলোচনা করা হয়েছে।</p> +</div> +<p>ওয়েব অ্যাপের নিরাপত্তা নিয়ন্ত্রণের জন্য ফায়ারফক্স ওএস প্রধানত যা করেঃ</p> +<ul> + <li>ব্রাউজারে গিয়ে কোন ওয়েব পেইজ ব্রাউজ করে দেখা ওয়েব ওয়াপ নয়! বরং এদের সরাসরিভাবে ইন্সটল করতে হবে আর ব্যবহার করার জন্য চালু করতে হবে। ব্যবহারের আগে এদের সরাসরি ইন্সটল করতে হবে। ব্যবহারকারী'র নিরাপত্তা নিশ্চিত করার জন্য ওএস এর নিরাপত্তা মডেল অ্যাপ আপডেট এবং মুছে ফেলা নিয়ন্ত্রণ করে।</li> + <li>নতুন নতুন ওয়েব এপিআই ব্যবহার করতে চাইলে সকল অ্যাপ কে আগে থেকেই ঘোষণা করতে হবে, অ্যাপ ইন্সটল করার সময়ই ব্যবহারকারী দেখতে পারবেন তার অ্যাপ কি কি অনুমতি চাইছে। আর যেসব অ্যাপ গুরুত্বপূর্ণ APIগুলো ব্যবহার করতে চায় তাদের বিশেষ কিছু প্রয়োজনীয়তা পূরণ করতে হবে, এবং মার্কেটপ্লেসে জমা দেওয়ার পর সেগুলো রিভিউ এবং সাইন করা বাধ্যতামূলক।</li> + <li>ওয়েব অ্যাপগুলোকে "স্যান্ডবক্স" করা হয় মানে তারা শুধু নিজেদের রিসোর্স (কুকি, অফলাইন স্টোরেজ IndexedDB ডেটাবেইজ এবং অন্যান্য) ই ব্যবহার করতে পারবে। যদি দুটি আলাদা অ্যাপও একই URL লোড করতে চায় তাহলেও URL টি, দুটি আলাদা অ্যাপ এর জন্য ভিন্ন (একই অরিজিন বা উৎসের নয়) বলে বিবেচিত হবে, যেহেতু url টি দুটি পৃথক অ্যাপ থেকে লোড করা হচ্ছে।</li> +</ul> +<h3 id="অ্যাপের_প্রকারভেদ_(টাইপ)">অ্যাপের প্রকারভেদ (টাইপ)</h3> +<p>ফায়ারফক্স ওএস এ তিন ধরণের ওয়েব অ্যাপ আছেঃ "<strong>web</strong>", "<strong>privileged</strong>" এবং "<strong>certified</strong>"। অ্যাপটি কোন প্রকারের সেটি তার <a href="/bn-BD/docs/Apps/Manifest" title="/en-US/docs/Apps/Manifest">মেনিফেস্ট ফাইলে</a> বলে দিতে হয় এবং কোন প্রকারের তার ওপর ভিত্তি করেই অ্যাপটি কি কি অনুমতি পাবে তা নির্ধারণ করা হয়।</p> +<ul> + <li><strong>ওয়েব অ্যাপঃ </strong>বেশিরভাগ অ্যাপই (যেগুলো তৃতীয় পক্ষ তৈরি করে) "web" অ্যাপ। এই টাইপটি হচ্ছে ডিফল্ট। এই টাইপের অ্যাপ হলে সাধারণ ওয়েবে যা যা অনুমতি থাকে, সেগুলো ছাড়া বিশেষ কোন অনুমতি পাবে না। কোন যাচাই ছাড়াই যেকোন ওয়েবসাইট থেকে ইন্সটল করা যাবে। অ্যাপটি জিপ করে <a href="/bn-BD/docs/Web/Apps/Packaged_apps" title="/en-US/docs/Web/Apps/Packaged_apps">প্যাকেজ</a> করেও দিতে পারবেন কিন্তু এর ফলে সাধারণ অনুমতিগুলো ছাড়া বাড়তি কোন অনুমতি পাওয়া যাবে না।</li> + <li><strong>প্রিভিলিজড বা সুবিধাভোগী অ্যাপঃ</strong> এসব অ্যাপের বাড়তি অনেক কিছু করার অনুমতি থাকে, তাই এসব <em>সুবিধাভোগী</em> অ্যাপগুলো নিয়ন্ত্রণ করার জন্য মার্কেটপ্লেস থেকে সাইন করা থাকতে হবে।</li> + <li><strong>সারটিফায়েড বা প্রত্যয়িত অ্যাপঃ </strong>এসব প্রত্যয়িত অ্যাপ এখন শুধুমাত্র আগে থেকেই ডিভাইসে OEM এর ইচ্ছামত ইন্সটল করে দেওয়া যাবে, ব্যবহারকারী নিজের ইচ্ছায় ইন্সটল করতে পারবেন না নিজের নিরাপত্তার খাতিরেই।</li> +</ul> +<div class="note"> + <p><strong>খেয়াল করুনঃ</strong> এই তিন ধরণের অ্যাপ সম্পর্কে আরও জানতে <a href="/en-US/docs/Apps/Manifest#type" title="/en-US/docs/Apps/Manifest#type">অ্যাপ মেনিফেস্ট</a> পাতাটি দেখুন।</p> +</div> +<h3 id="অ্যাপ_সরবরাহ">অ্যাপ সরবরাহ</h3> +<p>ফায়ারফক্স ওএস ব্যবহারকারীদের ডিভাইসে আপনার অ্যাপ দুইভাবে পৌঁছে দিতে পারেনঃ কোন ওয়েবসাইটে রাখার মাধ্যমে (এদের <em>হোস্টেড</em> বলা হয়) অথবা অ্যাপের সব ফাইল একসাথে জিপ বা প্যাকেজ করে (এদের <em>প্যাকেজড</em> বলা হয়)। সাধারণ ওয়েব অ্যাপ এই দুটি পদ্ধতির যেকোনটি ব্যবহার করে সরবরাহ করা যাবে, কিন্তু সুবিধাভোগী আর প্রত্যয়িত অ্যাপ শুধুমাত্র প্যাকেজড হিসেবেই সরবরাহ করতে হবে।</p> +<h4 id="হোস্ট_করা_অ্যাপ"><span class="mw-headline" id="Hosted_apps">হোস্ট করা অ্যাপ </span></h4> +<p>হোস্ট করা অ্যাপ, ডেভেলপারের ওয়েব সাইটে হোস্ট বা আপলোড করা একটি <a class="external text" href="/bn-BD/docs/Apps/Manifest" rel="nofollow">অ্যাপ্লিকেশন বৃত্তান্ত বা মেনিফেস্ট </a> ফাইল ছাড়া আর কিছুই না। এই ফাইলে বলা থাকে অ্যাপের index ফাইল (বা ইন্সটল হবে কোথা থেকে) কোথায়। এছাড়া প্রায়ই মেনিফেস্ট ফাইলে অ্যাপটি'র appcache বৃতান্ত ফাইলেরও ঠিকানা দেওয়া থাকে, যা ব্যবহার করে অ্যাপটি যাতে অফলাইনেও চলে এবং দ্রুত চালু করা যায়, সেই সুবিধা দেওয়া যায়। তবে এটা ঐচ্ছিক। নিরাপত্তার কথা ভাবলে হোস্ট করা অ্যাপ অন্য সব ওয়েবসাইটের মতই আচরণ করে। হোস্টেড অ্যাপ যখন কোন URL দেখায়, তখন URL টি ব্রাউজারে দেখলে যেসব সুবিধা পেতেন, অ্যাপ থেকেও হুবুহু একই সুবিধা পাবেন, বাড়তি কোন কিছুই যোগ বা বিয়োগ হয় না। তাই ওয়েবসাইটে এক পাতা থেকে অন্য পাতা বা রিসোর্সে (ছবি ইত্যাদি) যেভাবে লিঙ্ক করতেন, সাধারণ হোস্টেড ওয়েব অ্যাপেও হুবুহু একই ভাবে লিঙ্ক করতে হবে।</p> +<h4 id="প্যাকেজড_অ্যাপ"><span class="mw-headline" id="Packaged_apps">প্যাকেজড অ্যাপ</span></h4> +<p>সেসব ওপেন-ওয়েব অ্যাপকে<strong> প্যাকেজড অ্যাপ</strong> বলা হয় যাদের সব রিসোর্স বা ফাইল/কোড (HTML, CSS, JavaScript, অ্যাপ মেনিফেস্ট এবং অন্যান্য ফাইল) একটি zip ফাইলে ব্যবহারকারীর কাছে পৌঁছে দেওয়া হয়, কোন ওয়েব সার্ভারে আপলোড করার পরিবর্তে। বিস্তারিত পাবেন<a href="/bn-BD/docs/Apps/Packaged_apps" title="Apps/Packaged_apps"> প্যাকেজড অ্যাপ</a> পাতায়।</p> +<h3 id="অ্যাপ_ইন্সটল_করা"><strong>অ্যাপ ইন্সটল করা</strong></h3> +<p><a href="/bn-BD/docs/JavaScript_API" title="/en-US/docs/JavaScript_API">অ্যাপ জাভাস্ক্রিপ্ট API</a> ব্যবহার করে অ্যাপ ইন্সটল করা হয়ঃ</p> +<ul> + <li>হোস্ট করা অ্যাপঃ <code>navigator.mozApps.<a href="/en-US/docs/Web/API/Apps.install" title="/en-US/docs/Web/API/Apps.install">install</a>(manifestURL)</code> ফাংশনটি কল করে হোস্টেড অ্যাপ ইন্সটল করা হয়, যেখানে manifestURL অ্যাপের ঠিকানা বলে দেওয়া URL। বিস্তারিত জানার জন্য <a href="/bn-BD/docs/DOM/Apps.install">অ্যাপ ইন্সটল করা দেখুন।</a></li> + <li>প্যাকেজড অ্যাপঃ <code>navigator.mozApps.<a href="/en-US/docs/Web/API/Apps.installPackage" title="/en-US/docs/Web/API/Apps.installPackage">installPackage</a>(packageURL)</code>ফাংশন কল করে অ্যাপ ইন্সটল করা হয়। প্যাকেজড অ্যাপের বেলায়, প্যাকেজের ভেতরেই প্রধান মেনিফেস্ট ফাইলটি দেওয়া থাকে, সাইন করা অবস্থায়। এছাড়া দ্বিতীয় আরেকটি "ছোট্ট মেনিফেস্ট" ফাইল থাকে, ইন্সটল প্রক্রিয়া শুরু করার জন্য। আরও তথ্যের জন্য <a href="/en-US/docs/DOM/Apps.installPackage">প্যাকেজড অ্যাপ ইন্সটল করা</a> এবং <a href="/en-US/docs/Apps/Packaged_apps" title="Apps/Packaged_apps">প্যাকেজড অ্যাপ</a> দেখুন।</li> +</ul> +<p>কোন অ্যাপ যে আসলেই ওয়েব অ্যাপ হিসেবে ইন্সটল হতে চায় - এটা নিশ্চিত করাটা জরুরী। এজন্য যেকোন ওয়েবসাইট-ই যেন কোন একটা মেনিফেস্ট ফাইল হোস্ট করে আমাদের ফাকি দিতে না পারে সেজন্য মেনিফেস্ট ফাইলের বিশেষ ধরনের mime-type সহ পাঠাতে হবেঃ <code>application/x-web-app-manifest+json</code>। তবে যদি যে ওয়েবসাইট অ্যাপ ইন্সটল করাতে চায় তার অরিজিন আর অ্যাপের মেনিফেস্টের অরিজিন একই হয় তাহলে এই শর্ত শিথিলযোগ্য।</p> +<h3 id="আপডেট_করা"><span class="mw-headline" id="Updates">আপডেট করা</span></h3> +<p><a href="/en-US/docs/Apps/Updating_apps" title="Apps/Updating_apps">অ্যাপ আপডেট করা</a> পাতায় জানতে পারবেন কিভাবে আপনার অ্যাপ আপডেট করানো সম্ভব।</p> +<h2 id="অনুমতিসমূহ">অনুমতিসমূহ</h2> +<p>সাধারণ ওয়েবসাইটের যেসব কাজ করার অনুমতি থাকে অ্যাপের বেলায় তার থেকে বেশি অনুমতি দেওয়া সম্ভব। তবে ডিফল্টভাবে সাধারণ ওয়েবসাইট এবং ওয়েব অ্যাপের একই লেভেলের অনুমতি থাকে। আরও বেশি মাত্রার অনুমতি পেতে চাইলে কোন অ্যাপকে সেইসব অনুমতির তালিকা মেনিফেস্ট ফাইলে বলে দিতে হবে।</p> +<h3 id="মেনিফেস্টে_ঘোষণা_করা">মেনিফেস্টে ঘোষণা করা</h3> +<p>প্রতিটি অতিরিক্ত কাজ করার অনুমতি মেনিফেস্ট ফাইলে বলে দিতে হবে, সাথে আপনার ব্যবহারকারীরা যাতে জানতে পারে কেন আপনার বিশেষ অনুমতিটি লাগছে, সেটাও ব্যাখ্যা করতে হবে। যেমন কোন অ্যাপ যদি <a href="/en-US/docs/Web/API/window.navigator.geolocation" title="/en-US/docs/Web/API/window.navigator.geolocation">navigator.geolocation</a> API ব্যবহার করতে চায় তাহলে মেনিফেস্ট ফাইলে নিচের মত বলতে হবেঃ</p> +<pre class="brush: html">"permissions": { + "geolocation":{ +<code class="language-js"><span class="token string"> "description"</span><span class="token punctuation">:</span> <span class="token string">"Required for autocompletion in the share screen"</span><span class="token punctuation">,</span></code> + } +}, +</pre> +<p>এর ফলে অ্যাপটি geolocation অনুমতি চাওয়ার জন্য প্রম্পট করবে, অন্যান্য ওয়েব পেইজের মতই। <a href="/en-US/docs/Apps/Manifest" title="Apps/Manifest">অ্যাপ মেনিফেস্ট</a> পাতায় বিস্তারিত দেখুন।</p> +<div class="note"> + <p><strong>খেয়াল করুনঃ</strong> বর্তমানে ব্যবহারকারীর কাছে অনুমতির ব্যখ্যাটি দেখানো হয়না। <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=823385" title="https://bugzilla.mozilla.org/show_bug.cgi?id=823385">bug 823385</a> দেখুন।</p> +</div> +<h3 id="অনুমতি_দেওয়া">অনুমতি দেওয়া</h3> +<p>যখন মেনিফেস্ট ফাইলে কোন অতিরিক্ত অনুমতি চাওয়া হয়, তখন অনুমতিটি <em>allow</em> অথবা <em>prompt</em> এই দুইটি'র কোন একটি হয়, কোন অনুমতি চাওয়া হচ্ছে তার ওপর নির্ভর করে। Allow ধরণের অনুমতিটি ব্যবহারকারীর কাছে অনুমোদন চায় না, মেনিফেস্টে থাকলেই অনুমতি পেয়ে যায়। আর prompt ধরণের অনুমতি গুলো প্রথবমার ব্যবহারকারীর কাছে দেখানো হবে, এবং ব্যবহারকারী অনুমোদন করলেই অনুমতিটি কার্যকর হবে। সাধারণত গোপনীয়তা জনিত বিশেষ অনুমতিগুলোর ব্যাপারেই ব্যবহারকারীর কাছে জানতে চাওয়া হয় সে অনুমতিটি অনুমোদন করছে কিনা, আর এটা শুধুমাত্র প্রথমবারে অনুমতিটি ব্যবহারের সময়ই জানতে চাওয়া হয়। যেমন, ডিভাইসের কন্টাক্ট লিস্ট ব্যবহার করতে চাইলে এটা আগে ব্যবহারকারীর কাছে জানতে চাওয়া হবে। কিন্তু যদি raw TCP কানেকশন তৈরি করতে চান তাহলে ধরে নেওয়া হয় এতে ব্যবহারকারীর কোন আপত্তি থাকবে না। ব্যবহারকারীর নিরাপত্তা নিশ্চিত করতে allow ধরণের অনুমতিগুলো মার্কেটপ্লেসে যাচাই করে দেখা হয়।</p> +<h3 id="অনুমতি_বাতিল_করা">অনুমতি বাতিল করা</h3> +<p>ব্যবহারকারীরা যেকোন সময় prompt ধরণের অনুমতিগুলোর ব্যাপারে তাদের মতবদল করতে পারেন এবং ফায়ারফক্স ওএস সেটিংস অ্যাপ ব্যবহার করে আপনার অ্যাপের, এসব অনুমতি বাতিল করতে পারেন । তবে Allow ধরনের অনুমতিগুলো ব্যবহারকারীরা পরিবর্তন করতে পারেন না।</p> +<h2 id="ওয়েব_অ্যাপ_স্যান্ডবক্স">ওয়েব অ্যাপ স্যান্ডবক্স</h2> +<h3 id="প্রতিটি_অ্যাপের_নিজস্ব_তথ্য_রাখা"><span class="mw-headline" id="Data_stored_per_app">প্রতিটি অ্যাপের নিজস্ব তথ্য রাখা </span></h3> +<p>প্রতিটি অ্যাপ নিজের আলাদা স্যান্ডবক্সে চলে, মানে এক অ্যাপের জমা করা কোন তথ্য-ই অন্য আরেকটি অ্যাপ দেখতে পারবে না। এর মধ্যে কুকি'র তথ্য, localStorage তথ্য, indexedDB তথ্য এবং সাইটের অনুমতি সবকিছুই পরে।</p> +<p><img alt="A diagram showing three Firefox OS apps all open is separate sandboxes, so none of them can affect each other." src="https://mdn.mozillademos.org/files/7091/sandbox.png" style="width: 1040px; height: 437px; display: block; margin: 0px auto;"></p> +<p>এর মানে হল যদি কোন ব্যবহারকারী দুটি অ্যাপ "ক" এবং "খ" ইন্সটল করে তাহলে তাদের প্রত্যেকের নিজস্ব কুকি, ডিভাইসের তথ্য এবং অনুমতি থাকবে। যদি দুটি অ্যাপ এমন {{ htmlelement("iframe") }} খোলে যা একই অরিজিনে পয়েন্ট করা, তাহলেও ওপরের কথাটি প্রযোজ্য। যেমন, যদি ক এবং খ দুটি অ্যাপই এমন <code><iframe></code> খোলে যা "<a class="external free" href="http://www.mozilla.org" rel="nofollow">http://www.mozilla.org</a>" এ পয়েন্ট করা, তাহলে দুটি অ্যাপই ওয়েবসাইটটি দেখাবে, তবে দুটি অ্যাপের কুকি এবং অন্যান্য তথ্য সম্পূর্ণ আলাদা আলাদা থাকবে।</p> +<p>এর মানে হল যদি ব্যবহারকারী "ক" অ্যাপে ফেসুবকে লগইন করেন, "খ" অ্যাপে এর কোন প্রভাবই থাকবে না। ফেসবুকে লগইন করার সময় ক অ্যাপ যেসব কুকি সংরক্ষণ করে, তা শুধুমাত্র ক অ্যাপ-ই দেখতে পাবে। তাই যদি এখন খ অ্যাপটি <code><iframe></code> ব্যবহার করে ফেসবুক খোলে তাহলে এটি ক অ্যাপের কুকিগুলো দেখতে পাবে না, তাই ব্যবহারকারী'র ফেসবুক অ্যাকাউন্ট দেখানোর বদলে খ অ্যাপটি ফেসুবকের লগইন পাতা দেখাবে।</p> +<h3 id="অ্যাপগুলো_একটি_অন্যটিকে_চালু_করতে_পারে_না"><span class="mw-headline" id="Apps_can.27t_open_each_other">অ্যাপগুলো একটি অন্যটিকে চালু করতে পারে না</span></h3> +<p>এর মানে আইফ্রেম ব্যবহার করে একটি অ্যাপ অন্য একটি অ্যাপ দেখাতে পারবে না। যদি ক অ্যাপ <code><iframe></code> ব্যবহার করে খ অ্যাপের URL, <code>src</code> এর মাণ হিসেবে দিয়ে দেয়, আসলে <code><iframe></code> এ খ অ্যাপটি চালু হবে না। শুধুমাত্র ঐ URL এর ওয়েবসাইট-টি সাধারণভাবে দেখানো হবে। খ অ্যাপের কুকি ব্যবহার করতে পারবে না এবং এমনভাবে আচরণ করবে যেন খ অ্যাপটি ডিভাইসে ইন্সটল করাই হয়নি।</p> +<p>প্যাকেজড অ্যাপের (নিচে বিস্তারিত আছে) বেলায়ও ওপরের কথা সত্য। যদি ক অ্যাপ খ নামের একটি প্যাকেজড অ্যাপকে <code><iframe></code> ব্যবহার করে লোড করতে চায় (খ অ্যাপের <code>app://</code> URL ব্যবহার করে), তাহলে এটি সরাসরি ব্যর্থ হবে। ৪০৪ নাকি অন্য কোন ত্রুটি দেখানো হবে তা এখনো ঠিক করা হয়নি, তবে ত্রুটি হিসেবে দেখানো হবে এটা নিশ্চিত। এবং খ অ্যাপটি ডিভাইসে থাকুক বা না থাকুক ক অ্যাপ কোনভাবেই খ অ্যাপকে লোড করতে পারবে না, তাই ক অ্যাপ জানতেও পারবে না ডিভাইসে খ অ্যাপটি ইন্সটল করা আছে কি নাই।</p> +<p>একই জিনিস ঘটবে যদি ক অ্যাপের top-level frame এ খ অ্যাপের URL লোড করতে চাওয়া হয়। আমরা জানি কোন ফ্রেমে কোন অ্যাপ চলছে, তাই ঐ ফ্রেমে অন্য কোন অ্যাপ দেখাতে চাইলে ওপরে যেভাবে বলা হয়েছে সেভাবে ত্রুটি দেখানো হবে।</p> +<h3 id="উদ্দেশ্য"><span class="mw-headline" id="Motivation">উদ্দেশ্য</span></h3> +<p>ওপরের পদ্ধতির সুবিধা অসুবিধা দুইটিই আছে। একটা অসুবিধা হল যদি ব্যবহারকারী একই ওয়েবসাইট ভিন্ন ভিন্ন অ্যাপের মাধ্যমে ব্যবহার করেন, তাহলে ঐ ওয়েবসাইটের জন্য প্রত্যেকটি অ্যাপে আলাদা আলাদা ভাবে লগইন করতে হবে। এছাড়া যদি কোন ওয়েবসাইট ডিভাইসে তথ্য জমা রাখতে চায়, তাহলে প্রত্যেকটি অ্যাপের জন্যই ঐ ওয়েবসাইটটি আলাদা আলাদা ভাবে একই তথ্য জমা করতে থাকবে। তাই কোন ওয়েবসাইট যদি অনেক তথ্য জমা করতে যায়, তাহলে সমস্যা হতে পারে।</p> +<p>তবে আসল সুবিধা হল ওপরের মডেলটি বেশ নির্ভরযোগ্য। এমনটা কিছুতেই হওয়া সম্ভব না যে বিভিন্ন অ্যাপ, অন্য কোন তৃতীয় ওয়েবসাইট ব্যবহার করতে গিয়ে সমস্যা তৈরি করবে যে এক অ্যাপের জন্য অন্য অ্যাপ কাজ করা থামিয়ে দেবে। এছাড়া কোন অ্যাপ আনইন্সটল করলে অন্য অ্যাপের তথ্য হারিয়ে যাওয়ারও সম্ভাবনা থাকবে না। অথবা আনইন্সটল করা অ্যাপের ওপর নির্ভরশীলতার জন্য অন্য কোন অ্যাপ কাজ করা থামিয়ে দেবে এই সম্ভাবনাও থাকবে না।</p> +<p>এছাড়া বিশাল একটা নিরাপত্তাজনিত সুবিধা আছে। যেমন ধরি AwesomeSocial নামের কোন অ্যাপ ব্যবহার করে কেউ ফেসবুকে লগইন করেছেন। তাহলে তার আর SketchGame নামের কোন অ্যাপ নিয়ে এই দুশ্চিন্তা করতে হবে না যে অ্যাপটি ফেসবুকের কোন বাগ বা সীমাবদ্ধতা'র সুযোগ নিয়ে ব্যবহারকারী'র তথ্য হাতিয়ে নিতে পারে।</p> +<p>এছাড়া গোপনীয়তাজনিত ভাল সুবিধা আছে। ব্যবহারকারী নিশ্চিতে PoliticalPartyPlus নামের কোন অ্যাপ ইন্সটল করতে পারবেন এই দুশ্চিন্তা ছাড়া যে MegaCorpEmployeeApp নামের কোন অ্যাপ জানতে পারবে যে ব্যবহারকারী প্রথম অ্যাপটি ইন্সটল করেছেন কি না অথবা প্রথম অ্যাপের কোন তথ্য দ্বিতীয় অ্যাপতে পেয়ে যাবে কি না।</p> +<h3 id="স্যান্ডবক্সভিত্তিক_নিরাপত্তা_মডেল"><span class="mw-headline" id="Sandboxed_Permissions">স্যান্ডবক্সভিত্তিক নিরাপত্তা মডেল</span></h3> +<p>ওয়েবসাইটসমূহের তথ্যের মতই প্রতিটি অ্যাপের নিরাপত্তা তথ্যও স্যান্ডবক্স করা হয়। যদি অ্যাপ "ক" <a class="external free" href="http://maps.google.com" rel="nofollow">http://maps.google.com</a> সাইটের কোন পাতা লোড করে এবং পাতাটি geolocation সুবিধার অনুমতি চাওয়ার পর ব্যবহারকারী তার অনুমতি দিয়ে দেন, এবং বলে দেন যাতে এই অনুমতিটির ব্যাপারে আর জানতে না চাওয়া হয়। শুধু অ্যাপ ক - ই এই সাইটটিতে অনুমতি পেয়েছে। অন্য কোন অ্যাপ "খ" <a class="external free" href="http://maps.google.com" rel="nofollow">http://maps.google.com</a>, সাইটে গেলে নতুন করে অনুমতি নেওয়ার প্রয়োজন পড়বে।</p> +<p>আর সাধারণ ব্রাউজারে ব্যবহারের মতই একই অ্যাপে, কোন বিশেষ API বিভিন্ন সাইটে (অরিজিনে) ব্যবহার করতে চাইলে প্রত্যেক সাইটের জন্যই নতুন করে অনুমতি নিতে হবে। যদি "ক" অ্যাপ আইফ্রেমের ভেতর <a class="external free" href="http://maps.google.com" rel="nofollow">http://maps.google.com</a>, সাইট খুলে GeoLocation ব্যবহারের অনুমতি পায়, তাহলে একই ওয়াপ থেকেও <a href="http://docs.google.com"><span class="external free">http://docs.google.com</span></a> সাইটে গেলে এবং geolocation ব্যবহার করতে চাইলে নতুন করে অনুমতি লাগবে।</p> +<h3 id="ব্রাউজার_API_স্যান্ডবক্স">ব্রাউজার API স্যান্ডবক্স</h3> +<p>এছাড়াও যেসব অ্যাপ অনেক অনেক URL লোড করে, যেমন ব্রাউজারসমূহ, তাদের জন্য আমরা <em>browserContent ফ্ল্যাগ </em>রেখেছি। এই ফ্ল্যাগের সাহায্যে কোন অ্যাপ একটি নয়, বরং দুটি স্যান্ডবক্স ব্যবহার করেঃ একটি তার নিজের জন্য, অন্যটি সে যেসব "ওয়েব কন্টেন্ট" দেখায় তাদের জন্য। যেমনঃ</p> +<p>ধরা যাক MyBrowser অ্যাপটি <a class="external free" href="https://mybrowser.com" rel="nofollow">https://mybrowser.com</a> ডোমেইন থেকে লোড করা হয়েছে। এই ডোমেইন থেকে স্ক্রিপ্ট এবং অন্যান্য রিসোর্স ফাইল লোড করা হয়, এসব স্ক্রিপ্ট এবং রিসোর্স ডোমেইনটি'র <em>নিজস্ব</em>।</p> +<p>এখন, যদি এই অ্যাপের কোন পাতা <code><iframe mozbrowser></code> তৈরি করে, এই <code><iframe></code> এর জন্য নতুন স্যান্ডবক্স তৈরি এবং ব্যবহার করা হবে, যা কিনা অ্যাপটি'র নিজস্ব স্যান্ডবক্স থেকে ভিন্ন। যেমন, এই <code><iframe></code> টি যদি <a class="external free" href="https://mybrowser.com" rel="nofollow">https://mybrowser.com</a> লোড করে, তাহলে <code><iframe mozbrowser> </code>এর জন্য ভিন্ন কুকি এবং অন্যান্য সবকিছু ব্যবহার করা হবে। একইভাবে, <code><iframe mozbrowser></code> এর ভেতরের কন্টেন্ট অ্যাপটি'র নিজস্ব নয়, বরং ভিন্ন IndexedDB এবং localStorage ডেটাবেইজ ব্যবহার করবে।</p> +<p>যেমন, MyBrowser অ্যাপ যদি Google Maps নিয়ে কাজ করতে চায় অঞ্চলভিত্তিক ব্রাউজিং উপভোগ করার জন্য তাহলেও ওপরের কথা প্রযোজ্য। যদি অ্যাপটি <code><iframe></code> এ <a class="external free" href="http://maps.google.com" rel="nofollow">http://maps.google.com</a> লোড করে, এটি <a class="external free" href="http://maps.google.com" rel="nofollow">http://maps.google.com</a> ওয়েবসাইটের জন্য কিছু কুকি লোড করবে। এরপর যদি ব্যবহারকারী <code><iframe mozbrowser></code> এর ভেতর <a class="external free" href="http://maps.google.com" rel="nofollow">http://maps.google.com</a> এ যায়, তাহলে মূল অ্যাপের থেকে ভিন্ন কুকি এবং অনুমতি ব্যবহার করা হবে।</p> +<p>আরেকটি উদাহরণ যেখানে এটি উপকারী তা হল Yelp এর মত অ্যাপ। এধরণের অ্যাপে ব্যবহারকারী সরাসরি অ্যাপ থেকেই বিভিন্ন রেস্টুরেন্টের সাইটে যেতে পারেন। যদি <code><iframe mozbrowser></code> ব্যবহার করে রেস্টুরেন্টের সাইট লোড করা হয়, তাহলে মূল Yelp অ্যাপটি নিশ্চিন্ত থাকতে পারবে যে রেস্টুরেন্টের সাইটে কোন <code><iframe></code> দিয়ে যদি Yelp অ্যাপেই আবার পয়েন্ট করে দেয় (ধরি অ্যাপটি <a class="external free" href="http://yelp.com" rel="nofollow">http://yelp.com</a>), তাহলে রেস্টুরেন্টের সাইটটি তার আইফ্রেমে Yelp কে সাধারণ ওয়েবসাইট হিসেবেই পাবে, অ্যাপ হিসেবে নয়। যেহেতু মূল Yelp অ্যাপ তার তথ্য, কুকি রেস্টুরেন্টের সাইটের সাথে শেয়ার করবে না, তাই মূল অ্যাপ নিশ্চিন্ত থাকতে পারবে যে অন্য কোন ওয়েবসাইট একে আক্রমণ করছে না।</p> +<h2 id="অ্যাপ_নিরাপত্তা_-_সারমর্ম">অ্যাপ নিরাপত্তা - সারমর্ম</h2> +<p>নিচের সারণীতে বিভিন্ন ধরণের ফায়ারফক্স ওএস অ্যাপ নিয়ে একটি সারমর্ম দেওয়া হয়েছে এবং তাদের ফরম্যাট, ইন্সটল করার পদ্ধতি, এবং হালনাগাদ করার পদ্ধতি লিপিবদ্ধ করা হয়েছে।</p> +<table> + <caption> + ওয়েব অ্যাপের প্রকারভেদ</caption> + <thead> + <tr> + <th scope="col">প্রকার</th> + <th scope="col">সরবরাহ করা</th> + <th scope="col">অনুমতি মডেল</th> + <th scope="col">ইন্সটল করা</th> + <th scope="col">আপডেট করা</th> + </tr> + </thead> + <tbody> + <tr> + <td>ওয়েব (Web)</td> + <td>হোস্ট করা অথবা প্যাকেজড</td> + <td>অপেক্ষাকৃত কম সংবেদনশীল অনুমতিগুলো, যেগুলো যাচাই করা হয়নি এমন ওয়েব কন্টেন্ট ব্যবহার করতে পারলেও ক্ষতি হবে না।</td> + <td>যেকোন জায়গা থেকে</td> + <td>অ্যাপটি কোথা থেকে ইন্সটল করা হয়েছিল এবং কিভাবে সরবরাহ করা হয়েছিল তার ওপর ভিত্তি করে ব্যবহারকারী'র কাছে স্বচ্ছভাবেই আপডেট দেওয়া বা সরাসরি মার্কেটপ্লেসের মাধ্যমে আপডেট দেওয়া সম্ভব।</td> + </tr> + <tr> + <td>সুবিধাভোগী (Privileged)</td> + <td>সাইন করা অবস্থায় প্যাকেজ এর মাধ্যমে</td> + <td>প্রিভিলিজড বা সুবিধাভোগী API সমূহ, যে কারণে অ্যাপ যাচাই এবং অথেনটিকেশন করা হয়।</td> + <td>বিশ্বস্ত কোন মার্কেটপ্লেস থেকে</td> + <td>বিশ্বস্ত কোন মার্কেটপ্লেস থেকে আপডেট করানো হয়। আপডেট ডাউনলোড এবং ইন্সটল করার আগে ব্যভারকারী'র অনুমোদন নেওয়া হয়।</td> + </tr> + <tr> + <td>প্রত্যয়িত (Certified)</td> + <td>প্যাকেজড</td> + <td>শক্তিশালী এবং অতি-সংবেদনশীল API সমূহ, যেগুলো তৃতীয় পক্ষের বানানো অ্যাপে অনুমিত হয় না।</td> + <td>ডিভাইসে আগে থেকেই দেওয়া থাকে।</td> + <td>সিস্টেম আপডেট করার সময় আপডেট করা যায়।</td> + </tr> + </tbody> +</table> +<div class="note"> + <p><strong>খেয়াল করুনঃ </strong>ফায়ারফক্স ওএস এর ১.০ সংস্করণে ওয়েব অ্যাপ যেকোন ওয়েবসাইট মার্কেটপ্লেস থেকে ইন্সটল করা গেলেও সুবিধাভোগী অ্যাপ শুধুমাত্র মজিলা মার্কেটপ্লেস থেকেই ইন্সটল করা যাবে। কারণ এখন পর্যন্ত অন্যান্য বিশ্বস্ত মার্কেটপ্লেস থেকে ইন্সটল করার সুবিধা দেওয়া হয়নি।</p> +</div> +<p> </p> diff --git a/files/bn/archive/b2g_os/security/debugging_and_security_testing/index.html b/files/bn/archive/b2g_os/security/debugging_and_security_testing/index.html new file mode 100644 index 0000000000..93c62d068f --- /dev/null +++ b/files/bn/archive/b2g_os/security/debugging_and_security_testing/index.html @@ -0,0 +1,85 @@ +--- +title: ফায়ারফক্স ওএস এ ডিবাগিং এবং নিরাপত্তা পরীক্ষা +slug: Archive/B2G_OS/Security/Debugging_and_security_testing +translation_of: Archive/B2G_OS/Debugging/Debugging_and_security_testing +--- +<p>{{Next("Mozilla/Firefox_OS/Security/Intercepting_traffic_using_a_proxy")}}</p> +<div class="summary"> + <p>এই গাইডটির লক্ষ্য হল <span id="result_box" lang="bn"><span class="hps">নিরাপত্তা</span> <span class="hps">পরীক্ষকগণদের প্রতি যারা ফায়ারফক্স ওএস পরীক্ষা শুরু করতে যাচ্ছে</span></span> ; এইটি সাহায্য করবে <span id="result_box" lang="bn"><span class="hps">সম্প্রদায়ের সদস্যদেরকে</span></span> <span id="result_box" lang="bn"> <span class="hps">অ্যাপ্লিকেশন নিরীক্ষা করতে এবং</span> <span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস</span> <span class="hps">প্লাটফর্ম <span id="result_box" lang="bn"><span class="hps">নিজেই</span> <span class="hps">সাহায্য করবে</span></span> ।</span></span> যদি আপনি পূর্বে এটি না করে থাকেন তাহলে <a href="/en-US/docs/Mozilla/Firefox_OS/Security/Security_model" title="/en-US/docs/Mozilla/Firefox_OS/Security/Security_model">Firefox OS security overview </a>পড়ার মাধ্যমে শুরু করে দিতে পারেন; তাহলে এটি <span id="result_box" lang="bn"><span class="hps">পরিভাষা</span> <span class="hps">এবং</span> <span class="hps">আর্কিটেকচারের</span> <span class="hps">মধ্যে</span> <span class="hps">একটি মৌলিক</span> <span class="hps">ব্যাকগ্রাউন্ড</span> <span class="hps">প্রদান করবে ।</span></span></p> +</div> +<p><span class="short_text" id="result_box" lang="bn"><span class="hps">এই গাইডটিতে</span> <span class="hps">নিম্নলিখিত</span> <span class="hps">সাবসেকশনগুলি</span> <span class="hps">রয়েছে:</span></span></p> +<dl> + <dt> + {{anch("Getting started")}}</dt> + <dd> + <span class="short_text" id="result_box" lang="bn"><span class="hps">এখানে কিভাবে ফায়ারফক্স</span> <span class="hps">ওএস</span> <span class="hps">ডেস্কটপ</span> <span class="hps">বিল্ড শুরু করবো এবং <span id="result_box" lang="bn"><span>কিভাবে</span> <span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস</span> <span class="hps">চলমান</span> <span class="hps">অ্যাপ্লিকেশনগুলি</span> <span class="hps">পরিদর্শন</span> <span class="hps">ও নিয়ন্ত্রণ</span> <span class="hps">করা যায় </span></span></span></span>তাতে তার ব্যাখ্যা দেয়া হয়েছে ।</dd> + <dt> + <a href="/en-US/docs/Mozilla/Firefox_OS/Security/Intercepting_traffic_using_a_proxy" title="/en-US/docs/Mozilla/Firefox_OS/Security/Intercepting_traffic_using_a_proxy">Intercepting Firefox OS traffic using a proxy</a></dt> + <dd> + <span id="result_box" lang="bn"><span class="hps">এটি</span> <span class="hps">পরিদর্শন করে কিভাবে <span id="result_box" lang="bn"><span class="hps">প্রক্সি</span> <span class="hps">ব্যবহার করে <span id="result_box" lang="bn"><span class="hps">নেটওয়ার্ক ট্রাফিক</span> <span class="hps">ব্যাহত করা যায় ।</span></span></span></span></span></span></dd> + <dt> + <a href="/en-US/docs/Mozilla/Firefox_OS/Apps/Testing_in_a_privileged_context" title="/en-US/docs/Mozilla/Firefox_OS/Apps/Testing_in_a_privileged_context">Modifying Gaia</a></dt> + <dd> + <span id="result_box" lang="bn"><span class="hps">কিভাবে</span> <span class="hps">B2G</span> <span class="hps">ডেস্কটপ এর একটি কাস্টম প্রোফাইল</span><span>ের </span><span class="hps">মাধ্যমে </span></span><span id="result_box" lang="bn"><span>সেইসাথে</span> <span class="hps">কিভাবে আপনার নিজের</span> <span class="hps">তৈরী</span> <span class="hps">অ্যাপস</span> <span class="hps">নির্মাণ ও</span> <span class="hps">ইনস্টল </span></span> করতে পারবেন তাও বলা হয়েছে ।</dd> +</dl> +<p>আমাদের পরীক্ষার সবকিচ্ছু <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Using_the_B2G_desktop_client" title="/en-US/docs/Mozilla/Firefox_OS/Using_the_B2G_desktop_client">B2G Desktop</a> এর বিরুদ্ধে ঘটবে , <span id="result_box" lang="bn"><span class="hps">আপনার ডেস্কটপ</span> <span class="hps">কম্পিউটারের</span> <span class="hps">জন্য</span> <span class="hps">একটি নেটিভ</span> <span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস</span> <span class="hps">তৈরি হবে</span></span> । আপনি <a href="ftp://ftp.mozilla.org/pub/b2g/nightly/latest-mozilla-central/">flavor of nightly build (Linux, Mac OS, Windows)</a><span class="short_text" id="result_box" lang="bn"><span class="hps">ডাউনলোড করা শুরু করে দিন </span></span>অন্য কিছু পড়ার আগে ।</p> +<h2 id="কিভাবে_শুরু_করবেন">কিভাবে শুরু করবেন</h2> +<p>ধরে নিন আপনি <span class="short_text" id="result_box" lang="bn"><span class="hps">B2G</span> <span class="hps">ডেস্কটপ</span></span> <span class="short_text" id="result_box" lang="bn"><span class="hps">ডাউনলোড করে</span></span> ফেলেছন উপরের নিয়ম অনুযায়ী , এখন আপনি তৈরি পরের ধাপের জন্য ।</p> +<h3 id="লিনাক্স"><span class="short_text" id="result_box" lang="bn"><span class="hps">লিনাক্স</span></span></h3> +<p><span id="result_box" lang="bn"><span class="hps">B2G</span> <span class="hps">ডেস্কটপ</span> <span class="hps">সেট আপ</span> করা , <span class="short_text" id="result_box" lang="bn"><span class="hps">ফাইল </span></span>নিষ্কাশন করা</span> এবং <span class="short_text" id="result_box" lang="bn"><span class="hps">b2g</span> <span class="hps">বাইনারি চালানোর মতই সোজা ।</span></span></p> +<pre>tar xf b2g-something-something.tar.bz2 +cd b2g +./b2g</pre> +<h3 id="ম্যাক">ম্যাক</h3> +<p><span id="result_box" lang="bn"><span class="hps">ডাউনলোড করা </span></span><span class="short_text" id="result_box" lang="bn"><span class="hps">ডিস্ক</span> <span class="hps">ইমেজ ফাইল</span>টি খুলবেন এবং </span> B2G <span id="result_box" lang="bn"><span class="hps">অ্যাপ্লিকেশনটি আপনার </span></span> to your <code>/Applications</code> <span id="result_box" lang="bn"><span class="hps">ডিরেক্টরিতে</span></span> কপি করুন । এটি হয়ে যাবার পর আপনি <span id="result_box" lang="bn"><span class="hps">B2G</span> <span class="hps">aplication</span> <span class="hps">আইকনটি ক্লিক করে</span> <span class="hps">B2G</span> <span class="hps">ডেস্কটপ</span> <span class="hps">আরম্ভ করতে পারেন ।</span></span><span id="result_box" lang="bn"><span class="hps">অন্যথায় আপনি</span> <span class="hps">টার্মিনাল</span> <span class="hps">থেকে</span> <span class="hps">এটি আরম্ভ</span> <span class="hps">করতে পারেন নিচের নিয়ম অনুযায়ী: </span></span></p> +<pre>/Applications/B2G.app/Contents/MacOS/b2g</pre> +<h3 id="উইন্ডোজ">উইন্ডোজ</h3> +<p><span id="result_box" lang="bn"><span class="hps">ডাউনলোড করুন এবং</span> <span class="hps">একটি সুবিধাজনক</span> <span class="hps">অবস্থানে</span> <span class="hps">জিপ ফাইল</span>টি <span class="short_text" id="result_box" lang="bn"><span class="hps">নিষ্কর্ষ করুন। <span id="result_box" lang="bn"><span class="hps">ডাবল</span> <span class="hps">ক্লিক করুন</span></span></span></span> </span><code>b2g.exe এর উপর </code><span id="result_box" lang="bn"><span class="hps">B2G</span> <span class="hps">ডেস্কটপ</span> <span class="hps">শুরু করার জন্য ।</span></span></p> +<div class="note"> + <p>টীকা:<span id="result_box" lang="bn"><span class="hps">লেখার সময়</span><span>, উইন্ডোজ</span> <span class="hps">নেভিগেশন</span> <span class="hps">B2G</span> <span class="hps">ডেস্কটপ</span> <span class="hps">চলমান</span> নামক <span class="hps">একটি বিষয় আছে</span><span>.</span> <span class="hps">আপনি</span> এর <span class="hps">পরিবর্তে</span> <span class="hps"><a href="https://developer.mozilla.org/en-US/docs/Tools/Firefox_OS_Simulator">Firefox OS simulator</a></span> ব্যবহার <span class="hps">করে দেখতে পারেন</span><span> ।</span></span></p> +</div> +<h3 id="টিপস"><span class="short_text" id="result_box" lang="bn"><span class="hps">টিপস</span> <span class="hps"> </span></span></h3> +<p><span id="result_box" lang="bn"><span class="hps">আপনি এখন</span> <span id="result_box" lang="bn"><span class="hps">উদাহরণস্বরূপ</span> <span id="result_box" lang="bn"><span class="hps">ডেস্কটপ</span> <span class="hps">উইন্ডোতে <span id="result_box" lang="bn"><span class="hps">চলমান</span> <span id="result_box" lang="bn"><span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস খেলতে পারেন ।</span></span></span></span></span></span></span><span class="short_text" id="result_box" lang="bn"><span class="hps">যান এবং খেলেন</span></span> : <span class="short_text" id="result_box" lang="bn"><span class="hps">ব্রাউজার</span> <span class="hps">খুলুন</span></span> (<span class="short_text" id="result_box" lang="bn"><span class="hps">নীচে ডানদিকে</span>র <span class="hps">আইকন</span></span>) এবং <span id="result_box" lang="bn"><span class="hps">একটি</span> <span class="hps">ওয়েব পেজ</span> <span class="hps">দেখার জন্য</span><span>, অথবা</span> <span class="hps">কয়েক</span> <span class="hps">অ্যাপ্লিকেশান</span> <span class="hps">খোলার</span> <span class="hps">চেষ্টা করুন ।</span></span> <span id="result_box" lang="bn"><span class="hps">আপনি</span> <span class="hps">লক্ষ্য করবেন</span> <span class="hps">যে</span> <span class="hps">কিছু</span> <span class="hps">ডিভাইস নির্দিষ্ট</span> <span class="hps">কার্যকারিতা আছে </span></span>— <span class="short_text" id="result_box" lang="bn"><span class="hps">যেমন</span> <span class="hps">ডায়ালার</span><span>, ক্যামেরা</span><span>, রেডিও</span> <span class="hps">ইত্যাদি</span></span> —<span class="short_text" id="result_box" lang="bn"><span class="hps">সুস্পষ্ট কারণে</span> <span class="hps">কাজ করবে না ।</span></span></p> +<p><span class="short_text" id="result_box" lang="bn"><span class="hps">B2G</span> <span class="hps">ডেস্কটপ</span> এর <span class="hps">সঙ্গে <span class="short_text" id="result_box" lang="bn"><span class="hps">নিজেকে</span> <span class="hps alt-edited">স্বাচ্ছন্দ্য</span> <span class="hps">করে তুলুন</span></span> </span></span>; অবশ্যই পড়বেন <a href="/en-US/docs/Mozilla/Firefox_OS/Using_the_B2G_desktop_client" title="/en-US/docs/Mozilla/Firefox_OS/Using_the_B2G_desktop_client">Using the B2G desktop client</a> যাতে করে আপনি এর কাজ শিখতে পারেন ।</p> +<p><span id="result_box" lang="bn"><span class="hps">এখন</span> <span class="hps">বাস্তব চুক্তি</span> <span class="hps">করার</span> <span class="hps">ক্ষেত্রে</span><span>,</span> <span class="hps">আমরা</span> <span class="hps">জাভাস্ক্রিপ্ট</span> <span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস</span> <span class="hps">ভিতর থেকে</span> <span class="hps">কল</span> <span class="hps">করতে চাই ।</span></span></p> +<h2 id="ফায়ারফক্স_অপারেটিং_সিস্টেমের_জন্য_ডিবাগিং_শেল_প্রাপ্ত_করার_পদ্ধতি"><span id="result_box" lang="bn"><span class="hps">ফায়ারফক্স</span> <span class="hps">অপারেটিং সিস্টেমের জন্য</span> <span class="hps">ডিবাগিং</span> <span class="hps">শেল</span> <span class="hps">প্রাপ্ত করার পদ্ধতি</span></span></h2> +<p><a href="/en-US/docs/Marionette" title="/en-US/docs/Marionette">Marionette </a> <span id="result_box" lang="bn"><span class="hps">সেলেনিয়াম</span> <span class="hps">/</span> <span class="hps">WebDriver</span> <span class="hps atn">API-</span><span>এর উপর ভিত্তি করে চলে</span></span>,এবং <span id="result_box" lang="bn"><span class="hps">ডিবাগিং</span> <span class="hps">শেল</span> <span class="hps">জন্য ভিত্তি</span> <span class="hps">প্রদান করে যা <span id="result_box" lang="bn"><span class="hps">ব্যবহার</span></span> করে</span></span><span id="result_box" lang="bn"><span class="hps"> স্বয়ংক্রিয় <span id="result_box" lang="bn"><span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস</span> <span class="hps">পরীক্ষা করা হয় ।</span></span></span></span><span id="result_box" lang="bn"><span class="hps"> প্রথমত,</span></span> <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Platform/Testing/Setting_up_Marionette?redirectlocale=en-US&redirectslug=Mozilla/Firefox_OS/Setting_Up_Marionette_for_B2G#Setting_up_the_Marionette_client">marionette client</a> (<span id="result_box" lang="bn"><span>পাইথন</span> এ <span class="hps">লেখা</span></span>) সেট আপ করতে হবে এবং <span id="result_box" lang="bn"><span class="hps">সেখানে</span> <span class="hps">দেওয়া</span> <span class="hps">ইনস্টলেশনের নির্দেশাবলী নির্দ্বিধায় অনুসরণ</span><span> করতে হবে ।</span></span></p> +<div class="note"> + <p><strong>টীকা:</strong><span id="result_box" lang="bn"><span class="hps">সাম্প্রতিক</span> <span class="hps">পরীক্ষা</span> র মাধ্যমে দেখা গিয়েছে যে <span id="result_box" lang="bn"><span class="hps">mozbase এর কিছু <span id="result_box" lang="bn"><span class="hps">নির্দিষ্ট</span> <span class="hps">সংস্করণের সঙ্গে</span> <span class="hps">সমস্যা থাকতে পারে</span></span></span></span></span> আপনার । <span id="result_box" lang="bn"><span class="hps">শেষ</span> <span class="hps">পরিচিত</span><span class="atn">-</span><span>কর্মরত <span id="result_box" lang="bn"><span class="hps">Mozbase হল </span></span></span></span><span class="short_text" id="result_box" lang="bn"><span class="hps">9ee2de</span> <span class="hps">কমিট</span></span> ।</p> +</div> +<div class="note"> + <div class="almost_half_cell" id="gt-res-content"> + <div dir="ltr" style="zoom: 1;"> + <span id="result_box" lang="bn"><span class="hps">টীকা</span><span>:</span> <span class="hps">যেহেতু আপনি নাইটলি বিল্ড ব্যবহার করছেন</span><span>,</span> <span class="hps">আপনার</span></span> b2g প্রোফাইল এ (just like in the Firefox browser, all user settings are stored within a profile) <span id="result_box" lang="bn"><span class="hps">ইতিমধ্যে</span></span> Marionette, <span id="result_box" lang="bn"><span class="hps">লাইনের মাধ্যমে</span> <span class="hps">সক্রিয়</span> <span class="hps">হওয়া উচিত ছিল ।</span></span></div> + <div dir="ltr" style="zoom: 1;"> + <code>user_pref("marionette.defaultPrefs.enabled", true);</code> in <code>gaia/profile/<code>prefs.js</code></code>. যদি না হয় তাহলে আপনি ভুল বিল্ড <span class="short_text" id="result_box" lang="bn"><span class="hps">ব্যবহার করছেন</span></span> ।</div> + </div> +</div> +<p><span class="short_text" id="result_box" lang="bn"><span class="hps">এই মুহুর্তে</span></span>, <span class="short_text" id="result_box" lang="bn"><span class="hps">আপনি চিন্তা করতে পারেন</span></span> <span class="short_text" id="result_box" lang="bn"><span class="hps">পাইথন</span> <span class="hps">কনসোল</span> স্পিনিং আপ করতে</span>,<span class="short_text" id="result_box" lang="bn"><span> marionette ক্লায়েন্ট</span> <span class="hps">লাইব্রেরী</span> <span class="hps">ইম্পোর্ট</span></span> করা এবং ডিবাগিং সেশন তৈরি করা , কিন্তু আমরা অন্য কিছু করতে পারি: <span id="result_box" lang="bn"><span class="hps">স্টিফান</span> <span class="hps">আরেন্টেজ</span> <span class="hps">একটি সহজ</span> <span class="hps">জাভাস্ক্রিপ্ট</span> <span class="hps">কনসোল</span> <span class="hps">তৈরি করেছেন</span></span> যেটি marionette <span class="short_text" id="result_box" lang="bn"><span>ক্লায়েন্ট</span> <span class="hps">লাইব্রেরীর</span> <span class="hps">উপরে</span> <span class="hps">রানকরে ।</span></span> <span class="short_text" id="result_box" lang="bn"><span class="hps">সুতরাং,</span> <span class="hps">এর</span> <span class="hps">জন্য ডাউনলোড</span> <span class="hps">করা যাক</span></span> <a href="https://raw.github.com/st3fan/fxos-repl/master/fxos-repl.py">fxos-repl.py</a> ।</p> +<p><span class="short_text" id="result_box" lang="bn"><span class="hps">আমাদের</span> <span class="hps">উদাহরণস্বরূপ</span></span>,<span id="result_box" lang="bn"><span class="hps">আমরা</span> <span class="hps">দূরবর্তী</span> <span class="hps">ব্রাউজার</span> <span class="hps">অ্যাপ্লিকেশন</span> <span class="hps">নিয়ন্ত্রণ করবো ।</span></span><span id="result_box" lang="bn"><span class="hps">আপনার</span> <span class="hps">মাউস দিয়ে</span> <span class="hps">ফায়ারফক্স</span> <span class="hps">ওএস</span> হোম পর্দা<span class="hps">র</span> <span class="hps">নীচের অংশের ডানদিকে</span> <span class="hps">ব্রাউজার</span> <span class="hps">আইকনটি ক্লিক করে</span> <span class="hps">এটি</span> <span class="hps">আরম্ভ করুন</span></span> । <span class="short_text" id="result_box" lang="bn"><span class="hps">B2G</span> <span class="hps">বাইনারি কি <span class="short_text" id="result_box" lang="bn"><span class="hps">ব্রাউজার</span> <span class="hps">অ্যাপ্লিকেশন</span> <span class="hps">দেখাচ্ছে ?</span></span></span></span> <span id="result_box" lang="bn"><span class="hps">ভাল</span> । <span class="hps">এই নির্দেশটি আপনাকে একটি</span> <span class="hps">URL</span> <span class="hps">এর লিস্ট দিবে যেখানে বিভিন্ন প্রতিনিধিত্বমূলক অ্যাপ্লিকেশান থাকবে</span></span> <span class="short_text" id="result_box" lang="bn"><span class="hps">এবং আপনাকে ডিবাগ শুরু করার অনুমতি দিবে</span><span> ।</span></span></p> +<pre class="brush: bash">$ <strong>python fxos-repl.py list</strong> +app://homescreen.gaiamobile.org/index.html#root +app://browser.gaiamobile.org/index.html +app://keyboard.gaiamobile.org/index.html</pre> +<p><span id="result_box" lang="bn"><span class="hps">এখন আসুন</span> <span class="hps">ব্রাউজার</span> <span class="hps">অ্যাপ্লিকেশন</span> <span class="hps">সংযোগ</span> <span class="hps">দেয়</span> <span class="hps">এবং তা</span> <span class="hps">পরীক্ষা করি </span><span>:</span></span></p> +<pre class="brush: bash">$ <strong>python fxos-reply.py connect app://browser.gaiamobile.org/index.html</strong> +Connected to app://browser.gaiamobile.org/index.html</pre> +<p>API টি{{domxref("document.querySelector()")}} ব্যবহার করে {{HTMLElement("menu")}} ট্যাগটি আইডি <code>toolbar-start সহ খুঁজে বের করতে হবে</code>, এবং এটির HTML টি দেখতে পারব :</p> +<pre class="brush: bash">>>> <strong>document.querySelector("menu#toolbar-start").outerHTML</strong> +<menu type="toolbar" id="toolbar-start"> + <form id="url-bar" novalidate=""> + <input id="ssl-indicator" value="" type="image"> + <input id="url-input" placeholder="Enter search or address" data-l10n-id="enter-search-or-address" x-inputmode="verbatim" type="text"> + <input style="background-image: url(&quot;style/images/go.png&quot;);" id="url-button" value="" type="image"> + </form> + <span id="tabs-badge">1<span id="more-tabs">›</span></span> + <button id="awesomescreen-cancel-button"></button> + <div id="throbber"></div> + </menu></pre> +<p>এটি আপনার কাছে পরিচিত লাগছে? এটি আক্তি টুল বার যেটির মধ্যে অ্যাড্রেস বার এবং নতুন ট্যাব বার আছে ।</p> +<p>এখন শেলটি ব্যবহার করে কিল্ক করে নতুন ট্যাব বোতাম এ যাওয়া যাক । এইটির আইডি হল <code>tabs-badge</code> ।</p> +<pre class="brush: bash">>>> <strong>document.querySelector("#tabs-badge").click()</strong></pre> +<p><span class="short_text" id="result_box" lang="bn"><span class="hps">নতুন</span> <span class="hps">ট্যাব</span> <span class="hps">ইউআই</span> <span class="hps">এখন</span> <span class="hps">দেখাবে ।</span></span> <span class="short_text" id="result_box" lang="bn"><span class="hps">অন্য কিছু</span> <span class="hps">চেষ্টা করা যাক </span></span>:</p> +<pre class="brush: bash">>>> <strong>alert(location.href)</strong></pre> +<p><span class="short_text" id="result_box" lang="bn"><span class="hps">এখন</span> <span class="hps">খেলুন !</span></span></p> +<p>{{Next("Mozilla/Firefox_OS/Security/Intercepting_traffic_using_a_proxy")}}</p> diff --git a/files/bn/archive/b2g_os/security/index.html b/files/bn/archive/b2g_os/security/index.html new file mode 100644 index 0000000000..3e1070c193 --- /dev/null +++ b/files/bn/archive/b2g_os/security/index.html @@ -0,0 +1,53 @@ +--- +title: নিরাপত্তা +slug: Archive/B2G_OS/Security +translation_of: Archive/B2G_OS/Security +--- +<p> নিম্নোল্লিখিত আর্টিকেলগুলোতে ফায়ারফক্স ওএসের নিরাপত্তা সংক্রান্ত বিষয়ে আলোচনা করা হয়েছে। এতে সার্বিক নিরাপত্তা সুবিধা, এ্যাপ্লিকেশন নিরাপত্তা এবং ইন্সটল প্রক্রিয়া নিরাপদ রাখার প্রক্রিয়াও আলোচিত হয়েছে।</p> +<table class="topicpage-table"> + <tbody> + <tr> + <td> + <h2 class="Documentation" id="Documentation" name="Documentation">ফায়ারফক্স ওএস ডকুমেন্টেশন</h2> + <dl> + <dt> + <a href="/bn-BD/docs/Mozilla/Firefox_OS/Security/Security_model" title="/bn-BD/docs/Mozilla/Firefox_OS/Security/Security_model">ফায়ারফক্স ওএস নিরাপত্তা মডেল</a></dt> + <dd> + ফায়ারফক্স ওএসের নিরাপত্তা মডেলের সার্বিক চিত্র।</dd> + <dt> + <a href="/bn-BD/docs/Mozilla/Firefox_OS/Security/Application_security" title="/bn-BD/docs/Mozilla/Firefox_OS/Security/Application_security">ফায়ারফক্স ওএসে এ্যাপ্লিকেশন নিরাপত্তা</a></dt> + <dd> + ফায়ারফক্স ওএসের এ্যাপ্লিকেশনসমূহের নিরাপত্তার সার্বিক চিত্র।</dd> + <dt> + <a href="/bn-BD/docs/Mozilla/Firefox_OS/Security/Installing_and_updating_applications" title="/bn-BD/docs/Mozilla/Firefox_OS/Security/Installing_and_updating_applications">নিরাপদভাবে এ্যাপ্লিকেশন ইন্সটল ও আপডেট করা</a></dt> + <dd> + ফায়ারফক্স ওএসের নিরাপদভাবে এ্যাপ্লিকেশন ইন্সটল ও আপডেট করার পদ্ধতি।</dd> + <dt> + <a href="/bn-BD/docs/Mozilla/Firefox_OS/Security/Software_permissions" title="/bn-BD/docs/Mozilla/Firefox_OS/Security/Software_permissions">ফায়ারফক্স ওএসে সফটওয়্যার পারমিশন</a></dt> + <dd> + কোন ধরণের সফটওয়্যার কি কাজ করার অনুমতি রাখে - সে সংক্রান্ত গাইড</dd> + </dl> + <p><span class="alllinks"><a href="/bn-BD/docs/tag/B2G" title="/bn-BD/docs/tag/B2G">সবগুলো দেখুন...</a></span></p> + </td> + <td> + <h2 class="Community" id="Community" name="Community">কমিউনিটি থেকে সাহায্য</h2> + <p>আপনি যদি ফায়ারফক্স ওএস নিয়ে কাজ করে থাকেন, কিংবা এ্যাপ্লিকেশন ডেভেলপ করে থাকেন যা ফায়ারফক্স ওএস ডিভাইসে চালাতে ইচ্ছুক, আপনাকে সাহায্য করার জন্য কমিউনিটির কিছু রিসোর্স আছে।</p> + <ul> + <li>বুট-টু-গিকো প্রজেক্ট ফোরাম: {{ DiscussionList("dev-b2g", "mozilla.dev.b2g") }}</li> + </ul> + <ul> + <li>আপনার প্রশ্ন মোজিলার বুট-টু-গিকো আইআরসি চ্যানেলে করুন: <a class="link-irc" href="irc://irc.mozilla.org/b2g" title="irc://irc.mozilla.org/b2g">#b2g</a></li> + </ul> + <p><span class="alllinks"><a class="external" href="http://www.catb.org/~esr/faqs/smart-questions.html" title="http://www.catb.org/~esr/faqs/smart-questions.html">Don't forget about the <em>netiquette</em>...</a></span></p> + <br> + <h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">সম্পর্কিত বিষয়বস্তু</h2> + <ul> + <li><a href="/bn-BD/docs/Mobile" title="bn-BD/docs/Mobile">মোবাইল</a></li> + <li><a href="/bn-BD/docs/Security" title="/bn-BD/docs/Security">নিরাপত্তা</a></li> + </ul> + </td> + </tr> + </tbody> +</table> +<p><br> + otta</p> diff --git a/files/bn/archive/b2g_os/security/intercepting_traffic_using_a_proxy/index.html b/files/bn/archive/b2g_os/security/intercepting_traffic_using_a_proxy/index.html new file mode 100644 index 0000000000..b8f7784890 --- /dev/null +++ b/files/bn/archive/b2g_os/security/intercepting_traffic_using_a_proxy/index.html @@ -0,0 +1,86 @@ +--- +title: প্রক্সি ব্যবহার করে ফায়ারফক্স ওএস ট্রাফিকে বাধাদান +slug: Archive/B2G_OS/Security/Intercepting_traffic_using_a_proxy +tags: + - NeedsReview +translation_of: Archive/B2G_OS/Debugging/Intercepting_traffic_using_a_proxy +--- +<p>{{PreviousNext("Mozilla/Firefox_OS/Security/Debugging_and_security_testing", "Mozilla/Firefox_OS/Apps/Testing_in_a_privileged_context")}}</p> +<div class="summary"> + <p><span class="seoSummary"><span style="line-height: 1.5;">ডিবাগিং এবং সিক্যুরিটি পরীক্ষা সম্পর্কিত নিবন্ধের এই অংশে আমরা দেখব, প্রক্সির SSL সার্টিফিকেট সাদাতালিকাভুক্ত করা সহ প্রক্সি ব্যাবহার করে ফায়ারফক্স ওএস ট্রাফিককে বাধাদান করা (B2G ডেস্কটপ ও ডিভাইসে), যাতে করে যে কেও ফায়ারফক্স ওএস এর মাধ্যমে HTTPS যোগাযোগে বাধাদান বা রি-এনক্রিপ্ট করতে পারে । আপনি যদি B2G ডেস্কটপ ব্যাবহার করে থাকেন, তাহলে এটি ইন্সটল করা ও ম্যারিওনেট জাভাস্ক্রিপ্ট ডিবাগিং শেল যুক্ত করার পদ্ধতি</span></span> <a href="/en-US/docs/Mozilla/Firefox_OS/Security/Debugging_and_security_testing" title="/en-US/docs/Mozilla/Firefox_OS/Security/Debugging_and_security_testing">Debugging and security testing with Firefox OS</a> <span style="line-height: 1.5;">–এ বর্ণিত আছে ।</span></p> +</div> +<p><span style="line-height: 1.5;">এইচটিএমএল ও জাভাস্ক্রিপ্ট নির্মিত অ্যাপ নিয়ে কাজ করতে গেলে আপনি লক্ষ্য করবেন যে, তথ্য আদান-প্রদানের কাজে ব্যবহৃত API সহ অনেক আকর্ষণীয় কাজ সেখানে আছে । তার মানে, এই অ্যাপগুলো যে HTTP অনুরোধ সম্পাদন করে, সেগুলো লক্ষ্য করা বেশিরভাগ সময়ই গুরুত্বপূর্ণ ।</span></p> +<h2 id="ZAP_পরিচিতি">ZAP <strong>পরিচিতি</strong></h2> +<p>ZAP দিয়েই শুরু করা যাক । ZAP হল একটি বাধাদানকারী প্রক্সি, যা সহজে ডিবাগিংএর জন্য HTTPS ট্রাফিককে বাধা দেয় এবং পুনরায় এনক্রিপ্ট করে । এটি ডাউনলোডের জন্য <a href="https://www.owasp.org/index.php/ZAP" style="line-height: 1.5;" title="https://www.owasp.org/index.php/ZAP">ZAP homepage</a> <span style="line-height: 1.5;">এর উপরের বড় নীল বাটনটি ক্লিক করুন । আপনি যদি আরেকটি প্রক্সি ব্যাবহার করতে চান (যেমন </span><a href="http://portswigger.net/burp/proxy.html" style="line-height: 1.5;" title="http://portswigger.net/burp/proxy.html">Burp Proxy</a><span style="line-height: 1.5;">), করতে পারেন ; কারণ পদ্ধতিটি দুইক্ষেত্রেই কাজ করবে ।</span></p> +<h4 id="ZAP_সার্টিফিকেট"><span style="font-family: 'Open Sans', sans-serif; font-size: 14px; line-height: 1.5;">ZAP সার্টিফিকেট</span></h4> +<p><span style="line-height: 1.5;">এখন, আপনি যে প্রক্সিই ব্যাবহার করুন না কেন, এটির সার্টিফিকেটটি একটি ফাইলে এক্সপোর্ট করুন এভাবে</span> <code>owasp_zap_root_ca.cer (go in <em>Tools > Options > Dynamic SSL Certificates > Save</em>)।</code> যখন ZAP প্রথম চালু হবে, এটি একটি একবছর মেয়াদী সার্টিফিকেট তৈরি করে । আপনি Dynamic SSL Certificates অংশ থেকেও নতুন একটি তৈরি করতে পারেন ।</p> +<h4 id="sect1"> </h4> +<p>লোকাল প্রক্সি</p> +<p><span style="line-height: 1.5;">আপনি যদি B2G ডেস্কটপ ব্যাবহারকারি হয়ে থাকেন, তাহলে ZAP যেন localhost অনুসরণ না করে আপনার নির্দিষ্ট বৈশিষ্ট্যের IP অ্যাড্রেস (ইথারনেট বা ওয়াই-ফাই) অনুসরণ করে, এটি আপনাকে নিশ্চিত করতে হবে । কারণ, B2G ডেস্কটপের </span><span style="font-family: 'Courier New', 'Andale Mono', monospace;">localhost</span><span style="line-height: 1.5;"> আপনার ডেস্কটপ কম্পিউটারটিকে নির্দেশ করে না, বরং B2G বাইনারির নিজস্ব কোন কিছুকে নির্দেশ করে । উদাহরণস্বরূপ, আমরা আমাদের IP হিসেবে </span><span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: 1.5;">10.264.1.5</span><span style="line-height: 1.5;"> ব্যাবহার করব ।</span></p> +<p><span style="line-height: 1.5;">আপনি যদি একটি প্রকৃত ডিভাইস নিয়ে কাজ করেন, তাহলে আপনার ফোন এবং কম্পিউটার যেন একই নেটওয়ার্কে/VLAN-এ যুক্ত থাকে এবং নিজেদের মধ্যে যোগাযোগ রাখতে পারে, সেটি নিশ্চিত করতে হবে (সন্দেহ হলে একটি ডিভাইসের IP অন্য ডিভাইস থেকে পিং করার চেষ্টা করতে পারেন) ।</span></p> +<h2 id="sect2"> </h2> +<p>সার্টিফিকেট ডেটাবেইজ তৈরি</p> +<p>সার্টিফিকেট গ্রহণ করার প্রক্রিয়াটি সেটিংসে সম্পন্ন হয়, যেগুলো প্রোফাইলে সংরক্ষিত থাকে । এখানে ফায়ারফক্স প্রোফাইলসের উপর একটি সংক্ষিপ্ত সূচনা দেয়া হল :</p> +<ol start="1" style="list-style-type: decimal; margin-left: 40px;"> + <li>কমান্ড লাইনে –P অপশন ব্যাবহার করে ফায়ারফক্স প্রোফাইল ম্যানেজার চালু করুন এবং ফায়ারফক্স যেন কোন বর্তমান সেশন ব্যাবহার না করে, তা নিশ্চিত করুন(<code>-no-remote</code>): + <ul style="margin-left: 40px;"> + <li> + <p>লিনাক্সে আপনাকে যা করতে হবে :</p> + <pre class="brush: bash">firefox -P -no-remote</pre> + </li> + <li> + <p>·ম্যাক ওএস এক্সে :</p> + <pre class="brush: bash">/Applications/Firefox.app/Contents/MacOS/firefox -P -no-remote</pre> + </li> + </ul> + </li> + <li>এবার “zapped.” নামে একটি প্রোফাইল তৈরি করুন । সার্টিফিকেট সেটিংসে যান - <em>Edit > Preferences > Advanced > Encryption > View Certificates > Import</em>। আপনার প্রক্সি দিয়ে তৈরিকৃত <span style="font-family: 'Courier New', 'Andale Mono', monospace;">owasp_zap_root_ca.cer</span> ফাইলটি সিলেক্ট করুন এবং ফায়ারফক্স যেন ওয়েবসাইট শনাক্তের কাজে এই CA কে ট্রাস্ট করে, সেই নির্দেশ দিন (এটি সত্যিকার অর্থেই শুধু এই প্রোফাইলের জন্য বৈধ) ।</li> + <li>ফায়ারফক্সের মাধ্যমে সার্টিফিকেট ডেটাবেইজ তৈরি হয়ে যাওয়ায় আমরা এই ডেটাবেইজটি এখন B2G প্রোফাইল তৈরির কাজে ব্যবহার করতে পারি । আপনার ফায়ারফক্স প্রোফাইল ডিরেক্টরির নামটি একটি দৈবচয়িত স্ট্রিং, যেটি <em>zapped </em>দিয়ে শেষ হয় । এর লোকেশন অপারেটিং সিস্টেমের উপর নির্ভর করে ; এটি কোথায় পাওয়া যায়, তার বিস্তারিত জানতে <a href="/en-US/docs/Runtime_Directories" title="/en-US/docs/Runtime_Directories">Runtime Directories</a> এ যান ।</li> + <li><code><strong>B2G ডেস্কটপের</strong> জন্য শুধুমাত্র প্রোফাইলের সার্টিফিকেট ডেটাবেইজ ফাইল cert8.db টি লাগবে । এটিকে B2G প্রোফাইল ডিরেক্টরি b2g/gaia/profile/ তে কপি করুন ।</code></li> + <li><strong>ডিভাইসে</strong>, <span style="font-family: 'Courier New', 'Andale Mono', monospace;">cert9.db</span> ফাইলটি ডিভাইসের প্রোফাইল ডিরেক্টরিতে কপি করুন ।<br> + <pre>$ adb shell stop b2g +$ adb push cert9.db /data/b2g/mozilla/*.default</pre> + </li> +</ol> +<div class="note"> + <p>দ্রষ্টব্য : এটি বর্তমান ফাইলকে প্রতিস্থাপিত করবে ।</p> +</div> +<h2 id="sect3"> </h2> +<p>B2G সেট আপ</p> +<p>পরবর্তী ধাপটি হল ZAPকে সকল নেটওয়ার্ক যোগাযোগের জন্য ডিফল্ট করে দেয়া । ফায়ারফক্স ওএস ইউজার ইন্টারফেসে সার্টিফিকেট সেটিংসের ন্যায় প্রক্সি সেটিংস এখনো অন্তর্ভুক্ত নয় ।</p> +<h3 id="sect4"> </h3> +<p>B2G ডেস্কটপে</p> +<p>এই কাস্টম সেটিংস আপনাকে প্রেফারেন্সেস ফাইলে অ্যাপেন্ড করতে হবে , <code>b2g/gaia/profile/prefs.js</code>:</p> +<pre><code class="brush: bash">user_pref("network.proxy.backup.ftp", "10.264.1.5"); +user_pref("network.proxy.backup.ftp_port", 8080); +user_pref("network.proxy.backup.socks", "10.264.1.5"); +user_pref("network.proxy.backup.socks_port", 8080); +user_pref("network.proxy.backup.ssl", "10.264.1.5"); +user_pref("network.proxy.backup.ssl_port", 8080); +user_pref("network.proxy.ftp", "10.264.1.5"); +user_pref("network.proxy.ftp_port", 8080); +user_pref("network.proxy.http", "10.264.1.5"); +user_pref("network.proxy.http_port", 8080); +user_pref("network.proxy.no_proxies_on", ""); +user_pref("network.proxy.share_proxy_settings", true); +user_pref("network.proxy.socks", "10.264.1.5"); +user_pref("network.proxy.socks_port", 8080); +user_pref("network.proxy.ssl", "10.264.1.5"); +user_pref("network.proxy.ssl_port", 8080); +user_pref("network.proxy.type", 1);</code> +</pre> +<div class="note"> + <p>দ্রষ্টব্য : আমার আইপি অ্যাড্রেস 10.264.1.5 আপনারটি দিয়ে প্রতিস্থাপিত করতে ভুলবেন না, এবং আপনার প্রক্সি যদি 8080 পোর্টে কাজ না করে, আপনাকে এটি ফাইলেও পরিবর্তন করতে হবে ।</p> +</div> +<p>এখন আপনি প্রস্তুত ! B2G ডেস্কটপ পুনরায় চালু করুন এবং পরীক্ষামূলক ব্রাউজিং করুন । ZAP এ নেটওয়ার্ক ট্রাফিক দেখা যাবে ।</p> +<h3 id="sect5"> </h3> +<p>ডিভাইসে</p> +<div class="warning"> + <p>এই পদ্ধতিগুলো ডিভাইসে আর কাজ নাও করতে পারে ।</p> +</div> +<p><span style="line-height: 1.5;">আপনাকে</span> /data/b2g/mozilla/*.default ফাইলটি নবায়ন করতে হবে:</p> +<pre>$ adb pull /data/b2g/mozilla/*.default/prefs.js</pre> +<p>ফাইলের শেষে, উপরের দ্বিতীয় অংশে উল্লেখিত কাস্টম সেটিংস যোগ করুন এবং B2G রিস্টার্ট দিন (B2G প্রক্রিয়া থেমে যাওয়ার কথা, যদি আপনি cert9.db পুশ করার নিয়ম অনুসরণ করতেন) :</p> +<pre>$ adb push pref.js /data/b2g/mozilla/*.default +$ adb shell start b2g</pre> +<p>{{PreviousNext("Mozilla/Firefox_OS/Security/Debugging_and_security_testing", "Mozilla/Firefox_OS/Apps/Testing_in_a_privileged_context")}}</p> |