د سوډ فایلونو څخه د خلاصون لپاره د سوډو پرځای د UNIX ساکټ کې د SSH کارول

د ریډ هټ څخه تیموتي روییر، د فیډورا سلوربلیو او فیډورا کینویټ پروژو ساتونکي، د سوډو یوټیلیټ کارولو څخه مخنیوي لپاره یوه لاره وړاندیز کړه، کوم چې د امتیازاتو زیاتولو لپاره سوډ بټ کاروي. د sudo پرځای، د یو عادي کارونکي لپاره چې د روټ حقونو سره کمانډونه اجرا کړي، دا وړاندیز کیږي چې د UNIX ساکټ له لارې د ورته سیسټم سره د محلي پیوستون سره د ssh یوټیلیټ وکاروئ او د SSH کیلي پراساس د اجازې تصدیق کول.

د sudo پرځای د ssh کارول تاسو ته اجازه درکوي په سیسټم کې د سوډ برنامو څخه ځان خلاص کړئ او د توزیع کوربه چاپیریال کې د امتیاز شوي کمانډونو اجرا کولو وړ کړئ چې د کانټینر جلا کولو اجزا کاروي ، لکه فیډورا سلوربلیو ، فیډورا کینویټ ، فیډورا سیرسیا او فیډورا اونیکس. د لاسرسي محدودولو لپاره ، د USB نښه په کارولو سره د واک تایید کول (د مثال په توګه ، یوبیکي) اضافي کارول کیدی شي.

د محلي یونیکس ساکټ له لارې د لاسرسي لپاره د OpenSSH سرور اجزاو تنظیم کولو بیلګه (یو جلا sshd مثال به د خپل ترتیب فایل سره پیل شي):

/etc/systemd/system/sshd-unix.socket: [یونټ] تفصیل = د اوپن ایس ایس ایچ سرور یونیکس ساکټ سند = man:sshd(8) man:sshd_config(5) [ساکټ] ListenStream=/run/sshd.sock قبول = هو [ناستول] WantedBy=sockets.target

/ وغيره / سیسټم / سیسټم /[ایمیل خوندي شوی]: [یونټ] توضیحات = د هر پیوستون سرور ډیمون پرانستې SSH (یونیکس ساکټ) اسناد = man: sshd(8) man:sshd_config(5) Wants=sshd-keygen.target After=sshd-keygen.target [Service] ExecStart=- /usr/sbin/sshd -i -f /etc/ssh/sshd_config_unix StandardInput=ساکټ

/etc/ssh/sshd_config_unix: # یوازې کلیدي تصدیق پریږدي اجازه ورکوي چې د روټ لاګ ان منع پټ پاسورډ پاسورډ تصدیق کول اجازه نشته د GSSAPIA تصدیق نشته # ټاکل شوي کاروونکو ته د لاسرسي محدودیت اجازه ورکوي کاروونکو ته د روټ مدیر نوم اجازه ورکوي # یوازې پریږدي د s_s_to_keys/th_keys څخه کار واخلئ. 2 مجاز کیز فایل .ssh /مجاز_کیز # د sftp فرعي سیسټم sftp /usr/libexec/openssh/sftp-سرور فعال کړئ

د سیسټمډ واحد فعال او پیل کړئ: sudo systemctl daemon-reload sudo systemctl enable — اوس sshd-unix.socket

خپل SSH کیلي /root/.ssh/authorized_keys ته اضافه کړئ

د SSH پیرودونکي تنظیم کول.

د سوکاټ افادیت نصب کړئ: sudo dnf socat نصب کړئ

موږ د UNIX ساکټ له لارې د لاسرسي لپاره د پراکسي په توګه د socat په ټاکلو سره /.ssh/config ضمیمه کوو: Host host.local یوزر روټ # د کانټینرونو څخه کار کولو لپاره /run/host/run پرځای د /run/host/run وکاروئ ProxyCommand socat - UNIX-CLIENT: / run/host/run/sshd.sock # د SSH کیلي پیژندنې فایل ته لاره ~/.ssh/keys/localroot # د متقابل شیل لپاره د TTY ملاتړ فعال کړئ غوښتنه TTY هو # غیر ضروري محصول لرې کړئ LogLevel QUIET

په اوسنۍ بڼه کې، د کارونکي اډمین کارن نوم به اوس د دې وړتیا ولري چې د پټنوم دننه کولو پرته د روټ په توګه امرونه اجرا کړي. د عملیاتو چک کول: $ssh host.local [root ~]#

موږ د "ssh host.local" چلولو لپاره په باش کې یو sudohost عرف جوړوو، لکه sudo: sudohost() { که [[${#} -eq 0 ]]; بیا ssh host.local "cd \"${PWD}\"; exec \"${SHELL}\" --login" else ssh host.local "cd \"${PWD}\"; اجراییه \"${@}\"» fi }

چک: $ sudohost id uid=0(root) gid=0(root) ډلې=0(root)

موږ اسناد اضافه کوو او د دوه فاکتور تصدیق فعالوو، د روټ لاسرسي ته اجازه ورکوي یوازې هغه وخت چې د یوبیکي USB نښه داخل شي.

موږ ګورو چې کوم الګوریتم د موجوده یوبیکي لخوا ملاتړ کیږي: lsusb -v 2>/dev/null | grep -A2 Yubico | grep "bcdDevice" | awk '{$2 چاپ کړئ'

که محصول 5.2.3 یا ډیر وي، د کیلي جوړولو پر مهال ed25519-sk وکاروئ، که نه نو د ecdsa-sk وکاروئ: ssh-keygen -t ed25519-sk یا ssh-keygen -t ecdsa-sk

عامه کیلي /root/.ssh/authorized_keys ته اضافه کوي

د sshd ترتیب ته د کلیدي ډول پابند اضافه کړئ: /etc/ssh/sshd_config_unix: PubkeyAcceptedKeyTypes [ایمیل خوندي شوی],[ایمیل خوندي شوی]

موږ د یونیکس ساکټ ته لاسرسی یوازې هغه کارونکي ته محدودوو چې کولی شي امتیازات لوړ کړي (زموږ په مثال کې، د مدیر نوم). په /etc/systemd/system/sshd-unix.socket کې اضافه کړئ: [ساکټ] ... SocketUser=adminusername SocketGroup=adminusername SocketMode=0660

سرچینه: opennet.ru

Add a comment