অন্য ব্যবহারকারীর জন্য পাসওয়ার্ডহীন ssh?


14

আমি একটি সাবভার্সন প্রকল্পের জন্য একটি পাসওয়ার্ডহীন ssh সংযোগ করতে চাই। এই মুহূর্তে আমি ssh + svn ব্যবহার করছি, এবং এটি কিছুটা বিরক্তিকর, কারণ সার্ভারের সাথে লেনদেন করতে যে কোনও সময় আমাকে পাসওয়ার্ডটি টাইপ করতে হবে।

পাসওয়ার্ডহীন এসএসএসের কী কীভাবে তৈরি করা যায় সে সম্পর্কে আমি ওয়েবে বেশ কয়েকটি টিউটোরিয়াল পেয়েছি, তবে তারা সবাই ধরেই নেবে যে আমি আমার হোম সিস্টেমের জন্য যেমন দূরবর্তী সিস্টেমে একই ব্যবহারকারীর ব্যবহার করছি। তবে, আমি ssh + svn এর জন্য যে ব্যবহারকারীর নামটি ব্যবহার করি তা হ'ল আমি যে সিস্টেমে চলছি তার ব্যবহারকারীর অ্যাকাউন্টের নাম। আমি কীভাবে এটি সঠিকভাবে সেট আপ করব? আমি কী ফাইলটিতে নাম পরিবর্তন করে ভাগ্য পাইনি।

উত্তর:


15

আপনাকে svnকমান্ডটিতে কেবল অন্য সিস্টেমের ব্যবহারকারীর নাম সরবরাহ করতে হবে :

$ svn co svn+ssh://otheruser@othersystem/path/to/repo

আপনার প্রশ্নের শিরোনামের উত্তর দেওয়ার জন্যও:

$ ssh otheruser@othersystem

যার ফলে আপনি যে কমান্ডটি কমান্ডটি টাইপ করছেন তাতে মেশিনে প্রাইভেট কী-র সাথে সম্পর্কিত কীগুলি sshdদূরবর্তী মেশিনে সন্ধান ~otheruser/.ssh/authorized_keysকরতে পারে।


1
সুতরাং নির্দেশগুলির অংশটি ছিল একটি ফাইল তৈরি .ssh/id_rsa.pubকরা এবং এটি দূরবর্তী সার্ভারে আপলোড করা। আমি যখন এটি তৈরি করলাম, এটি স্থানীয় স্থানীয় নাম @ লোকালসিস্টেম দিয়ে শেষ হয়েছিল। এটিকে @ রিমোটেসিস্টেমে রিমোট ইউজারনেমে পরিবর্তন করা উচিত, তাই না? স্থানীয় এবং দূরবর্তী উভয়ই?
ব্যবহারকারী 394

5
নং শুধু আপনার স্থানীয় বিষয়বস্তু যোগ id_rsa.pubকরার authorized_keysদূরবর্তী সিস্টেমে। এটা কাজ করবে।
ওয়ারেন ইয়ং

1
পর্যায়ক্রমে, এই সমস্যাটি সমাধান করার জন্য অনেক সিস্টেমে ssh-copy-id রয়েছে: "ssh-copy-id -i। / .ssh / id_rsa.pub ব্যবহারকারীর নাম @ দূরবর্তী-মেশিন"
ম্যাট সিমন্স

দুর্ভাগ্যক্রমে, অনেকে তা করেন না এবং এটি মনে হয় এটি ওপেনএসএইচ-এর একটি স্ট্যান্ডার্ড অংশ নয়, সুতরাং এই স্ক্রিপ্টটির বিভিন্ন ক্ষেত্রে প্রায় কমপক্ষে কয়েকটি ভাসমান রয়েছে।
ওয়ারেন ইয়ং

আপনি যদি জিনোম সমুদ্রের ঘোড়া ব্যবহার করছেন তবে কীগুলি স্বয়ংক্রিয়ভাবে স্থাপন করা হবে।
ম্যাকিয়েজ পাইচোটকা

9

এই কাজটি করার দুটি পদ্ধতি আছে:

1) ব্যবহারকারীর @ এসএনএন ইউআরএল মধ্যে রাখুন; এটি svn + ssh কে সেই ব্যবহারকারী হিসাবে লগইন করতে বলে। আমি মনে করি এটি রক্ষণাবেক্ষণের দৃষ্টিকোণ থেকে এক ধরণের খারাপ ধারণা কারণ ভান্ডারটির অন্যান্য অংশের বাহ্যিকগুলির মতো জিনিসগুলি সঠিকভাবে কাজ করবে না।

2) একটি ~ / .ssh / config ( ssh_config হিসাবে নথিভুক্ত ) তৈরি করুন যা এরকম কিছু বলে:

Host othersystem
  User otheruser

অন্য সিস্টেমে ssh করার যে কোনও প্রচেষ্টা অন্য ব্যবহারকারীকে ব্যবহারের ক্ষেত্রে ডিফল্ট হবে। ম্যানুয়ালি এসএসএস করার পাশাপাশি যখন আপনি এসএনএন ব্যবহার করছেন তখন এটি আপনার পক্ষে কার্যকর।


5

উভয় ম্যাশেইনে আপনার একই ব্যবহারকারীর নাম থাকতে হবে না। যতক্ষণ আপনি কী ( ssh-keygen) তৈরি করেন ততক্ষণ আপনাকে স্থানীয় সার্ভার থেকে লাইনটি কপি করতে হবে ~/.ssh/id_rsa.pubবা ~/.ssh/id_dsa.pub(কী এর ধরণের উপর নির্ভর করে) এবং এটি ~/.ssh/authorized_keysরিমোটে যুক্ত করতে হবে।

% ssh-keygen
% cat ~/.ssh/id_*.pub | ssh remoteuser@remoteserver 'cat > .ssh/authorized_keys'

যদি আপনি remoteuserপ্রতিটি টাইপ করতে না চান তবে এতে যোগ করুন ~/.ssh/config:

Host remoteserver
    User remoteuser

পুনশ্চ. নাম কী আকারে হতে পারে localuser@localhostকিন্তু এটা শুধুমাত্র একটি নাম । এটি ঠিক পাশাপাশি হতে পারে myfavouritekey@myfavouritecomputerএবং দুপুরের যত্ন নিতে হবে।


উপরের "বিড়াল" কমান্ডটি উপরে ssh-copy-idউল্লিখিত সাধারণ তবে অমানুষিক স্ক্রিপ্টের মূল । আমি এটিকে চিনতে পারি কারণ আমি ব্যবহার করি এমন সমস্ত সিস্টেমই আসে না ssh-copy-id, তাই আমি কয়েকবারের বেশি এরকম কিছু টাইপ করেছি। :)
ওয়ারেন ইয়ং

আমি কখনই শুনিনি ssh-copy-id। আমি সাধারণত ব্যবহার করি vimবা seahorse;)
ম্যাকিয়েজ পাইচোটকা

0

আমি .ssh / কনফিগারেশন তৈরি করার পরে চালাব:

cat ~/.ssh/id_*.pub | ssh remoteuser@remoteserver 'cat > .ssh/authorized_keys'

আমি ত্রুটি পেয়েছি:

Bad owner or permissions on /usr/share/eprints3/.ssh/config

তারপরে আমি যুক্ত করব chmod 600 .ssh/configএবং এর পরে এটি মসৃণ চলছে।

enter code here

1
আপনি যদি এটি অনুমোদিত_কিগুলি ফাইলে সংযুক্ত করেন তবে এটি আরও ভাল, অন্যথায় এটি অন্যের পাব কীগুলিও সরিয়ে ফেলবে। আপনার উত্তরটি যদি 'বিড়াল >>। এসএসএইচ / অনুমোদিত_কিজ' দিয়ে সম্পাদনা করা যায় তবে আরও ভাল
নীতিন মহেশ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.