পিটিটিওয়াইতে এসএসএইচ হোস্ট কীগুলি কী-কীগুলি পরিবর্তিত হওয়ার পরেও স্বয়ংক্রিয়ভাবে গ্রহণ করার কোনও উপায় আছে?


6

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

কয়েক শতাধিক ভার্চুয়াল মেশিন দিয়ে এটি করা মজাদার নয়।

সুতরাং, আমি জানতে চাই যে এমন কোনও কমান্ড সরঞ্জাম রয়েছে যা আমি পটিটিওয়াইয়ের জন্য হোস্ট কীটি স্বীকার করতে স্বয়ংক্রিয় করতে পারি? আমরা একটি বন্ধ ল্যাবে রয়েছি, তাই আমি সুরক্ষা নিয়ে খুব বেশি চিন্তিত নই।

আমি জানি লিনাক্স পরিবেশের জন্য কিছু সমাধান রয়েছে তবে এটি উইন্ডোজ this


3
ইতিমধ্যে সংজ্ঞায়িত একটি কী দিয়ে ভিএম তৈরি করবেন না কেন আপনি গ্রহণ করেছেন?
পল

এর রাজনীতিতে না গিয়ে সংক্ষিপ্ত উত্তরটি হ'ল না। ভিএম কীভাবে তৈরি করা হয় তার উপর আমার কোনও নিয়ন্ত্রণ নেই। তবে উত্তর দেওয়ার জন্য ধন্যবাদ।
স্পট

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

@Paul। হাই এবং হ্যাঁ, এটি এমন কিছু বাড়ির বিকাশের অ্যাপ্লিকেশন যা আমি এর অভ্যন্তরীণ কাজটি জানি না (এবং দুঃখিত আমি এসএসএইচ শংসাপত্র / কীগুলিতে এবং রেজিস্ট্রি কীভাবে ব্যবহৃত হয় সে সম্পর্কে খুব বেশি জানি না)। পুটি ব্যবহার করে কীগুলি / সার্টিটি গ্রহণ করার পরে অ্যাপটি সেই সার্ভার / ভিএম এর জন্য কাজ করার পরে আমি কেবল জানি। এবং উত্তর দেওয়ার জন্য ধন্যবাদ।
স্পট

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

উত্তর:


7

উপরের @ পল পিএসসিপি ব্যবহারের পরামর্শ দিয়েছেন। এটি দুর্দান্ত কাজ করে, অতি সাধারণ এবং সম্পূর্ণ লিপিযোগ্য:

 C:\> echo y | pscp.exe -l user -pw password -ls 192.168.0.1:/

5

তাদের অফিসিয়াল সাইটে, বিকাশকারীরা স্পষ্ট জানিয়ে দিয়েছিলেন যে এই জাতীয় বৈশিষ্ট্য পুটিটিওয়াইতে পাওয়া যাবে না (আমার জোর দিয়ে):

সমস্ত এসএসএইচ হোস্ট কীগুলি স্বয়ংক্রিয়ভাবে গ্রহণ করার জন্য একটি বিকল্প। কোনও কারণে প্রচুর লোক মনে করে এটি সত্যিই দরকারী বৈশিষ্ট্য হবে। আমি নিশ্চিত এটি খুব সুবিধাজনক হবে, কিন্তু নিরাপত্তা ব্যয়! হোস্ট কীগুলির সম্পূর্ণ বিন্দুটি হ'ল এটাই আপনার একমাত্র গ্যারান্টি যে আপনার এবং আপনার সার্ভারের মধ্যে একটি সক্রিয় আক্রমণকারী দ্বারা আপনার সংযোগ হাইজ্যাক করা হয়নি এবং আক্রমণকারী দ্বারা আপনার ডেটা ডিক্রিপ্ট করা হচ্ছে না এবং পুনরায় এনক্রিপ্ট করা হয়েছে that । আপনি যদি পিএসসিপি বা প্লিংক ব্যবহার করতে একটি স্বয়ংক্রিয় ব্যাচের কাজের সময় নির্ধারণ করতে চান, এবং ইন্টারেক্টিভ হোস্ট কী প্রম্পটটি এটি কঠিন করে তুলছে, সময় আগে রেজিস্ট্রে সঠিক হোস্ট কী যুক্ত করুন। (আপডেট, 2014-09-09: বা রেজিস্ট্রি উপলভ্য না হলে, আপনি কমান্ড লাইনে ডান কী বা ফিঙ্গারপ্রিন্ট নির্দিষ্ট করতে নতুন-হোস্টকি বিকল্পটি ব্যবহার করতে পারেন।হোস্ট কী চেকিং বন্ধ করার জন্য আমরা কোনও কমান্ড লাইন বিকল্প গ্রহণ করব না, যতই লোকজন ইতিমধ্যে কাজটি করেছে এবং আমাদেরকে মসৃণ উত্পাদন-মানের প্যাচগুলি প্রেরণ করে।

আপনার যদি সাধারণ `পরিচিত_হোস্টের ফর্ম্যাটে হোস্ট কী উপলব্ধ থাকে তবে তাদের কাছে উইন্ডোজ .REG ফাইলে রূপান্তর করার জন্য আমাদের কাছে একটি স্ক্রিপ্ট আছে যা ডাবল-ক্লিক করে সময়ের আগে ইনস্টল করা যেতে পারে।

সূত্র: http://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist/accept-host-keys.html

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


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

-1

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


-1

আমি জানি এটি একটি পুরানো পোস্ট, তবে এটি পর্স্কেল সহ পাওয়ারশেল ব্যবহার করার এবং সুরক্ষা কিছুটা রাখার উপায় হতে পারে। এটি এখনও একটি অসমাপ্ত পুরোপুরি পরীক্ষিত স্ক্রিপ্ট তবে সম্ভবত একটি উপায় ...

$storeddevicehostkeypath = "C:\temp\_hostkeys\keyfile.tmp"
pscp -batch -v dummyusertogethostkey@192.168.0.1:validatekey dummy2validatekey  2>&1  | tee -Variable allOutput | out-null
$stderr = $allOutput | ?{ $_ -is [System.Management.Automation.ErrorRecord] }
$stdout = $allOutput | ?{ $_ -isnot [System.Management.Automation.ErrorRecord] }
$hostkey = ([regex]"(?>ssh-[a-zA-Z0-9]{1,9}) (?>[0-9]{3,4}) ((?>[0-9a-f]{2}:){15}[0-9a-f]{2})").match("$stderr").Groups[1].value


"Validate if hostkey changed or already known"
if (test-path $storeddevicehostkeypath) {
    if ($hostkey -eq (gc $storeddevicehostkeypath)) {"Hostkey has not changed since last login"} else {"NO ACCESS GRANTED because of security rule! Hostkey has changed!"; exit 2}
} else {
    "hostkey not stored unter $storeddevicehostkeypath - creating new file"
    $hostkey | out-file -FilePath "$storeddevicehostkeypath"
}


"Trying to connect with hostkey $hostkey"
pscp -batch -hostkey $hostkey -v admin@192.168.0.1:sys back  2>&1  | tee -Variable allOutput | out-null
$allOutput[-1].ToString()

ইতিমধ্যে উল্লিখিত হিসাবে - পুরোপুরি পরীক্ষিত এবং অসম্পূর্ণ নয়

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