आप इसे रिटर्न-वैल्यू ssh के साथ देख सकते हैं:
$ ssh -q user@downhost exit
$ echo $?
255
$ ssh -q user@uphost exit
$ echo $?
0
संपादित करें: एक और तरीका होगा नैम्प का उपयोग करना (आपको चाबी या लॉगिन-सामान की आवश्यकता नहीं होगी):
$ a=`nmap uphost -PN -p ssh | grep open`
$ b=`nmap downhost -PN -p ssh | grep open`
$ echo $a
22/tcp open ssh
$ echo $b
(empty string)
लेकिन आपको संदेश को संक्षिप्त करना होगा (यदि पोर्ट को फ़िल्टर, बंद या खुला हुआ है तो दिखाने के लिए nmap रिटर्न-वैल्यू का उपयोग नहीं करता है)।
EDIT2:
यदि आप ssh-port की वास्तविक स्थिति में रुचि रखते हैं, तो आप इसके grep open
साथ स्थानापन्न कर सकते हैं egrep 'open|closed|filtered'
:
$ nmap host -PN -p ssh | egrep 'open|closed|filtered'
बस पूरा होना है।
ssh-keygen
स्थानीय मशीन पर कीपर उत्पन्न करने के लिए चलती है, फिरssh-copy-id
रिमोट मशीन के लिए सार्वजनिक कुंजी की प्रतिलिपि बनाने के लिए। ऐसा लगता है कि आप चीजों को अलग तरह से कर रहे हैं। क्यों, आपका लक्ष्य क्या है?