কোনও নির্দিষ্ট ফোল্ডারে অ্যাক্সেসের অনুমতি রয়েছে এমন কোনও ssh ব্যবহারকারী কীভাবে যুক্ত করবেন?


17

কোনও নির্দিষ্ট ফোল্ডারে অ্যাক্সেসের অনুমতি রয়েছে এমন কোনও ssh ব্যবহারকারী কীভাবে যুক্ত করবেন?

useradd -d /var/www/xyz.com.tr/musteri  -s /bin/bash -g sshd musteri

আমি একটি ব্যবহারকারী তৈরি করেছি musteri। আমি এর হোম ফোল্ডার এবং গোষ্ঠী সেট করেছি। সুতরাং, আমি musteri"/var/www/xyz.com.tr/musteri" এ ব্যবহারকারীদের সংহত করতে চাই । আমি এটি অন্য ফোল্ডারে অ্যাক্সেস করতে চাই না।


আপনি কি ব্যবহারকারীর পুরো শেল অ্যাক্সেস পেতে চান, বা কেবল sftp এবং rsync এর মতো ফাইলগুলি অনুলিপি করতে চান?
গিলস 'তাই খারাপ হওয়া বন্ধ করুন'

যদি দ্বিতীয়টি হয় তবে আপনি scponlyসম্ভবত chrootসেই ডিরেক্টরিতে তার অ্যাক্সেসকে সীমাবদ্ধ করতে মোডে অপারেটিং করে শেল হিসাবে সন্ধান করতে পারেন ।
শাদুর

1
@ গিলস - আমি এসএফটিপি এর মাধ্যমে অ্যাক্সেস করতে চাই। তবে, আমি এটি অন্য ফোল্ডারে অ্যাক্সেস করতে চাই না।
সেল-ও

1
@ সেল-ও: আপনার যদি কেবল কয়েকটি ফাইল ট্রান্সফার প্রোটোকল প্রয়োজন এবং শেল না থাকে তবে ক্রুট প্লাস স্কেপোনলি বা আরএসএস (গুগল scponly chrootবা rssh chrootআপনাকে হাওটোসের দিকে নিয়ে যাওয়া উচিত) ব্যবহার করুন।
গিলস 'তাই খারাপ হওয়া বন্ধ করুন'

এসিএল ব্যবহার সম্পর্কে কীভাবে?
এফএমপুরফি

উত্তর:


19

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

নির্দিষ্ট ফোল্ডারে এসএফটিপিকে অ্যাক্সেস দেওয়ার জন্য, আপনি এর মতো কিছু করতে পারেন।

  1. সিস্টেমে একটি নতুন গ্রুপ যুক্ত করুন, বলুন 'sftponly'।
  2. আপনার সিস্টেমে এমন কোনও ব্যবহারকারী যুক্ত করুন যার এই গোষ্ঠীর অধিকার সীমাবদ্ধ থাকতে হবে। আপনি তাদেরকে / বিন / সত্যের মতো সীমাবদ্ধ শেলও দিতে পারেন, তবে এটির প্রয়োজন নেই।
  3. /etc/ssh/sshd_configএই লাইনগুলির সাহায্যে আপনার ssh কনফিগারেশন ফাইল (সাধারণত ) পরিবর্তন করুন
    সাবসিস্টেম sftp অভ্যন্তরীণ-sftp

    ম্যাচ গ্রুপ স্পাফোনলি
        ক্রুটডাইরেক্টরি% এইচ
        AllowTCP ফরওয়ার্ডিং নং
        এক্স 11 ফরওয়ার্ডিং নং
        ফোর্সকম্যান্ড অভ্যন্তরীণ-এসফটিপি

এটি এসএসএইচের অভ্যন্তরীণ এসফটিপ সাবসিস্টেমটিকে সক্রিয় করবে এবং লগ ইন করার সময় সেই সিস্টেম গ্রুপের সদস্যদের কেবলমাত্র সেই সিস্টেমটি ব্যবহার করতে বাধ্য করবে It এটি তাদের হোম ডিরেক্টরিতে ক্রোট করবে। আপনি তাদের হোম-ডিরেক্টরগুলির উপ-ফোল্ডার হিসাবে এমন কোনও কিছু দিয়েও পরিবর্তন করতে পারেন ChrootDirectory %h/musteri_sftpযাতে তারা তাদের সিস্টেমের বাকী ফাইলগুলি দেখতে না পারে তবে তাদের বাড়ির ফোল্ডারের একটি বিশেষ সাবফোল্ডারে সরাসরি লগইন করতে পারে।

কোলে জেলসিন।


Lincelikle teşekkürler। ;) যেমন আপনি উল্লেখ করেছেন, আমি এসএফটিপি স্থাপন করেছি। তবে iptables সম্পর্কে আমার একটি সমস্যা আছে e এখানে আমার নিয়ম। -> একটি আরএইচ-ফায়ারওয়াল -১-ইনপুট-মি রাষ্ট্র - স্টেট নতুন-এমসি টিসিপি-পি টিসিপি --dport 21 -j এসিসিপিটি
সেল-ও

1
বিরিয়ে দেইল। এফটিপি 21 বন্দর ব্যবহার করবে, এসএফটিপি প্রোটোকলের মতো একটি এফটিপি যা এসএসএইচ চ্যানেলটির উপরে চলে, সুতরাং এটি এসএসএইচ পোর্টটি ব্যবহার করবে যা পূর্বনির্ধারিতভাবে 22.
কালেব

নোট করুন যে আপনার পূর্ববর্তী বিদ্যমান সাবসিস্টেম কমান্ডটি সনাক্ত এবং মন্তব্য করা উচিত (যেমন সাবসিস্টেম sftp / usr / lib / openssh / sftp-server)
সিএনআরএল

আমার সমস্যা সমাধান করে এবং কিছু সহজ তুর্কি বাক্যাংশ শিখেছি! বোনাস!
ইমাজেন্টহাট

2

আমার মতে এটি খুব কঠিন, যদি অসম্ভব না হয়। যখন অন্তত, SSH তিনি মাধ্যমে ব্যবহারকারী সংযোগ স্থাপন করে একটি শেল, আপনার ক্ষেত্রে দরকার bash। মৃত্যুদন্ড কার্যকর করতে /bin/bashতার অ্যাক্সেসের অনুমতি প্রয়োজন /binbashনিজেই /etc(যেমন /etc/bash.bashrc) থেকে কিছু স্টাফ পড়া দরকার , যাতে ব্যবহারকারীর অ্যাক্সেসও প্রয়োজন /etc। ধরে নেওয়া যায় যে ব্যবহারকারী কেবল এই ডিরেক্টরিতে ঘুরতে চান না, তিনি একটি ফাইল পড়তে চাইতে পারেন তবে উদাহরণস্বরূপ কার্যকর করতে vimতার অ্যাক্সেসও প্রয়োজন /usr/bin
এটি কেবলমাত্র একটি সামান্য বিক্ষোভ, আরও কিছু নির্ভরশীলতা রয়েছে, উদাহরণস্বরূপ, ব্যবহারকারীর অ্যাক্সেস না থাকলে কী হবে তা আমি সত্যিই জানি না /tmp..

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


rbashঠিক এটি করতে ডিজাইন করা হয়েছে।
বাহামত

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