कॉपी किए गए इस पोस्ट से उबंटू पूछने पर gertvdijk , द्वारा बताया mazs टिप्पणी में। इस प्रश्न को बंद करने के प्रयास में।
BkkBonanza द्वारा Ubuntuforums पर इस पोस्ट के आधार पर ।
यह PAM का उपयोग करने वाला एक दृष्टिकोण है और सभी विफल लॉगिन प्रयासों के लिए काम करेगा। एक वर्चुअल टर्मिनल या रेगुलर लॉगिन स्क्रीन के माध्यम से SSH का उपयोग करते हुए, यह कोई फर्क नहीं पड़ता कि सब कुछ अंत में PAM द्वारा नियंत्रित किया जाता है।
Ffmpeg स्थापित करें , हम इसे वेब कैमरा छवियों को हथियाने के कमांड लाइन तरीके के रूप में उपयोग करने जा रहे हैं। अपडेट: जब आप Ubuntu 14.04 में अपग्रेड करते हैं तो ffmpeg हटा दिया जाता है। हम नीचे दिए गए स्क्रिप्ट में ffmpeg के स्थान पर avconv का उपयोग कर सकते हैं। अलग से कुछ भी स्थापित करने की आवश्यकता नहीं है।
कहीं न कहीं एक छोटी स्क्रिप्ट बनाएं, जैसे /usr/local/bin/grabpicture
कि निम्नलिखित सामग्री के साथ
#!/bin/bash
ts=`date +%s`
ffmpeg -f video4linux2 -s vga -i /dev/video0 -vframes 3 /tmp/vid-$ts.%01d.jpg
exit 0 #important - has to exit with status 0
अपने वेब कैमरा के वास्तविक वीडियो डिवाइस के साथ / देव / वीडियो 0 बदलें और एक रास्ता चुनें जहां चित्रों को सहेजा जा रहा है - मैं सिर्फ चुनता हूं /tmp
। ( ) के avconv
बजाय उबंटू के नए संस्करण का उपयोग करें ।ffmpeg
sudo apt-get install libav-tools
इसे अमल में लाएं, जैसे chmod +x /usr/local/bin/grabpicture
।
यह परीक्षण, बस इसे बुलाकर /usr/local/bin/grabpicture
:। जाँच करें कि क्या आपको फ़ाइलें दिखाई दे रही हैं /tmp/vid....jpg
।
PAM को कॉन्फ़िगर करें इसे हर असफल प्रयास पर कॉल करने के लिए।
नोट: इसे ध्यान से करें - यदि यह विफल रहता है तो आप नियमित रूप से फिर से अपने सिस्टम तक पहुँच प्राप्त नहीं कर पाएंगे।
- रूट एक्सेस (sudo -i) के साथ एक टर्मिनल विंडो खोलें और इसे खुला छोड़ दें - बस अगर आप अगले चरणों में पेंच करते हैं।
/etc/pam.d/common-auth
अपने पसंदीदा संपादक में खोलें , जैसे करके gksudo gedit /etc/pam.d/common-auth
। निम्नलिखित चरणों के लिए ध्यान रखें कि इस फ़ाइल में लाइनों का क्रम मायने रखता है।
नीचे लाइन का पता लगाएँ। डिफ़ॉल्ट रूप से वहाँ एक के साथ एक लाइन से पहले है pam_deny.so
। मेरे 12.04 सिस्टम पर यह इस तरह दिखता है:
auth [success=1 default=ignore] pam_unix.so nullok_secure
इस पंक्ति में सफलता = 1 को सफलता = 2 में बदलने के लिए यह हमारी स्क्रिप्ट को सक्सेस पर छोड़ दें। यह एक महत्वपूर्ण कदम है।
वहीं, वास्तविक स्क्रिप्ट को कॉल करने के लिए एक नया जोड़ें:
auth [default=ignore] pam_exec.so seteuid /usr/local/bin/grabpicture
फ़ाइल को सहेजें और बंद करें। कुछ भी पुनरारंभ करने की आवश्यकता नहीं है।
झसे आज़माओ।
- एक नई टर्मिनल विंडो में, नियमित उपयोगकर्ता के रूप में,
su -l username
उपयोगकर्ता नाम के साथ किसी अन्य उपयोगकर्ता के रूप में लॉग इन करने का प्रयास करें username
(एक वास्तविक कोर्स के साथ परिवर्तन)। जानबूझकर गलत पासवर्ड डालें। जांचें कि क्या यह एक नई तस्वीर में परिणाम है।
- ऊपर जैसा ही, लेकिन अब सही पासवर्ड दर्ज करें। जाँच करें कि क्या आप लॉग इन करते हैं और इसके परिणामस्वरूप तस्वीर नहीं ली जा रही है।
यदि परीक्षण सफल हुए हैं तो आप अपने DE (Unity / KDE / ...) से लॉग आउट कर सकते हैं और लॉगिन स्क्रीन से गलत पासवर्ड दर्ज करते समय आपको वही देखना चाहिए।