SuperMicro IPMI BMC को सुरक्षित करना


17

मैंने हाल ही में एक SuperMicro X8DTU-F मदरबोर्ड का अधिग्रहण किया है, जिसमें एक अंतर्निहित BMC है, जो मूल रूप से IPMI सिस्टम चलाता है। यह एआरएम प्रोसेसर पर चलने वाला एक छोटा लिनक्स सिस्टम है।

दुर्भाग्य से, यह सॉफ़्टवेयर का एक बोट लोड चल रहा है, जिसमें से मुझे ज़रूरत नहीं है, और मेरे पास इसे फ़ायरवॉल के पीछे रखने की क्षमता नहीं है। हालाँकि, मुझे IPMI की कार्यक्षमता चाहिए। क्या किसी ने भी इनमें से किसी एक का उपयोग किया है, इस बात पर कुछ विशिष्ट सुझाव हैं कि चीज़ को कैसे सुरक्षित किया जाए? यह अनिवार्य रूप से एक ROM फाइलसिस्टम से बूट होता है, और इसमें मौजूद किसी भी विभिन्न सर्वर को बंद करने के लिए कोई हुक भी नहीं लगता है।

मुझे इस बात में भी दिलचस्पी होगी कि मैं विभिन्न सेवाओं के माध्यम से सिस्टम तक पहुंचने के लिए उपयोग किए जाने वाले नामों और पासवर्डों की सूची को कैसे सत्यापित कर सकता हूं। डिफ़ॉल्ट ADMIN/ / है ADMIN, लेकिन / conf / / etc में से किसी भी फ़ाइल में 'ADMIN' नहीं है, जो मुझे चिंतित करता है। उनमें रहस्यमयी 'परीक्षण' आईडी के साथ फाइलें /conf/shadowऔर /conf/webshadowहैं, जो मुझे विशेष रूप से सहज महसूस नहीं करती हैं।


मुझे अभी तक छाया की सामग्री, वेबशैडो और वास्तव में मान्य उपयोगकर्ता क्या हैं, के बीच एक संबंध नहीं मिला है। BMC प्रबंधन के माध्यम से जोड़े गए नए उपयोगकर्ता इन फ़ाइलों में दिखाई नहीं देते हैं। इसके अलावा, "अनाम", "test1", "test2" उपयोगकर्ताओं के पास एक शेल होता है जो फ़ाइल सिस्टम पर मौजूद नहीं होता है।
डैनियल लॉसन

2
आईपीएमआई सिक्योरिटी बेस्ट प्रैक्टिसेस में डैन फार्मर गाइड भी देखें । उन्होंने हाल ही में एक पेपर जारी किया जिसमें IPMI के साथ IPMI : फ्रेट ट्रेन टू हेल नाम की कुछ महत्वपूर्ण सुरक्षा समस्याओं का उल्लेख किया गया है
स्टीफन लासवर्स्की

1
उस बेहतरीन लिंक के लिए धन्यवाद। सुरक्षा समस्याओं का संक्षिप्त सारांश fish2.com/ipmi/itrain-gz.html पर है और बहुत छोटा सारांश है, "आप पूरी तरह से खराब हैं।" आह।
कर्ट जे। सैम्पसन

जवाबों:


6

उपयोग करना /conf/crontab, जैसा कि dlawson ने बताया, मेरे लिए एक उत्कृष्ट विचार की तरह लगता है। यह मुझे एक मिनट में एक बार एक स्क्रिप्ट चलाने की अनुमति देता है जो सब कुछ सुनिश्चित करता है लेकिन http और ssh बंद है:

/etc/init.d/cdserver stop
/etc/init.d/fdserver stop
/etc/init.d/cim_sfcb stop
/etc/init.d/webgo stop

वह अभी भी मुझे पासवर्ड-आधारित अभिगम नियंत्रण के साथ एक वेब सर्वर के साथ छोड़ता है (मैं इसे क्लाइंट प्रमाणपत्रों को मान्य करने का कोई तरीका नहीं देख सकता) और कौन जानता है कि दूरस्थ कमजोरियां। इसे बंद करने पर जब मैं इसका उपयोग नहीं कर रहा हूं (जो कि ज्यादातर समय है) एक उचित समाधान की तरह लगता है; हर पांच या दस मिनट में इसे बंद करने के लिए एक कॉन्टैब प्रविष्टि को जोड़ने से उन मामलों को पकड़ा जा सकेगा जब कोई व्यक्ति इसे पूरा करने के लिए इसे बंद करना भूल जाता है।

Ssh डेमॉन ड्रॉपबियर का एक संस्करण है जो काफी भारी रूप से संशोधित प्रतीत होता है। यह उपयोगकर्ता नाम और प्लेनटेक्स्ट पासवर्ड /conf/PMConfig.dat(जो वेब सर्वर द्वारा भी उपयोग किया जाता है) को पढ़ता है , रूट उपयोगकर्ता के रूप में किसी भी मान्य नाम और पासवर्ड में लॉग करता है और ~/.ssh/authorized_keysफ़ाइल को अनदेखा करता है। यह आखिरी समस्या कष्टप्रद है; यह आपको पासवर्ड लॉगिन की अनुमति देने के लिए मजबूर करता है और जहां-जहां यह अपने नाम और पासवर्ड प्राप्त करता है, उसके आधार पर बैकस्ट की संभावना को खोलता है।

तो यह आपके सामने आने वाली दुविधा है: आप वास्तव में इस संशोधित ssh डेमॉन पर एक सिस्टम पर कितना भरोसा करते हैं जो स्पष्ट रूप से सुरक्षा-भोले डेवलपर्स द्वारा डिज़ाइन किया गया था? ज्यादा नहीं, क्रॉफ्ट की टूटी हुई बिट्स की संख्या को देखते हुए मैंने उनकी शेल स्क्रिप्ट में देखा है। असामान्य नामकरण परंपराएं (/etc/rc?.d/sshd /etc/init.d/ssh) के लिए एक सहिष्णुता है, बड़ी मात्रा में कोड जो अप्रयुक्त प्रतीत होते हैं, और केवल ssh स्टार्टअप स्क्रिप्ट में विशेषताएँ, जैसे कि /conf/portcfg_sshफ़ाइल और यहां तक कि restartआदेश पूरी तरह से टूट रहे हैं। (इनका उपयोग करने का प्रयास न करें; sshd पुनरारंभ नहीं होगा और जब तक आपके पास एक मौजूदा लॉगिन नहीं होगा, तब तक आप खराब हो जाएंगे। हमने BMC को रिबूट किया और इसे फिर से शुरू करने के लिए समाप्त कर दिया।)

सबसे अच्छा विकल्प मैं सोच सकता हूं, अगर कोई चीज का उपयोग करने जा रहा है, तो क्रोन जॉब का उपयोग करके वैकल्पिक पोर्ट पर ssh शुरू करना है, इसलिए कम से कम पोर्ट्सन में दिखाई देने की संभावना कम है।

अंतिम घटक IPMI नेटवर्क प्रबंधन पोर्ट है; मैं ये नहीं देख सकता कि इन्हें कैसे बंद किया जाए।


संशोधनों के संबंध में आपकी अधिकांश चिंताएँ शायद कोई समस्या नहीं हैं। ड्रॉपबियर पीएएम का उपयोग करता है, जो कि ऑर्बिट के लिए लिबापामिपी का उपयोग करता है - मैंने ऐसा कोई सबूत नहीं देखा है कि यह वास्तव में क्लियरटेक्स पासवर्ड को सीधे पढ़ता है। लिबपामिपि आईपमी स्टैक को एक आईपमी कॉल करेगा, और वह अच्छी तरह से क्लीयरटेक्स्ट पासवर्ड पढ़ सकता है, लेकिन मेरा कहना है कि ऐसा नहीं लगता कि ड्रॉपबियर डेमॉन को खराब कर दिया गया है। मैं किसी भी निश्चित सबूत में सुनने के लिए इच्छुक हूँ, लेकिन आप इसके विपरीत है।
डेनियल लॉसन

ठीक है, हम जानते हैं कि यह टूट गया है कि पासवर्ड के बजाय) कुंजी का उपयोग करने का कोई तरीका नहीं है, और b) पासवर्ड प्रमाणीकरण अक्षम करें।
कर्ट जे। सैम्पसन

6

आदर्श रूप से, आपका प्रबंधन नेटवर्क आपके अन्य नेटवर्क के लिए एक अलग नेटवर्क होगा, या कम से कम एक अलग वलान सीमित रूड एक्सेस के साथ।

ये सिस्टम वास्तव में नहीं चल रहे हैं कि कई सेवाओं हालांकि:

PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
443/tcp  open  https
555/tcp  open  dsf
5120/tcp open  unknown
5900/tcp open  vnc
5988/tcp open  unknown
MAC Address: 00:30:48:D9:3A:71 (Supermicro Computer)

(और IPMI के लिए UDP / 623)

अगर आप किसी तरह का रिमोट मैनेजमेंट करना चाहते हैं तो इनमें से अधिकांश की जरूरत होती है। यदि आप दूरस्थ प्रबंधन नहीं करना चाहते हैं, तो आपको IPMI नियंत्रक को सक्षम करने पर विचार नहीं करना चाहिए, या इसके बजाय X9DTU बोर्ड खरीदना चाहिए (-F "BMC में अंतर्निहित" को दर्शाता है)

यदि आप पूर्ण दूरस्थ प्रबंधन करना चाहते हैं, तो एक अलग नेटवर्क पर अपने आईपीएमआई नियंत्रकों को नहीं चला सकते हैं, और फिर भी कुछ पहुंच को अक्षम करना चाहते हैं, तो आप आईपीएमआई नियंत्रक को आईपीटैबल्स कमांड को निष्पादित करने के लिए हमेशा प्राप्त कर सकते हैं। आप कमांड को निष्पादित करने के लिए एक ssh लॉगिन स्क्रिप्ट कर सकते हैं, या BMC के लिए सुपरमाइक्रो से देवकित के लिए पूछ सकते हैं और कस्टम iptables स्क्रिप्ट के साथ एक नई छवि बना सकते हैं।

अपडेट करें

मैं यहाँ हमारे सिस्टम पर एक और नज़र रखता था, और / conf फाइल सिस्टम आरडब्ल्यू माउंट है। इनिट स्क्रिप्ट में से कोई भी सीधे / कॉन्फ़िडेंस में कुछ भी नहीं कहता है (जो मैं देख सकता था), लेकिन एक क्रॉस्टैब फ़ाइल है। तो, मुझे लगता है कि आप एक iptables स्क्रिप्ट में कॉपी कर सकते हैं, और इसे कुछ उपयुक्त अंतराल पर कॉल करने के लिए / conf / crontab को संपादित कर सकते हैं। आप चाहते हैं कि इसे BMC init पर ASAP चलाया जाए, लेकिन आप इसे हर मिनट चलाना नहीं चाहते हैं। या शायद आप परवाह नहीं करते।


मैं प्रबंधन के लिए एक अलग नेटवर्क रखना पसंद करूंगा, लेकिन दुर्भाग्य से यह किसी और के डेटा सेंटर में जा रहा है, और मेरे पास ऐसा नहीं हो सकता। प्रबंधन के लिए, मुझे वास्तव में https और ssh चाहिए।
कर्ट जे। सैम्पसन

तुम कभी नहीं, कभी भी केवीएम को लैन पर चाहोगे?
डेनियल लॉसन

आप डीसी में अपने मेजबान के सामने एक अलग फ़ायरवॉल इकाई रख सकते हैं। यह समस्या को कुछ हद तक हल करेगा। क्या आपने इस पर सहायता के लिए सुपरमाइक्रो समर्थन मांगा है? मैंने उन्हें काफी उत्तरदायी पाया है
डैनियल लॉसन

नहीं, मुझे BIOS, ग्रब और लिनक्स कर्नेल के बाद से लैन पर केवीएम की कोई आवश्यकता नहीं है, सभी एक सीरियल कंसोल का समर्थन करते हैं।
कर्ट जे। सैम्पसन

4

सुपरमाइक्रो IPMI को सुरक्षित करते समय ssh सर्वर पर विचार करने के लिए एक बात। X8SIL-F IPMI कोड के पुराने संस्करणों ने ssh कनेक्शन को स्वीकार नहीं किया, भले ही कोई पासवर्ड दिया गया हो। सॉफ्टवेयर तब पासवर्ड की जांच करेगा और कनेक्शन को अस्वीकार या स्वीकार करेगा, लेकिन ssh पोर्ट फॉरवर्ड बनाने के लिए एक संक्षिप्त विंडो थी। लोगों को इसकी वजह से उनके आईपीएमआई आईपी के लिए स्पैम / दुरुपयोग की शिकायतें मिल रही थीं । X8SIL-F मदरबोर्ड के लिए, 2.60 IPMI फ़र्मवेयर संस्करण ने समस्या को ठीक किया (यह पहले ठीक किया गया हो सकता है, 2.54 की चैंज एंट्री लग रहा है जैसे यह हो सकता है)।

एक दूसरी समस्या एक डिफ़ॉल्ट पासवर्ड के साथ एक अनाम उपयोगकर्ता है। अनाम उपयोगकर्ता फर्मवेयर संस्करण 2.22 में तय किया गया लगता है।


2

IPMI के वेब-इंटरफ़ेस के लिए HTTPS को सक्षम करने के लिए एक छोटी सी चाल है ।

यदि आपका IPMI फर्मवेयर समर्थन करता है कि (X8DTH-iF के लिए मेरा 2.04 फर्मवेयर) समर्थन करता है, तो आप सबसे पहले, विन्यास में जाकर HTTPS तक पहुँच को सक्षम कर सकते हैं -> SSL, दो PEM फाइलें (प्रमाण पत्र और निजी कुंजी) और, दूसरे पर, मैन्युअल रूप से अपलोड करना अपने IPMI मॉड्यूल को रिबूट करें।

अंत में, आप IPMI के वेब-इंटरफ़ेस को https: // bmc-ip-or-hostname / द्वारा एक्सेस कर सकते हैं । मैं यह नहीं कह सकता कि HTTPS HTTP की तुलना में धीमा काम करता है।


0

क्या आप में से किसी ने भी iptables वाली चीज़ को सुरक्षित करने की कोशिश की है? ऐसा लगता है कि iptables स्थापित है, और मैं एक नियम बनाना चाहता हूं जो कुछ विश्वसनीय आईपी से सब कुछ स्वीकार करने से इनकार करता है ताकि इसे थोड़ा और सुरक्षित बनाया जा सके ... लेकिन जैसा कि मैंने ऊपर पढ़ा है कोई स्क्रिप्ट / कॉन्फिग से नहीं पढ़ी जा रही है। क्या क्रॉस्टैब एकमात्र विकल्प है? और क्या होगा अगर आपने iptables को गड़बड़ कर दिया है?


1
जैसा कि मैंने पहले कहा, अपने आईपीएमआई कंट्रोलर को बाहरी रूप से सुरक्षित करना कहीं बेहतर है: या तो यह पूरी तरह से अलग वलान या भौतिक नेटवर्क पर होने से, या सीमा फ़ायरवॉल द्वारा सुरक्षित है। IPMI / BMC कंट्रोलर का यह विशेष मॉडल linux चलाने के लिए होता है, जो आपको इस धारणा के साथ संकेत देता है कि आप इसे iptables के साथ सुरक्षित कर सकते हैं। हालाँकि, वास्तविकता यह है कि BMC / IPMI / whateveryoucall के अधिकांश हिस्से में फ़ायरवॉल के रास्ते में बहुत कुछ या कुछ भी नहीं है, और इसलिए आपको इस पर भरोसा नहीं करना चाहिए। अपने आप को परेशानी से बचाएं और अपने आईपीएमआई नेटवर्क को निजी, सुरक्षित और गैर-सुरक्षित मानें।
डैनियल लॉसन

1
मैं असहमत हूं कि अपने IPMI नियंत्रक को बाहरी रूप से सुरक्षित करना "बेहतर" है; फ़ायरवॉल और इस तरह की सुरक्षा विफलताओं की संभावना अधिक होती है जो पहले से ठीक से सुरक्षित हो चुके मेजबान की तुलना में अधिक होती है। हालांकि, यदि आपके पास एक अलग नेटवर्क का उपयोग करने की क्षमता है, तो यह एक अच्छी बात है, और इस तरह के आईपीएमआई उपकरणों के मामले में, यह लगभग आवश्यक प्रतीत होता है।
कर्ट जे। सैम्पसन

0

आपने फाइल सिस्टम कैसे देखा? अगर मैं 22 को पोर्ट करता हूं, तो मैं देख सकता हूं कि ड्रॉपबियर चल रहा है, लेकिन अगर मैं विभिन्न यूजरनेम के साथ एसएसएच की कोशिश करता हूं तो यह पासवर्ड के लिए संकेत नहीं देता है। मैंने एक नया उपयोगकर्ता प्रशासक विशेषाधिकारों के साथ जोड़ा है, लेकिन SSH उस उपयोगकर्ता के लिए भी जवाब नहीं देगा। मैं एक सुपरमाइक्रो X7SPA-HF मदरबोर्ड का उपयोग कर रहा हूं जिसमें एक Winbond Hermon IPMI 2.0 चिप है, फर्मवेयर संशोधन 01.29, 2009-12-31 के समय का निर्माण।


2
मैंने ssh -v किया, यह देखने के लिए कि क्या चल रहा था, देखा कि यह सार्वजनिक कुंजी प्रमाणीकरण का प्रयास कर रहा था। मुझे यह अक्षम करके काम करने के लिए मिला।

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