ইদানীং আমি প্রায়শই এসএসএইচ ক্লায়েন্টের কন্ট্রোলমাস্টার বৈশিষ্ট্যটি ব্যবহার করি যা আমাকে একই দূরবর্তী সিস্টেমে একাধিক শেল এবং পোর্ট ফরওয়ার্ডিংয়ের জন্য একটি একক এসএসএইচ-টিসিপি-সংযোগ ব্যবহার করতে দেয়। এটি সম্পর্কে সবচেয়ে বিরক্তিকর বিষয় হ'ল যে প্রথম শেলের প্রক্রিয়াটি খোলা হয় তা স্বয়ংক্রিয়ভাবে কন্ট্রোলমাস্টারে পরিণত হয়। এর অর্থ, যদি এই প্রক্রিয়াটি সমাপ্ত হয়, তবে নিয়ন্ত্রণ মাস্টার সংযোগ ব্যবহার করে অন্য সমস্ত শেল এবং পোর্ট ফরওয়ার্ডিং অনুপলব্ধ হয়ে যায়।
আমি সত্যিই চাই যখন রিমোট সিস্টেমে প্রথম ssh কমান্ড একটি অতিরিক্ত ব্যাকগ্রাউন্ড প্রক্রিয়া উত্থাপন করবে যা কন্ট্রোলমাস্টার সংযোগটি ব্যবহার করার পরেও সংযোগ রাখে, সুতরাং আমি অন্যান্য প্রকট শঙ্কার ঝুঁকির মধ্যে থাকা প্রকৃত শেলগুলি কেবল বন্ধ করে দিতে পারি I সংযোগ। আদর্শভাবে ব্যাকগ্রাউন্ড কন্ট্রোলমাস্টার প্রক্রিয়াটি শেষ পর্যন্ত বন্ধ হওয়ার আগে কন্ট্রোলমাস্টারটি ব্যবহার করার জন্য নতুন শেল বা পোর্ট ফরওয়ার্ডিংয়ের জন্য অনেক সময় অপেক্ষা করতে সক্ষম হয়।
Ssh ক্লায়েন্টকে এমন কাজ করার কোনও উপায় আছে কি? আমি জানি আমি প্রথম শেলটি তৈরির জন্য ssh ব্যবহার করার আগে আমি নিজেই এই জাতীয় সংযোগ তৈরি করতে পারতাম, তবে আমি স্পষ্টভাবে বলতে চাই যে এটি স্বয়ংক্রিয়ভাবে ঘটুক কারণ অন্যথায় আমি অবশ্যই এখন এবং পরে তা করতে ভুলে যাব।
একটি মোড়ক স্ক্রিপ্টটি দেওয়া এত সহজ হবে না কারণ আমি প্রায়শই .ssh / কনফিগারেশনে রিমোট সার্ভারের নামগুলির জন্য কনফিগার করা শর্টহ্যান্ডগুলি ব্যবহার করি এবং কন্ট্রোলমাস্টার সকেটটি ব্যবহারকারী হিসাবে @NETWORK_NAME: NETWORK_PORT ব্যবহার করে তৈরি করা হয়। সুতরাং একটি মোড়কের উদ্দেশ্য হিসাবে কাজ করার জন্য .config / ssh পুরোপুরি বুঝতে হবে।