मैं अपने ssh सर्वर द्वारा समर्थित एमएसीएस, सिफर्स और केएक्सऑलग्रिथम्स को कैसे सूचीबद्ध कर सकता हूं?


19

मैं अपने ssh सर्वर द्वारा समर्थित समर्थित मैक, सिफर, की लंबाई और KexAlogrithms कैसे निर्धारित कर सकता हूं?

मुझे बाहरी सुरक्षा ऑडिट के लिए एक सूची बनाने की आवश्यकता है। मैं कुछ इसी तरह की तलाश में हूं openssl s_client -connect example.com:443 -showcerts। मेरे शोध से sshडिफ़ॉल्ट सिफर का उपयोग करता है जैसा कि सूचीबद्ध है man sshd_config। हालाँकि मुझे एक ऐसे समाधान की आवश्यकता है जिसका उपयोग मैं एक स्क्रिप्ट में कर सकता हूँ और man sshd_configमुख्य लंबाई के बारे में जानकारी को सूचीबद्ध नहीं करता है । मैं अपने आप को यहाँ सही करने के लिए की जरूरत है: आप निर्दिष्ट कर सकते ServerKeyBitsमें sshd_config

मुझे लगता है कि मुझे ssh -vv localhost &> ssh_connection_specs.outजो जानकारी चाहिए, वह मुझे वापस मिल जाएगी, लेकिन मुझे यकीन नहीं है कि सूचीबद्ध सिफर ग्राहक या सर्वर द्वारा समर्थित सिफर हैं। इसके अलावा, मुझे यकीन नहीं है कि एक स्क्रिप्ट में इस गैर संवादात्मक को कैसे चलाया जाए।

क्या SSHकनेक्शन जानकारी प्राप्त करने का एक सुविधाजनक तरीका है ?


3
यह पता चला कि sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"@Jakuje द्वारा सुझाए गए केवल RHEL7 होस्ट पर काम करता है, लेकिन RHEL6 पर नहीं। मैं का उपयोग कर समाप्त हो गया nmap --script SSH2-hostkey localhostऔरnmap --script ssh-hostkey localhost
हेनरिक Pingel

ssh -vvक्लाइंट (सर्वर) और क्लाइंट से सर्वर (स्टोक) के लिए क्लाइंट के रूप में समर्थित कार्यक्षमता को आउटपुट करता है। हालांकि, ऐसा लगता है कि ये आउटपुट दोनों पक्षों के समर्थन तक सीमित हैं, जिससे उन्हें सुरक्षा ऑडिट के लिए कम उपयोगी बनाया जा सकता है।
मोशे

जवाबों:


18

आप अपने प्रश्न में कुछ बिंदुओं को याद करते हैं:

  • आपका ओपनश संस्करण क्या है? यह संस्करणों पर थोड़ा भिन्न हो सकता है।
  • ServerKeyBits प्रोटोकॉल संस्करण 1 का विकल्प है, जिसे आपने उम्मीद से निष्क्रिय कर दिया है!

समर्थित सिफर, एमएसीएस और केएक्सलायोरिज्म हमेशा मैनुअल में उपलब्ध होते हैं और इसमें कुछ भी सामान्य लंबाई के साथ नहीं होता है।

सक्षम चिपर्स, एमएसीएस और केएक्सलायोरिज्म वे हैं जो कनेक्शन का उपयोग करते हुए पेश किए जाते हैं। लेकिन उन्हें अन्य तरीकों से भी प्राप्त किया जा सकता है, उदाहरण के लिएsshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"

अपने सर्वर की (की) की लंबाई पाने के लिए, आप ssh-keygen का उपयोग कर सकते हैं: ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub

लेकिन आप शायद उन महत्वपूर्ण आकारों को भी चाहेंगे जो कुंजी एक्सचेंज के दौरान पेश किए जाते हैं और उपयोग किए जाते हैं, लेकिन यह वास्तव में प्रमुख विनिमय पद्धति पर निर्भर करता है, लेकिन यह डिबग आउटपुट से भी पठनीय होना चाहिए ssh -vvv host


1
धन्यवाद। यह पता चला कि sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"केवल मेरे आरएचईएल 7 मेजबान ने काम किया, लेकिन आरएचईएल 6 ने नहीं। मैं का उपयोग कर समाप्त हो गया nmap --script SSH2-hostkey localhostऔरnmap --script ssh-hostkey localhost
हेनरिक Pingel

1
नवीनतम ओपनशेड अद्यतन के साथ आरएचईएल 6 होस्ट को भी इसे ठीक करना चाहिए।
जकूजी

उस बारे में आप सही हैं। मैंने केवल एक पुराने वीएम पर जांच की ... धन्यवाद
हेनरिक पिंगेल

sshd -T केवल sshd_config फ़ाइल में कॉन्फ़िगर किए गए ciphers के बारे में जानकारी प्रदान करेगा, न कि क्या वास्तव में इसे द्विआधारी द्वारा समर्थित होने के रूप में जोड़ा जा सकता है
डैनियल जे।

11

मैं अपने ssh सर्वर द्वारा समर्थित समर्थित मैक, सिफर, की लंबाई और KexAlogrithms कैसे निर्धारित कर सकता हूं?

ऐसा लगता है कि /superuser//a/1219759/173408 पर उत्तर आपके प्रश्न का उत्तर है। यह एक पंक्ति में फिट बैठता है:

nmap --script ssh2-enum-algos -sV -p 22 1.2.3.4

यहाँ वर्तमान SSH संस्करण के साथ एक सादे डेबियन 9.4 मशीन पर आउटपुट दिया गया है:

2018-05-22 13:40 CEST पर नॅम्प 7.01 (https://nmap.org) शुरू
1.2.3.4 के लिए Nmap स्कैन रिपोर्ट
होस्ट ऊपर (0.00024s विलंबता) है।
पोर्ट स्टेट सर्विस वर्जन
22 / tcp ओपन ssh OpenSSH 7.4p1 डेबियन 10 + deb9u3 (प्रोटोकॉल 2.0)
| SSH2-enum-algos:
| kex_algorithms: (10)
| curve25519-SHA256
| curve25519-sha256@libssh.org
| ECDH-SHA2-nistp256
| ECDH-SHA2-nistp384
| ECDH-SHA2-nistp521
| Diffie-Hellman-समूह-विनिमय-SHA256
| Diffie-Hellman-group16-SHA512
| Diffie-Hellman-group18-SHA512
| Diffie-Hellman-group14-SHA256
| Diffie-Hellman-group14-SHA1
| server_host_key_algorithms: (5)
| ssh-rsa
| आरएसए-sha2-512
| आरएसए-sha2-256
| ECDSA-SHA2-nistp256
| ssh-ed25519
| एन्क्रिप्शन_ एल्गोरिदम: (6)
| chacha20-poly1305@openssh.com
| AES128-सीटीआर
| aes192-सीटीआर
| AES256-सीटीआर
| aes128-gcm@openssh.com
| aes256-gcm@openssh.com
| mac_algorithms: (10)
| umac-64-etm@openssh.com
| umac-128-etm@openssh.com
| hmac-sha2-256-etm@openssh.com
| hmac-sha2-512-etm@openssh.com
| hmac-sha1-etm@openssh.com
| umac-64@openssh.com
| umac-128@openssh.com
| HMAC-sha2-256
| HMAC-sha2-512
| HMAC-SHA1
| संपीड़न_ एल्गोरिथम: (2)
| कोई नहीं
| _ zlib@openssh.com
सेवा की जानकारी: ओएस: लिनक्स; CPE: cpe: / o: linux: linux_kernel

सेवा का पता लगाया। कृपया https://nmap.org/submit/ पर किसी भी गलत परिणाम की सूचना दें।
नंप किया गया: 1 आईपी एड्रेस (1 होस्ट अप) 0.52 सेकंड में स्कैन किया गया

1
मुझे PORT STATE SERVICE VERSION 22/tcp filtered sshइस कमांड के साथ मिलता है - हालांकि मैं ssh के माध्यम से उसी सर्वर पर लॉगिन कर सकता हूं।
हे

क्या आपने सचमुच कमांड का उपयोग किया था, या आपने 1.2.3.4अपने सर्वर के आईपी के साथ प्रतिस्थापित किया था ?
स्टीफन गौरिचोन

मैंने अपने सर्वर के आईपी का उपयोग किया।
हे
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.