سؤال

حسنا، الإعداد هو التوظيف قليلا. لا تلومني، أنا لست سيمادمين.

ها هو الوضع. هناك جهاز واحد يمكنني أن أقوم به من خارج الشبكة. يمكنني فقط عن بعد في الجذر (نعم، سمعت اليمين) باستخدام المفتاح الخاص بي. أعلم أنه أكثر نموذجية لتسجيل الدخول كمستخدم ثم رفع امتيازات، ولكن في هذه الحالة، يجب علي القيام بالعكس.

المشكلة هي أنني أريد استخدام SSHFS من أجل تثبيت نظام الملفات عن بعد. لدي هذا العمل تماما. ومع ذلك، لا أريد كل ملف أهدأ به لتعكس أذونات الجذر. أرغب في الالتحام أولا (SU إلى حساب مستخدم).

أي شخص يعرف كيف يمكنني القيام بذلك مع ssmfs؟

هل كانت مفيدة؟

المحلول

يمكنك إنشاء برنامج نصي لاعتراض المكالمة إلى النظام الفرعي SFTP على الجهاز البعيد. ضع البرنامج النصي التالي في مكان ما على الخادم البعيد، دعنا نقول / الجذر / bin / sftp_intercept:

#!/bin/sh
exec sudo -u less_privileged_user /usr/lib/openssh/sftp-server

ثم قم بإجراء المكالمة مثل ذلك:

sshfs root@remote:dir mountpoint -o sftp_server=/root/bin/sftp_intercept

يجب بعد ذلك إعطاء النتائج المرجوة.

ستحتاج إلى إدخال Sudoers من الملائم لجعل Sudo يعمل دون أن يطالب بكلمة مرور، ولا تنس أن "chmod 755 ~ / bin / sftp_intercept".

أيضا، تأكد من أن / USR / LIB / OPENSSH / SFTP-Server هو في الواقع المسار إلى خادم SFTP. إذا لم يكن الأمر كذلك، فربما هو / USR / LIB / SFTP-Server.

نصائح أخرى

ssmfs manepage يقترح أن يمر

-o uid=$YOURUID -o gid=$YOURGID

يجب أن يقوم الاحتجاج SSHFS بتعيين المستخدم / مجموعة الملفات التي تنشئها إلى هذا UID / GID. ستحتاج إلى العثور على هذه على النظام البعيد، من الواضح.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top