ইউএসইকি সহ এসএসএইচ টু-ফ্যাক্টর এথ (2 এফএ)


12

সুতরাং আমি এই চটজলদি সামান্য ইয়ুবিকে পেয়েছি এবং এসএস সেশনের অনুমোদনের সময় আমি সুরক্ষার অতিরিক্ত স্তর যুক্ত করতে চাই। সার্ভার সাইডে আমি ইতিমধ্যে পাসওয়ার্ড প্রমাণীকরণ অক্ষম করেছি এবং লগ ইন করার সময় কেবল ssh কী ব্যবহারের অনুমতি দিয়েছি।

সমস্যাটি হ'ল ইয়ুবাইকী লেখকের জন্য sshd এবং PAM কনফিগার করার পরে, sshd এখনও কেবল একটি ssh কী প্রয়োজন, আমাকে কখনও ইউবিকে থেকে প্রতিক্রিয়া জানাতে বলা হয়নি।

আমার কীভাবে এবং এসএসএস কী এবং ইউবিকি উভয়ের প্রয়োজন ?

(ubuntu 14.04 - trusty)

/etc/pam.d/common-auth:

auth    required    pam_yubico.so mode=client try_first_pass id=<id> key=<secret>
auth    [success=1 default=ignore]  pam_unix.so nullok_secure try_first_pass
# here's the fallback if no module succeeds
auth    requisite           pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required            pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional            pam_cap.so
# end of pam-auth-update config

/etc/ssh/sshd_config:

...

PasswordAuthentication no
ChallengeResponseAuthentication yes
UsePAM yes

বিটিডাব্লু, আপনি যদি কয়েক দিনের মধ্যে সন্তোষজনক উত্তর না পান তবে আমাকে পিং করুন এবং আমি এই প্রশ্নে একটি স্বাস্থ্যকর অনুগ্রহ করব। আমার কাছে জ্বলতে হবে, এবং আমি এই উত্তরটিতে আগ্রহী। :)
EEAA

উত্তর:


4

ঠিক আছে, আমি এটি রেখেছিলাম এবং আমি মনে করি আমি একটি যুক্তিসঙ্গত সমাধান নিয়ে এসেছি। আমি আগে যে প্রাথমিক জিনিসটি হারিয়েছিলাম তা হ'ল এসএসডি এর AuthenticationMethods publickey,password। এটি এখন পাবলিককি এবং একটি পাসওয়ার্ড - "পাসওয়ার্ড" উভয় দ্বারা পরিচালিত হওয়ার প্রয়োজনীয়তা প্রয়োগ করে PAM->auth-yubi। অতিরিক্ত পরিবর্তনগুলিও প্রয়োজন ছিল, নীচে দেখুন:

(উবুন্টু 14.04 - বিশ্বাসযোগ্য):

/etc/pam.d/yubi-auth

auth    required pam_yubico.so mode=client try_first_pass id=<id> key=<key>

দ্রষ্টব্য: আপনি এখানে আপনার অ্যাক্সেস আইডি এবং গোপন কী পেতে পারেন

/etc/pam.d/sshd

# Standard Un*x authentication.
#@include common-auth

# Yubikey auth
@include yubi-auth

জন্য / etc / SSH / sshd_config

UsePAM yes
ChallengeResponseAuthentication no
AuthenticationMethods publickey,password
PasswordAuthentication yes

service ssh restart

প্রতিপাদন

পাবলিক কী ছাড়াই দূরবর্তী হোস্ট থেকে এসএসএইচ

root@0a6442bcb21c:/# ssh ben@192.168.1.20
The authenticity of host '192.168.1.20 (192.168.1.20)' can't be established.
ECDSA key fingerprint is ea:2a:e3:98:35:72:66:b1:e0:65:6b:3f:60:8a:af:ab.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.20' (ECDSA) to the list of known hosts.
Permission denied (publickey).

পাবলিক কী সহ দূরবর্তী হোস্ট থেকে এসএসএইচ

$ ssh ben@192.168.1.20
Authenticated with partial success.
ben@192.168.1.20's password:
Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.19.0-33-generic x86_64)

উন্নতি

প্রমাণীকরণের সময় রিমোট এসএস সার্ভার থেকে "পাসওয়ার্ড:" এর পরিবর্তে "ইউবিকি অথ:" দেখতে ভাল লাগবে।

Ssh সার্ভারটি ইউবিকোর লেখক যাচাইকরণ সিস্টেমের সাথে যোগাযোগ করতে অক্ষম হলে কী ঘটে? একটি আদর্শ সমাধান সম্পূর্ণরূপে স্বয়ংসম্পূর্ণ হবে।

মন্তব্য এবং পরামর্শ প্রশংসা।


2

Yubikey সঙ্গে 2FA সেট আপ হচ্ছে চতুর হতে পারেন (চিন্তা OpenSSH আছে U2F জন্য প্যাচ ), কিন্তু সবচেয়ে সহজ উপায় সম্ভবত বর্ণিত এক Yubico অফিসিয়াল ওয়েবসাইট

এটি মূলত আপনার ব্যক্তিগত কীটি ইউবিকেতে সংরক্ষণ করার এবং এটি পিনের সাহায্যে সুরক্ষিত করার উপায়। এটি আপনার বর্ণিত ঠিক 2 এফএ নয় (তবে এটি আপনার যা আছে এবং আপনি কী জানেন ) এটি সুরক্ষা আরও বাড়িয়ে তোলে (কিছু ব্যর্থ চেষ্টা করার পরে ইউবুকি লক করে)।

টি এল: ডিআর;

OPENSC_LIBS=`locate opensc-pkcs11.so`
yubico-piv-tool -s 9a -a generate -o public.pem
yubico-piv-tool -a verify-pin -P 123456 -a selfsign-certificate -s 9a \
  -S "/CN=SSH key/" -i public.pem -o cert.pem
yubico-piv-tool -a import-certificate -s 9a -i cert.pem
ssh-keygen -D $OPENSC_LIBS/opensc-pkcs11.so -e
ssh -I $OPENSC_LIBS/opensc-pkcs11.so user@remote.example.com

" আমি বিশ্বাস করি পাম মডিউল কেবল স্থানীয় ইউবাইকিসকে প্রমাণ করতে সক্ষম, এসএসএসের চেয়ে বেশি নয় " - আপনি এর অর্থ কী তা আমি পুরোপুরি নিশ্চিত নই। আপনি কি বোঝাতে চাইছেন যে কোনও ইউবিকে পিএএম-এর মাধ্যমে রিমোট এসএস সার্ভারে অনুমোদনের জন্য ব্যবহার করা যাবে না?
ম্যাডহ্যাটার

হ্যাঁ. কারণ এটি ইউবাইকির সাথে যোগাযোগের উপায় প্রয়োজন এবং এটি সম্ভবত কিছু স্থানীয় গ্রন্থাগার ব্যবহার করে সম্পন্ন করা হয়েছে। Ssh এ এর ​​জন্য কোনও কোড নেই।
জাকুজে

এটা অবশ্যই ভুল। আমি আমার দূরবর্তী সার্ভার কনফিগার করেছেন উভয় yubikey ভিত্তিক প্রমাণীকরণ গ্রহণ করতে নেটিভ yubikey মোড এবং শপথ মোড । ইউবাইকের পুরো বিন্দুটি হ'ল একটি সম্ভাব্য-অনিরাপদ চ্যানেল থেকে সঞ্চারিত করার জন্য একটি সংক্ষিপ্ত (ইশ) স্ট্রিং সরবরাহ করার জন্য, এক-সময় পাসওয়ার্ড হিসাবে কাজ করা। ইউবিকে যদি এটির সাথে প্রমাণীকরণ করা হয় তার সাথে শারীরিকভাবে সংযুক্ত থাকতে হয়, তবে এটি অনেক কম কার্যকর হবে be আমি মনে করি আপনি পিকেসিএস মোডে ইউবিকে লক করা সম্পর্কেও ভুল wrong
ম্যাডহ্যাটার

ঠিক আছে, আপনি ঠিক বলেছেন। ওটিপি মোডের জন্য এটি সম্ভব। তবে লকিং পিকেসিএস 11 স্ট্যান্ডার্ডের একটি অংশ।
জাকুজে

1
এর জন্য আপনাকে ধন্যবাদ - আমি মনে করি আপনার উত্তরটি উন্নতির জন্য আরও ভাল, এবং আমার ডাউনটোট সরিয়ে ফেলবে।
ম্যাডহ্যাটার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.