ssh কমান্ড লাইন সার্ভার হোস্ট কী ফিঙ্গারপ্রিন্ট নির্দিষ্ট করে


15

sshকমান্ড লাইন (ওপেনএসএসএইচ) ব্যবহার করে , আমি কি সার্ভারের হোস্ট কী ফিঙ্গারপ্রিন্টটি নির্দিষ্ট করতে পারি?

Winscp.com ব্যবহার করে এটি সম্ভব (উদাঃ) -hostkey="ssh-rsa 2048 AA:BB:CC...etc

আমি ম্যান পৃষ্ঠাটি কয়েকবার পড়েছি, আমি যদি সেখানে স্পষ্ট না মিস করি তবে আমি ক্ষমাপ্রার্থী।

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


-ও ব্যবহারকারীর জ্ঞাতহোস্টফিল কোনও অস্থায়ী ফাইলের সাথে কাজ করতে পারে।
পাও

উত্তর:


16

হোস্ট কী ফিঙ্গারপ্রিন্ট পাস করার জন্য ওপেনএসএসএইচে কোনও কমান্ড-লাইন বিকল্প নেই।

যদিও আপনি একটি অস্থায়ী ফাইল (একই ফর্ম্যাট সহ known_hosts) sshব্যবহার করতে পারেন এবং এটি ব্যবহার করে এটি ব্যবহার করতে পারেন -o UserKnownHostsFile:

ssh -o "UserKnownHostsFile my_temp_known_host" host.example.com

দেখুন ssh(জন্য -o) এবং ssh_config(জন্য UserKnownHostsFileman পৃষ্ঠা)।


আপনি এটি ব্যবহার বিবেচনা করতে পারেন StrictHostKeyChecking yes


কমান্ড লাইন থেকে অটো গ্রহণের জন্য আরএসএ কী ফিঙ্গারপ্রিন্টের পরামর্শ অনুসারে আপনি একটি ছোট স্ক্রিপ্ট লিখতে পারেন যা আপনাকে এটি অর্জন করতে দেয়:

#!/bin/bash

TEMPFILE=$(mktemp)
echo "$1" > $TEMPFILE

ssh -o "UserKnownHostsFile $TEMPFILE" ${@:2}

rm $TEMPFILE

আপনি যদি স্ক্রিপ্টটি কল করেন ssh_known_host, আপনি এটি প্রথম যুক্তি হিসাবে কীটি পাস করে ব্যবহার করতে পারেন:

ssh_known_host 'github.com ssh-dss AAAAB3NzaC1kc3MAAACBANGFW2P9xlGU3zWrymJgI/lKo//ZW2WfVtmbsUZJ5uyKArtlQOT2+WRhcg4979aFxgKdcsqAYW3/LS1T2km3jYW/vr4Uzn+dXWODVk5VlUiZ1HFOHf6s6ITcZvjvdbp6ZbpM+DuJT7Bw+h5Fx8Qt8I16oCZYmAPJRtu46o9C2zk1AAAAFQC4gdFGcSbp5Gr0Wd5Ay/jtcldMewAAAIATTgn4sY4Nem/FQE+XJlyUQptPWMem5fwOcWtSXiTKaaN0lkk2p2snz+EJvAGXGq9dTSWHyLJSM2W6ZdQDqWJ1k+cL8CARAqL+UMwF84CR0m3hj+wtVGD/J4G5kW2DBAf4/bqzP4469lT+dF2FRQ2L9JKXrCWcnhMtJUvua8dvnwAAAIB6C4nQfAA7x8oLta6tT+oCk2WQcydNsyugE8vLrHlogoWEicla6cWPk7oXSspbzUcfkjN3Qa6e74PhRkc7JdSdAlFzU3m7LMkXo1MHgkqNX8glxWNVqBSc0YRdbFdTkL0C6gtpklilhvuHQCdbgB3LBAikcRkDp+FCVkUgPC/7Rw==' git@github.com

কোন সূত্র কেন -o UserKnownHostsFile=<(echo "hostname ssh-rsa ...")কাজ করে না?
ক্যাস্পারড

2
@ ক্যাস্পার্ড সম্ভবতঃ কারণ এফডি তৈরি করা <()কেবল একবারই পড়তে পারে, যখন sshফাইলটি বারবার পড়ছে।
মার্টিন প্রিক্রিল

স্ট্রাইকটহস্টকিচেকিং ব্যবহার করে আপনার উত্তর এবং পরামর্শের জন্য আপনাকে ধন্যবাদ। এই সমাধানটি আমার পক্ষে কাজ করবে।
পাইও

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