كيفية تسجيل الدخول إلى سطح المكتب الخاص بك لينكس مع جوجل الموثق
لمزيد من الأمان ، يمكنك طلب رمز مصادقة قائم على الوقت بالإضافة إلى كلمة مرور لتسجيل الدخول إلى الكمبيوتر الشخصي Linux. يستخدم هذا الحل Google Authenticator وتطبيقات TOTP الأخرى.
تم تنفيذ هذه العملية على Ubuntu 14.04 مع سطح مكتب Unity القياسي ومدير تسجيل الدخول LightDM ، ولكن المبادئ هي نفسها في معظم توزيعات Linux و Desktop.
لقد أوضحنا لك مسبقًا كيفية طلب Google Authenticator للوصول عن بُعد عبر SSH ، وهذه العملية مماثلة. لا يتطلب ذلك تطبيق Google Authenticator ، ولكنه يعمل مع أي تطبيق متوافق يقوم بتنفيذ نظام مصادقة TOTP ، بما في ذلك Authy.
تثبيت Google Authenticator PAM
كما هو الحال عند إعداد هذا الوصول إلى SSH ، سنحتاج أولاً إلى تثبيت برنامج PAM ("وحدة التحقق من المصادقة") المناسب. PAM هو نظام يسمح لنا بتوصيل أنواع مختلفة من أساليب المصادقة في نظام Linux وتطلبها.
على Ubuntu ، سيقوم الأمر التالي بتثبيت Google Authenticator PAM. افتح نافذة طرفية ، واكتب الأمر التالي ، واضغط على Enter ، وقدم كلمة المرور الخاصة بك. سيقوم النظام بتنزيل PAM من مستودعات برامج Linux الخاصة بك وتثبيتها:
sudo apt-get install libpam-google-authenticator
من الأفضل أن توفر توزيعات Linux الأخرى هذه الحزمة للتثبيت السهل أيضًا - فتح مستودعات برامج توزيع Linux الخاصة بك وإجراء بحث عنها. في أسوأ الحالات ، يمكنك العثور على شفرة المصدر لوحدة PAM على GitHub وتجميعها بنفسك.
كما أشرنا من قبل ، لا يعتمد هذا الحل على "الاتصال بالمنزل" بخوادم Google. يطبق خوارزمية TOTP القياسية ويمكن استخدامه حتى عندما لا يكون الكمبيوتر الخاص بك به اتصال بالإنترنت.
خلق مفاتيح التوثيق الخاصة بك
ستحتاج الآن إلى إنشاء مفتاح مصادقة سرّي وإدخاله في تطبيق Google Authenticator (أو تطبيق مشابه) على هاتفك. أولاً ، قم بتسجيل الدخول كحساب مستخدم على نظام Linux الخاص بك. افتح نافذة طرفية وقم بتشغيل جوجل-المصدق أمر. نوع ذ واتبع التعليمات هنا. سيؤدي ذلك إلى إنشاء ملف خاص في دليل حساب المستخدم الحالي باستخدام معلومات Google Authenticator.
سيتم أيضًا الانتقال خلال عملية الحصول على رمز التحقق المكون من عاملين إلى تطبيق Google Authenticator أو تطبيق TOTP مماثل على هاتفك الذكي. يمكن لنظامك إنشاء رمز الاستجابة السريعة الذي يمكنك مسحه ضوئيًا ، أو يمكنك كتابته يدويًا.
تأكد من تدوين رموز خدش الطوارئ ، والتي يمكنك استخدامها لتسجيل الدخول إذا فقدت هاتفك.
انتقل من خلال هذه العملية لكل حساب مستخدم يستخدم جهاز الكمبيوتر الخاص بك. على سبيل المثال ، إذا كنت الشخص الوحيد الذي يستخدم جهاز الكمبيوتر الخاص بك ، فيمكنك القيام بذلك مرة واحدة على حساب المستخدم العادي الخاص بك. إذا كان لديك شخص آخر يستخدم جهاز الكمبيوتر ، فستحتاج إلى تسجيل الدخول إلى حسابه الخاص وإنشاء رمز عامل مناسب لحسابه الخاص حتى يتمكن من تسجيل الدخول.
تفعيل المصادقة
هنا حيث تصبح الأمور مضنية قليلاً عندما شرحنا كيفية تمكين عاملين لعمليات تسجيل SSH ، طلبنا ذلك فقط لتسجيلات الدخول SSH. يضمن ذلك إمكانية تسجيل الدخول محليًا إذا فقدت تطبيق المصادقة أو إذا حدث خطأ ما.
بما أننا سنعمل على تمكين المصادقة الثنائية لتسجيلات الدخول المحلية ، فهناك مشكلات محتملة هنا. إذا حدث خطأ ما ، فقد لا تتمكن من تسجيل الدخول. مع وضع ذلك في الاعتبار ، سنرشدك عبر تمكين هذا من أجل تسجيلات الدخول الرسومية فقط. هذا يعطيك فتحة للهروب إذا كنت بحاجة إليها.
تمكين Google Authenticator من أجل عمليات تسجيل الرسوم البيانية على Ubuntu
يمكنك دائمًا تمكين مصادقة بخطوتين لعمليات تسجيل الدخول الرسومية فقط ، مع تخطي المتطلبات عند تسجيل الدخول من المطالبة النصية. هذا يعني أنه بإمكانك التبديل بسهولة إلى طرفية ظاهرية ، تسجيل الدخول إلى هناك ، والعودة بالتغييرات حتى لا يكون Gogole Authenciator مطلوبًا إذا واجهت مشكلة.
بالتأكيد ، هذا يفتح ثغرة في نظام المصادقة الخاص بك ، ولكن يمكن للمهاجم مع الوصول الفعلي إلى النظام الخاص بك بالفعل استغلالها على أي حال. هذا هو السبب في أن المصادقة الثنائية فعالة بشكل خاص لتسجيل الدخول عن بعد عبر SSH.
فيما يلي كيفية القيام بذلك لـ Ubuntu ، والذي يستخدم مدير تسجيل الدخول LightDM. افتح ملف LightDM للتحرير باستخدام أمر كما يلي:
sudo gedit /etc/pam.d/lightdm
(تذكر أن هذه الخطوات المحددة لن تعمل إلا إذا كان توزيع Linux الخاص بك وسطح المكتب يستخدمان مدير تسجيل الدخول LightDM).
أضف السطر التالي إلى نهاية الملف ، ثم احفظه:
auth required pam_google_authenticator.so nullok
يخبر بت "nullok" في النهاية النظام السماح للمستخدم بتسجيل الدخول حتى إذا لم يتم تشغيل الأمر google-authenticator لإعداد مصادقة ثنائية. إذا قاموا بإعدادها ، فسيجب عليهم إدخال رمز baesd time - وإلا فلن يفعلوا ذلك. أزل "nullok" وحسابات المستخدمين الذين لم يجروا إعداد شفرة Google Authenticator فقط لن يتمكنوا من تسجيل الدخول بيانياً.
في المرة التالية التي يسجل فيها المستخدم رسومًا بيانية ، سيُطلب منه إدخال كلمة المرور الخاصة به ، ثم يُطلب منك إدخال رمز التحقق الحالي على هاتفه. إذا لم يدخلوا رمز التحقق ، فلن يُسمح لهم بتسجيل الدخول.
يجب أن تكون العملية متشابهة إلى حد ما مع توزيعات سطح المكتب و Linux الأخرى ، حيث إن معظم مديري جلسات Linux المكتبية الشائعة يستخدمون PAM. ستحتاج على الأرجح إلى تعديل ملف مختلف بشيء مماثل لتنشيط وحدة PAM المناسبة.
إذا كنت تستخدم تشفير الدليل الرئيسية
قدمت الإصدارات الأقدم من Ubuntu خيار "تشفير المجلدات الرئيسية" السهل الذي قام بتشفير الدليل الرئيسي بأكمله حتى تقوم بإدخال كلمة المرور الخاصة بك. على وجه التحديد ، يستخدم هذا ecryptfs. ومع ذلك ، نظرًا لأن برنامج PAM يعتمد على ملف Google Authenticator المخزن في الدليل الرئيسي بشكل افتراضي ، يتداخل التشفير مع PAM لقراءة الملف ما لم تتأكد من أنه متاح في شكل غير مشفر للنظام قبل تسجيل الدخول. استشر README للحصول على المزيد معلومات حول تجنب هذه المشكلة إذا كان your'e ما زال يستخدم خيارات تشفير الدليل الرئيسي الموقوفة.
تقدم الإصدارات الحديثة من Ubuntu تشفير القرص بالكامل بدلاً من ذلك ، والتي ستعمل بشكل جيد مع الخيارات المذكورة أعلاه. ليس عليك القيام بأي شيء خاص
مساعدة ، وكسر!
نظرًا لأننا قمنا بتمكين هذا فقط لعمليات تسجيل الدخول الرسومية ، يجب أن يكون من السهل تعطيلها إذا تسببت في حدوث مشكلة. اضغط على مجموعة مفاتيح مثل Ctrl + Alt + F2 للوصول إلى جهاز ظاهري وتسجيل الدخول باستخدام اسم المستخدم وكلمة المرور. يمكنك بعد ذلك استخدام أمر مثل sudo nano /etc/pam.d/lightdm لفتح الملف للتحرير في محرر نصوص طرفي. استخدم دليلنا إلى Nano لإزالة الخط وحفظ الملف ، وستتمكن من تسجيل الدخول بشكل طبيعي مرة أخرى.
يمكنك أيضًا إلزام أداة مصادقة Google بأن تكون مطلوبة لأنواع أخرى من عمليات تسجيل الدخول - وربما جميع عمليات تسجيل الدخول إلى النظام - عن طريق إضافة السطر "auth required pam_google_authenticator.so" إلى ملفات تهيئة PAM أخرى. كن حذرا إذا قمت بذلك. وتذكر أنك قد ترغب في إضافة "nullok" حتى يتمكن المستخدمون الذين لم يدخلوا عملية الإعداد من تسجيل الدخول.
يمكن العثور على المزيد من الوثائق حول كيفية استخدام وحدة PAM وإعدادها في ملف README الخاص بالبرنامج على GitHub.