ওপেনএসএইচ: অভ্যন্তরীণ-এসফ্টপ এবং এসএফটিপি-সার্ভারের মধ্যে পার্থক্য


81

ওপেনএসএসএইচ দিয়ে এসএফটিপি সেটআপ করার দুটি উপায় কেন এবং কখন ব্যবহার করতে হবে? তাদের মধ্যে কি কোনও পার্থক্য আছে?

আমি বলতে চাইছি প্রথমটি ওপেনএসএসএইচ থেকে একটি লিব ব্যবহার করছে এবং দ্বিতীয়টি "অভ্যন্তরীণ ব্যবহার করুন" বলে, তাই এটি ওপেনএসএইচএইচ?

Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

উত্তর:


94

উভয় sftp-serverএবং internal-sftpOpenSSH- র অংশ। sftp-serverএকক বাইনারি হয়। internal-sftpকেবল একটি কনফিগারেশন কীওয়ার্ড যা অন্য প্রসেসটি চালানোর পরিবর্তে sshdঅন্তর্নির্মিত এসএফটিপি সার্ভার কোড ব্যবহার করতে বলে sshd(সাধারণত sftp-server)।


কার্যক্ষম দৃষ্টিকোণ থেকে sftp-serverএবং internal-sftpপ্রায় অভিন্ন। এগুলি একই উত্স কোড থেকে নির্মিত।

এর প্রধান সুবিধাটি internal-sftpহ'ল ChrootDirectoryনির্দেশনার সাথে ব্যবহার করার জন্য এটির জন্য কোনও সমর্থন ফাইলের প্রয়োজন নেই ।

sshd_config(5)ম্যান পৃষ্ঠা থেকে উদ্ধৃতি :

  • জন্য Subsystemনির্দেশ :

    কমান্ডটি sftp-serverএসএফটিপি ফাইল স্থানান্তর সাবসিস্টেমটি প্রয়োগ করে।

    পর্যায়ক্রমে নামটি internal-sftpএকটি প্রক্রিয়াধীন এসএফটিপি সার্ভার প্রয়োগ করে। এটি ChrootDirectoryক্লায়েন্টগুলিতে পৃথক পৃথক ফাইল সিস্টেম রুট ব্যবহার করে কনফিগারেশনগুলি সহজতর করতে পারে ।

  • জন্য ForceCommandনির্দেশ :

    এর একটি কমান্ড নির্দিষ্ট করে internal-sftpপ্রক্রিয়াকরণের এসএফটিপি সার্ভার ব্যবহার করতে বাধ্য করবে যা যখন ব্যবহার করা হয় তখন কোনও সমর্থন ফাইলের প্রয়োজন হয় না ChrootDirectory

  • জন্য ChrootDirectoryনির্দেশ :

    ChrootDirectoryব্যবহারকারীর অধিবেশন সমর্থন করার জন্য প্রয়োজনীয় ফাইল ও ডিরেক্টরিগুলি থাকা আবশ্যক। একটি ইন্টারেক্টিভ সেশনের জন্য এই অন্তত একটি শেল, সাধারণত প্রয়োজন sh, এবং মৌলিক /devযেমন নোড null, zero, stdin, stdout, stderr, এবং ttyডিভাইস। এসএফটিপি ব্যবহার করে ফাইল ট্রান্সফার সেশনের জন্য প্রসেস-এস-এফ-সার্ভার ব্যবহার করা হলে পরিবেশের কোনও অতিরিক্ত কনফিগারেশন প্রয়োজন হয় না, যদিও লগিং ব্যবহার করা সেশনগুলি /dev/logকিছু অপারেটিং সিস্টেমে ক্রুট ডিরেক্টরিতে অন্তর্ভুক্ত থাকতে পারে ( sftp-serverবিশদ বিবরণ দেখুন)।

এর আরেকটি সুবিধা internal-sftpহ'ল একটি পারফরম্যান্স, কারণ এটির জন্য একটি নতুন উপ-প্রক্রিয়া চালানোর প্রয়োজন নেই।


internal-sftpস্বতন্ত্র চেয়ে (2008 সালে OpenSSH- র 4.9p1?) অনেক পরে যোগ করা হয়েছিল sftp-serverবাইনারি, কিন্তু এটা এখন দ্বারা পূর্বনির্ধারিত।

আমি বিশ্বাস করি sftp-serverনতুন স্থাপনাগুলির জন্য কোনও কারণ নেই ।


কার্যকারিতা অভিন্ন এবং উপরোক্ত সুবিধাগুলিও রয়েছে বলে মনে হয় এটি sshdস্বয়ংক্রিয়ভাবে ব্যবহার করতে পারে internal-sftpit তবে প্রান্তের কেস রয়েছে, যেখানে পার্থক্য রয়েছে।sftp-serverinternal-sftp

কয়েকটি উদাহরণ:

  • প্রশাসক নির্দিষ্ট ব্যবহারকারীদের লগ-ইন। স্যুইচ করা থেকে বিরত লগ-ইন শেল কনফিগারেশনের উপর নির্ভর করতে পারে internal-sftpসীমাবদ্ধতা বাইপাস হবে, যেমন লগ-ইন শেল আর জড়িত আছেন।

  • sftp-serverবাইনারি ব্যবহার করে (একক প্রক্রিয়া হওয়া) আপনি কিছু হ্যাক ব্যবহার করতে পারেন, যেমন এসএফটিপি এর অধীনে চালানোsudo

  • এসএসএইচ -১ এর জন্য (যদি কেউ এখনও এটি ব্যবহার করে থাকেন) তবে Subsystemনির্দেশিকা মোটেই জড়িত নয়। এসএসএইচ -১ ব্যবহার করে একটি এসএফটিপি ক্লায়েন্ট সার্ভারকে স্পষ্টভাবে বলে, সার্ভারটি কোন বাইনারিটি চালানো উচিত। সুতরাং উত্তরাধিকারী এসএসএইচ -১ এসএফটিপি ক্লায়েন্টদের sftp-serverনাম হার্ড-কোডড রয়েছে।



6

আপনি একটি অনুমোদিত_কিকে বাহ্যিক sftp- সার্ভারে লক করতে পারেন।

কমান্ড = "/ ইউএসআর / লিবেক্সেক / ওপেনশ / এসফ্টপি-সার্ভার" এসএসএস-আরএসএ এএএএ… == ব্যবহারকারীর_হোস্ট.কম

আপনি যখন করবেন, আপনার ব্যবহারকারী sftp করতে পারে, তবে স্ক্রিপ বা এসএসএস করতে পারে না:

ft sftp হোস্ট: / ইত্যাদি / গ্রুপ / টিএমপি
হোস্টে সংযুক্ত হচ্ছে ...
/ টিএমপি / গোষ্ঠীতে আনয়ন / ইত্যাদি / গ্রুপ
/ ইত্যাদি / গ্রুপ 100% 870 0.9KB / s 00:00

অন্য যে কোনও কিছু করার চেষ্টা কেবল স্তব্ধ হয়ে যাবে:

p scp হোস্ট: / ইত্যাদি / গ্রুপ / টিএমপি
সিগন্যাল দ্বারা হত্যা করা হয়েছে 2।

sh ssh হোস্ট আপটাইম
সিগন্যাল দ্বারা হত্যা করা হয়েছে 2।

হায়রে, sshd_config সংশোধন না করা হলে কোনও কী-কে chroot এ লক করার সহজ উপায় নেই। সিস্টেম ম্যানেজারের হস্তক্ষেপ ছাড়াই কোনও ব্যবহারকারীর পক্ষে সক্ষম হওয়াই এটি সত্যই দুর্দান্ত।


3
ForceCommand internal-sftpএকই অর্জন করা উচিত
ptman

খুব সহজ বিষয় হ'ল ক্রুট না করে sshfs host:/home/user/.ssh ~/hackmeআপনি পরে যদি আপনার মন পরিবর্তন করেন তবে অ্যাক্সেস খোলার জন্য সেই সমস্ত সেটিংস ফিরে সম্পাদনা করতে পারবেন ।
sh1
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.