"পরিচিত_হোস্টগুলিতে সঠিক হোস্ট কী যুক্ত করুন" / হোস্টনামে একাধিক ssh হোস্ট কী?


147

আমি নিয়ন্ত্রণ করি এমন একটি কম্পিউটারে প্রবেশ করার চেষ্টা করছি, আমি পরিচিত বার্তাটি পেয়ে যাচ্ছি:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
[...].
Please contact your system administrator.
Add correct host key in /home/sward/.ssh/known_hosts to get rid of this message.
Offending RSA key in /home/sward/.ssh/known_hosts:86
RSA host key for [...] has changed and you have requested strict checking.
Host key verification failed.

আমি প্রকৃতপক্ষে কীটি পরিবর্তন করেছি। এবং আমি কয়েক ডজন পোস্টিং পড়েছিলাম যে এই সমস্যাটি সমাধানের উপায় হ'ল known_hostsফাইল থেকে পুরানো কী মুছে ফেলা ।

তবে আমি যা চাই তা হ'ল ssh টি পুরানো কী এবং নতুন কী উভয়ই গ্রহণ করুন। ত্রুটি বার্তায় (" Add correct host key") ভাষাটি পরামর্শ দেয় যে পুরানোটিকে সরিয়ে না দিয়ে সঠিক হোস্ট কী যুক্ত করার কোনও উপায় থাকা উচিত।

পুরানোটিকে অপসারণ না করে কীভাবে নতুন হোস্ট কী যুক্ত করা যায় তা আমি বুঝতে সক্ষম হয়েছি।

এটি কি সম্ভব, বা ত্রুটি বার্তাটি কেবল চরম বিভ্রান্তিকর?


9
এটি হোস্ট কী যা ত্রুটি উত্পন্ন করছে। একটি হোস্টের একটি এবং কেবল একটি কী থাকা উচিত। এটির ক্লায়েন্ট বা ব্যবহারকারী কীগুলির সাথে কোনও সম্পর্ক নেই। আপনার কি এমন একটি আইপি ঠিকানা রয়েছে যা স্বতন্ত্র হোস্ট বা কোনও কিছুর মধ্যে ভাসমান?
ডেভিড শোয়ার্জ

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

উত্তর:


148
  1. আপনার সার্ভারের আরএসএ কীটি পান, আপনার সার্ভারের server_ipআইপি ঠিকানাটি যেমন 192.168.2.1:

    $ ssh-keyscan -t rsa server_ip
    

    নমুনা প্রতিক্রিয়া:

    # server_ip SSH-2.0-OpenSSH_4.3
    server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwH5EXZG...
    
  2. এবং ক্লায়েন্টে, সম্পূর্ণ প্রতিক্রিয়া লাইনটি অনুলিপি করুন server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwH5EXZG...এবং আপনার ~/.ssh/known_hostsফাইলের নীচে এই কীটি যুক্ত করুন:

    server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAqx9m529...(the offending key, and/or the very bottom of the `known_hosts` file)
    server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwH5EXZG... (line you're adding, copied and pasted from above)
    

12
এই কাজ! যাইহোক, আমি "হ্যাশকানাডহাস্টস" ব্যবহার করছি, সুতরাং এন্ট্রিটি কিছুটা জায়গা থেকে দূরে দেখায়। ভাগ্যক্রমে ssh_config (5) আমাকে ssh-keygen (1) এর দিকে ইঙ্গিত করেছে যা ব্যাখ্যা করেছে যে আমি আনস্যাশড এন্ট্রিগুলিকে হ্যাশ করতে "ssh-keygen -H" ব্যবহার করতে পারি। ধন্যবাদ!
স্যামুয়েল এডউইন ওয়ার্ড

2
এটি "কাজ করে" তবে আপনি কীটি যাচাই করছেন না, তাই আপনি মিটম আক্রমণে ঝুঁকিপূর্ণ ...
জ্যাস্পারওয়ালেস

3
@ য্যাস্পারওয়্যালেস, যতক্ষণ না প্রথম পদক্ষেপটি সুরক্ষিত সংযোগের উপর দিয়ে করা হয় (উদাহরণস্বরূপ লোকালহোস্ট ব্যবহার করে) এটি বেশ সুরক্ষিত হওয়া উচিত, আমি মনে করি
ony

3
সার্ভার থেকে কী কী সমস্ত ধরণের সংগ্রহ করার কোনও উপায় আছে? কখনও কখনও আপনি যদি তারা আরএসএ, জেলাকে, ECDSA, RSA1 ... ইত্যাদি জানি না
Sopalajo ডি Arrierez

3
@ সোপালাজোডেআরিরিজেজ একই ম্যানপেজটি এও বলেছে যে আপনি কমা দিয়ে আলাদা আলাদা আলাদা আলাদা আলাদা করতে পারবেন ssh-keyscan -t rsa1,dsa,rsa,ecdsa,ed25519 server_ip- তবে কী rsa1এবং dsaকীগুলির সন্ধান করার একমাত্র কারণ হ'ল সার্ভারগুলিকে চিহ্নিত করা যা আপগ্রেড / পুনরায় কনফিগার করা দরকার
kbolino

94

ব্যবহৃত_হোস্টগুলি ব্যবহার করে প্রবেশটি সরান:

ssh-keygen -R *ip_address_or_hostname*

এটি পরিচিত_হোস্ট ফাইল থেকে সমস্যাযুক্ত আইপি বা হোস্টনাম সরিয়ে ফেলবে এবং আবার সংযোগ দেওয়ার চেষ্টা করবে।

ম্যান পেজগুলি থেকে:

-R hostname
পরিচিত_হোস্ট ফাইল থেকে হোস্টনামের সাথে সম্পর্কিত সমস্ত কী সরিয়ে দেয়। এই বিকল্পটি হ্যাশড হোস্টগুলি মুছতে দরকারী (উপরে -H বিকল্পটি দেখুন)।


11
"পুরানোটি না সরিয়ে কীভাবে নতুন হোস্ট কী যুক্ত করা যায়"।
স্যামুয়েল এডউইন ওয়ার্ড

4
এটিই সেরা সমাধান!
থমাস ডেকাউক্স

8
এটি কিভাবে 19 ভোট আছে? জিজ্ঞাসা করা প্রশ্নের উত্তর দেওয়ার কাছাকাছি আসে না ..
মোলম্বি

2
আমি যখন "git ssh আপডেট হোস্ট কী স্বয়ংক্রিয়ভাবে" গুগল করব তখন আপনার প্রশ্ন দ্বিতীয় দিকে আসে। এই উত্তরটি আমি যা খুঁজছিলাম is আমি যা চাই ঠিক তা দিয়ে একটি নতুন প্রশ্ন খোলার এটি নকল হিসাবে বন্ধ হতে পারে।
জেসন গোয়েমাট

হোস্টনামটিও কাজ করে
দামালুয়ার

18

খুব সহজ উপায় হ'ল:

cp ~/.ssh/known_hosts ~/.ssh/known_hosts.bak

তারপরে মূল কীটি সাফ করার জন্য পরিচিত_হোস্টগুলি সম্পাদনা করুন, তারপরে হোস্টের কাছে এসএসএস করুন:

ssh name@computer

এটি স্বয়ংক্রিয়ভাবে নতুন কী যুক্ত করবে; তারপরে দুটি ফাইলের তুলনা করুন। মেল্ডের মতো একটি প্রোগ্রাম দুটি ফাইলের তুলনা করার একটি দুর্দান্ত উপায়। তারপরে জ্ঞাত_হোস্টগুলিতে উভয় কী রয়েছে বলে ফাইলগুলি মার্জ করুন

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

সম্পাদনা 2015/06

আমার যুক্ত করা উচিত, এখনই এটি পুনর্বিবেচনা করা উচিত যে আমি আরও সরল উপায়ে লক্ষ্য করি [যতক্ষণ না এন্ট্রিটি সনাক্তকরণযোগ্য, ততক্ষণ হোস্ট-নেম / আইপি ঠিকানা থেকে নির্দিষ্ট অবস্থান উল্লেখ করে ত্রুটি বার্তা থেকে বেশ কিছুটা দূরে থাকে];

  1. অস্থায়ীভাবে জ্ঞাত_হোস্টগুলিতে 'পুরানো' প্রবেশের শুরুতে # যুক্ত করতে পরিচিত_হোস্টগুলি সম্পাদনা করুন
  2. [হোস্টের সাথে এসএসএস] সংযুক্ত করুন, নতুন কী 'স্বয়ংক্রিয়ভাবে' যুক্ত করার অনুরোধে সম্মত হন
  3. তারপরে # অপসারণের জন্য ज्ञात_হোস্টগুলি পুনরায় সম্পাদনা করুন

এমনকি হোস্টকিএলিয়াস বিকল্প হিসাবে আছে

ssh -o HostKeyAlias=mynewaliasforthemachine name@computer

তারপরে, ssh ক্লায়েন্টটি উপনামের নীচে নতুন কী যুক্ত করার পরে, আপনি হয় পরিচিতের জন্য 'আসল' হোস্ট-নেম / আইপি ঠিকানাটির পরিবর্তে উপন্যাসের বিকল্পের সাথে সেই হোস্টের অবতারের সাথে সংযুক্ত হতে পারেন



এটিই মেল্ড :) অ্যাপটি-গেট / ইয়ম ইনস্টলের নামটি কেবল মেল্ড হয়
চিহ্নিত করুন

আমি আপনার পরামর্শের বৈকল্পিকটি করেছি যা ভালভাবে কাজ করেছে - সিপি, এমভি, তারপরে এসএসএসের পরিবর্তে, তারপর বিড়াল ~ / .ssh / ज्ञात_হোস্টস.বাক ak / .ssh / ज्ञात_হোস্টস> টিএমপি; এমভি tmp ~ / .ssh / জ্ঞাত_হোস্টস
পিটার এন লুইস

6

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

10.10.10.110 pi-dev
10.10.10.110 pi-xbmc
10.10.10.110 pi-etc

পরিচিত_হোস্ট ফাইলটি হোস্ট নামের দ্বারা আঙুলের ছাপগুলি সংরক্ষণ করে তাই এটি একই আইপি ঠিকানা হলেও প্রতিটি স্বতন্ত্র হোস্টের নাম পৃথক প্রবেশ করে।

আমি যখনই নতুন সিস্টেম ব্যবহার করি তখন হোস্ট ফাইলগুলিতে নাম যুক্ত করে অসুস্থ হয়ে পড়েছি তাই আইপি ঠিকানায় শীর্ষস্থানীয় শূন্যগুলি ব্যবহার করে আমি আরও অলস উপায় নিয়ে এসেছি:

$ ssh pi@10.10.10.110
$ ssh pi@010.10.10.110
$ ssh pi@10.010.10.110

(অযৌক্তিক) আইপি ঠিকানার প্রতিটি পরিবর্তনের সাথে পরিচিত_হোস্টগুলিতে এটির নিজস্ব প্রবেশ রয়েছে gets


1
ওপেনএসএসএইচ লোকেরা আমার কাছে বুদ্ধিমান হয়েছে, এই লুপফোলটি আর সাম্প্রতিক সংস্করণগুলিতে আর কাজ করে না।
মাইক

আপনি ব্যবহার করতে পারেন CheckHostIP noমধ্যে ~/.ssh/configএখনও ঘুলঘুলি ব্যবহার করতে সক্ষম হতে হবে। আপনি এমনকি আপনার এলিয়াসগুলি এখানে সংজ্ঞায়িত করতে পারেন যাতে আপনাকে এই 3 টি হোস্টনামের সাথে খাঁটি করতে /etc/hostsএবং সংজ্ঞা দিতে হবে না CheckHostIP no
GnP

3

যদি আপনার ক্লায়েন্ট এবং সার্ভার উভয় OpenSSH- র 6.8 অথবা ঊর্ধ্বতন সংস্করণ আছে, আপনি ব্যবহার করতে পারেন UpdateHostKeys yesআপনার বিকল্প ssh_configবা ~/.ssh/config। উদাহরণ স্বরূপ:

Host *
    UpdateHostKeys yes

এটি সার্ভারের থাকা সমস্ত হোস্ট কীগুলি এসএসএইচ সংরক্ষণ করে known_hostsএবং যখন কোনও সার্ভার একটি হোস্ট কী পরিবর্তন করে বা সরিয়ে দেয় তখন কীটি আপনার মধ্যে পরিবর্তন বা অপসারণ করা হবে known_hosts


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

1

আপনি কেন দুটি কী দিয়ে কাজ করতে চান তা আমি দেখতে পাচ্ছি না তবে আপনি অবশ্যই ~/.ssh/known_hostsফাইলটিতে একাধিক বৈধ কী যুক্ত করতে পারেন তবে আপনাকে এটি ম্যানুয়ালি করতে হবে।

আর একটি সমাধান হতে পারে StrictHostKeyChecking=noএই নির্দিষ্ট হোস্টের বিকল্পটি ব্যবহার করা:

ssh -o StrictHostKeyChecking=no user@host

যা আপনি আপনার ~/.profileবা অনুরূপ কিছুতে একটি উপাধিতে রাখতে পারেন ।

alias hc=ssh -o StrictHostKeyChecking=no user@host

স্ট্রাইকহস্টকিচেকিং এই ক্ষেত্রে সহায়তা করবে বলে মনে হয় না; দৃশ্যত এটি কেবল তখন আচরণটি নির্দিষ্ট করে যখন হোস্টটি পরিচিত_হোস্ট ফাইলটিতে নেই। এখানে উল্লেখ করা হয়েছে: গসেমার
স্যামুয়েল এডউইন ওয়ার্ড

এটি এখানে কাজ করে। আপনি সতর্কতা পাবেন, কিন্তু লগইন অবিরত থাকবে।
সোভেন

অদ্ভুত জিনিস. আপনি কি পাসওয়ার্ড প্রমাণীকরণ ব্যবহার করছেন? আপনি কি ওপেনএসএইচ ব্যবহার করছেন?
স্যামুয়েল এডউইন ওয়ার্ড

1

আপনি যদি কেবল স্থানীয় নেটওয়ার্কে প্রবেশ করেন তবে ...

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

যেমন

cp known_hosts known_hosts.old
rm known_hosts
nano known_hosts

তারপরে নতুন বাফার (ফাইল) সংরক্ষণ করতে স্পেস, ব্যাকস্পেস cntl + x এবং 'y' টিপুন। এটির খারাপ অনুশীলন তবে ঠিক আছে আপনি আপনার স্থানীয় নেটওয়ার্কের বাইরে নিয়মিত ঝাঁকুনি দিচ্ছেন না (যেমন ইউনি বা ওয়ার্ক সার্ভার)

একটি সুরক্ষিত স্থানীয় নেটওয়ার্কে এটি নিরাপদ কারণ আপনি কেবল মাঝারি আক্রমণে একজনকে পেতে পারেন না।

আপনার বোঝার কোডটি ব্যবহার করা সর্বদা ভাল!


4
known_hostsপ্রতিবার পুরো ফাইলটি মুছে ফেলা অন্যথায় ssh দ্বারা সরবরাহ করা বেশিরভাগ সুরক্ষা উপেক্ষা করে চলেছে।
কাস্পার্ড

প্রকৃতপক্ষে, আমি তর্ক করব যে কোনও সুরক্ষিত অভ্যন্তরীণ নেটওয়ার্কে, আপনার কোডটি বোঝা এবং নির্বোধভাবে কোড অনুলিপি করার চেয়ে সুরক্ষা অবধারিত করা নিরাপদ। একটি বাহ্যিক নেটওয়ার্কে তখন পরিস্থিতি আলাদা হবে।
অ্যারন

-1

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

আপনাকে কঠোর হোস্ট চেকিং চালিয়ে যাওয়ার অনুমতি দেওয়ার জন্য এখানে একটি সহজ কৌশল, তবে কীটি পরিবর্তিত হওয়ার প্রত্যাশা করবেন তা নিয়ন্ত্রিত উপায়ে আপডেট করুন :

  • পুরানো কীটি সরিয়ে একটি কমান্ডে আপডেট করুন

    ssh-keygen -R server.example.com && \
        ssh -o StrictHostKeyChecking=no server.example.com echo SSH host key updated.
    
  • আইপি অ্যাড্রেস (এস) বা অন্যান্য হোস্টের নামগুলি যদি আপনি ব্যবহার করেন তবে তা পুনরাবৃত্তি করুন।

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

এই পদ্ধতিটি সংযোগটি যাচাই করে এবং এসএসএস কমান্ডে লগ করার জন্য একটি দুর্দান্ত বার্তা প্রকাশ করে (যা লগ ইন করে, হোস্ট কীটি আপডেট করে এবং এসএসএইচ হোস্ট কী আপডেট করে তাৎক্ষণিকভাবে প্রস্থান করে।

যদি আপনার ssh-keygen এর সংস্করণটি শূন্য-বহির্গমন প্রস্থান কোডটি দেয় এবং আপনি ত্রুটি ছাড়াই এটি পরিচালনা করতে পছন্দ করেন না, নির্বিশেষে বা পূর্বের সংযোগটি, কেবল ssh-keygen কমান্ডের কোনও ত্রুটি উপেক্ষা করে ক্রমানুসারে দুটি কমান্ড ব্যবহার করুন।

আপনি যদি এই কৌশলটি ব্যবহার করেন তবে আপনাকে কখনই আপনার ssh কমান্ডটি পরিবর্তন করতে হবে না বা হোস্ট চেকিং বন্ধ করতে হবে one এক ssh কমান্ড ব্যতীত। আপনি নিশ্চিত হতে পারেন যে ভবিষ্যতে ssh সেশনগুলি দ্বন্দ্ব ছাড়াই কাজ করবে বা স্পষ্টভাবে একটি নতুন কী গ্রহণ করার প্রয়োজন হবে, যতক্ষণ না উপরের এসএসএস কমান্ড ত্রুটি ছাড়াই চলে।


-3

আমারও একই সমস্যা ছিল।

আমি যা করেছি তা হ'ল sudo nano /home/user/.ssh/ host_allowএবং কীটি মুছে ফেললাম ।

আমি যখন সার্ভারে ফিরে যাই তখন এটি একটি নতুন কী যুক্ত করে।


2
কেন এটি ঘটে তার চারপাশে আরও কিছু তথ্য উত্তরের পক্ষে সহায়ক হবে।
ড্রু খুরি

-4

আপত্তিজনক লাইনটি সরানোর জন্য সেড কমান্ডটি ব্যবহার করুন

OUTPUT: as show in above example
Offending key in /home/user/.ssh/known_hosts:86

পরিচিত হোস্টগুলিতে উল্লিখিত হিসাবে 86 লাইনটি সরান।

CODE: 
sed -i '86d' /home/user/.ssh/known_hosts

পরবর্তী সময় ssh ব্যবহার করে অ্যাক্সেস করার সময়, সিস্টেম স্বয়ংক্রিয়ভাবে নতুন কী যুক্ত করবে।

ssh এর নতুন সংস্করণ

ব্যবহার করুন:

ssh-keygen -R <hostname|ip address>

এটি হোস্টনাম এন্ট্রি সরিয়ে ফেলবে এবং পুরানো .known_hostহিসাবে ব্যাকআপ নেবেknown_hosts.old


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