এসএসএইচ কনফিগারেশনে হোস্ট এবং হোস্টনামের মধ্যে পার্থক্য কী?


23

ম্যান পেজ এটি বলে:

নিমন্ত্রণকর্তা

হোস্টটি নিম্নলিখিত ঘোষণাগুলি সীমাবদ্ধ করে (পরবর্তী হোস্ট কীওয়ার্ড অবধি) কেবল সেই হোস্টদের জন্য যা কীওয়ার্ডের পরে প্রদত্ত একটি নিদর্শনগুলির সাথে মেলে। যদি একাধিক প্যাটার্ন সরবরাহ করা হয় তবে এগুলি সাদা স্থান দ্বারা পৃথক করা উচিত। প্যাটার্ন হিসাবে একটি একক `* 'সমস্ত হোস্টের জন্য গ্লোবাল ডিফল্ট সরবরাহ করতে ব্যবহার করা যেতে পারে। হোস্ট হ'ল কমান্ড লাইনে প্রদত্ত হোস্টনাম আর্গুমেন্ট (উদাহরণটি মিলে যাওয়ার আগে নামটি ক্যানোনিকালাইজড হোস্ট নামে রূপান্তরিত হয় না)।

একটি প্যাটার্ন এন্ট্রিটিকে বিস্মৃত চিহ্ন (`! ') দিয়ে উপসর্গ করে অবহেলা করা যেতে পারে। যদি একটি অবহেলিত এন্ট্রি মিলে যায় তবে লাইন ম্যাচের অন্য কোনও নমুনা নির্বিশেষে হোস্ট এন্ট্রি উপেক্ষা করা হবে। নেতিবাচক মিলগুলি ওয়াইল্ডকার্ড ম্যাচগুলির জন্য ব্যতিক্রমগুলি সরবরাহ করতে দরকারী are

নিদর্শন সম্পর্কিত আরও তথ্যের জন্য PATTERNS দেখুন।

হোস্টনাম

হোস্টনাম লগ ইন করতে আসল হোস্টের নামটি নির্দিষ্ট করে। এটি হোস্টগুলির জন্য ডাক নাম বা সংক্ষিপ্তকরণ নির্দিষ্ট করতে ব্যবহার করা যেতে পারে। হোস্টনেমটিতে অক্ষর ক্রম `% h 'রয়েছে, তবে এটি কমান্ড লাইনে নির্দিষ্ট হোস্ট নামের সাথে প্রতিস্থাপন করা হবে (এটি অযোগ্য নামগুলি পরিচালনার জন্য দরকারী)। পূর্বনির্ধারিত নামটি কম্যান্ড-লাইনে দেওয়া নাম। সংখ্যাযুক্ত আইপি ঠিকানাগুলিও অনুমোদিত (উভয় কমান্ড লাইনে এবং হোস্টনামের নির্দিষ্টকরণে) in

উদাহরণস্বরূপ, আমি যখন গিটহাবের জন্য এসএসএইচ কনফিগারেশন তৈরি করতে চাই, তখন হোস্ট এবং হোস্টনেম যথাক্রমে কী হওয়া উচিত?


3
সংক্ষেপে: এসএসএইচ চালানোর সময় Hostব্যবহারকারী সিআলআই-এ ইনপুট হিসাবে যে স্ট্রিং দেয় ; সার্ভারের সাথে সংযোগ স্থাপনের চেষ্টা করার সময় HostNameএসএসএইচ ক্লায়েন্টটি সেই স্ট্রিংটি নেটওয়ার্কের মাধ্যমে আউটপুট আনে।
সাম্পাব্লুকপার ২

উত্তর:


15

গিথুব ডট কমের জন্য আপনার দেখতে ~/.ssh/configসম্ভবত এ রকম দেখাবে

Host github.com
    IdentityFile ~/.ssh/key_name_for_github

হোস্টনামের জন্য: যেমনটি মানুষ বলে যে এটি আপনাকে হোস্টের জন্য সংক্ষেপণ নির্দিষ্ট করতে দেয়। উদাহরণস্বরূপ, যদি আপনার ~/.ssh/configচেহারাটি এর মতো হয়

Host host1
    HostName host1.example.com
Host host2
    HostName anotherdomain.com

তারপরে আপনি যখন টাইপ করবেন

  • ssh host1আপনি আসলে হোস্ট 1.example.com এ লগইন করেছেন
  • ssh host2anotherdomain.com এ লগইন করুন

আমি অনুমান করছি যে আপনি আপনার দ্বিতীয় ~/.ssh/configউদাহরণে 'হোস্ট' এর পরিবর্তে 'হোস্টনেম' বোঝাচ্ছেন ?
ডেভ

6

সাধারণ ব্যবহারে:

Host আসল হোস্ট-নেম এবং এখানে নেই HostName

অথবা

Hostহোস্টের ডাক নাম HostNameএবং আসল হোস্ট-নেম।

সাধারণ উদাহরণ:

$ cat ~/.ssh/config
Host dev
    Hostname <hostname>
    User <username>
    IdentityFile <path_to_private_key>

$ ssh dev
# Equivalent to "ssh -i <path_to_private_key> <username>@<hostname>"

দ্রষ্টব্য: ম্যান পৃষ্ঠাটি প্রযুক্তিগতভাবে সঠিক, এটি কিছুটা অদ্ভুতভাবে শব্দযুক্ত। আমি স্পষ্টতার জন্য আরও কয়েকটি শব্দ যুক্ত করব:HostName Specifies the real host name to log into. This can be used *TOGETHER WITH 'HOST'* to specify nicknames or abbreviations for hosts.


1

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

হোস্ট কমান্ড লাইন যুক্তি সুনির্দিষ্ট করে এবং ক) প্রকৃত হোস্টের নাম / আইপি, খ) শর্টহ্যান্ড, গ) উপনাম হিসাবে বিবেচনা করা যেতে পারে। হোস্টনেম হ'ল আপনি যে মেশিনে সংযোগ করছেন তার আসল হোস্টনাম / আইপি। হোস্টনাম ফিল্ডে, আপনি কমান্ড লাইনে উল্লিখিত হোস্ট নেম স্ট্রিং হিসাবে আপনি% h ব্যবহার করতে পারেন। (এই অংশটি আমি আমার উদাহরণটিতে ব্যবহার করতে চেয়েছিলাম))

সুতরাং, আসুন আমরা বলি যে আপনার হোস্টের একটি সেট রয়েছে যেখানে হোস্ট-নেমটি আমার-প্রোজ-হোস্ট -... দিয়ে শুরু হয় এবং সেগুলি সমস্ত .my.proj.domain.com- এ থাকে এবং আমাকে নির্দিষ্ট ssh কী ব্যবহার করে তাদের লগ ইন করতে হবে আমার-প্রজেক-আইডি-আরএসএ এবং নির্দিষ্ট ব্যবহারকারী আইডি আমার-প্রজ-ব্যবহারকারী। আমার জীবনকে আরও সহজ করার জন্য, আমি নিম্নলিখিতগুলি ~ / .ssh / config ফাইলটিতে যুক্ত করব

আমার প্রকল্প-হোস্ট হোস্ট করুন *

হোস্টনাম% h.my.proj.domain.com

ব্যবহারকারী আমার প্রকল্প-ব্যবহারকারী

আইডেন্টিটি ফাইল। / .Ssh / আমার-প্রোজ-আইডি-আরএসএ

এখন, আমি টাইপ করতে পারেন

ssh আমার-প্রজ-হোস্ট -1234

কনফিগারেশন ছাড়া, এটি হত

ssh -i। / .ssh / my-proj-id-rsa my-proj-user@my-proj-host-1234.my.proj.domain.com

কিছুটা টাইপিং (এবং টাইপস) সংরক্ষণ করা।

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