সময়ের ব্যবধানে কীভাবে ব্যবহারকারীর ইন্টারনেটে অ্যাক্সেস সীমাবদ্ধ করবেন?


12

আমি চাই যে একজন ব্যবহারকারীর (সুডোর তালিকায় নয়) 14:00 থেকে 16:00 এবং 17:00 থেকে 18:30 অবধি ইন্টারনেট অ্যাক্সেস রয়েছে। এটা কি সম্ভব? আমি কি বিভিন্ন সপ্তাহের দিনগুলির জন্য বিভিন্ন সময়ের ব্যবধান নির্ধারণ করতে পারি?


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

আমি যখন এটি রাউটার স্তরে তৈরি করব, তারপরে সমস্ত ব্যবহারকারীরাই সীমাবদ্ধ থাকবে ...
কাপাকবব

আফাইক (এবং আমি 9.04 সাল থেকে এটির সমাধান খুঁজছি), এর জন্য কোনও সফ্টওয়্যার সমাধান নেই। মঞ্জুর, আমার নেটগুলিতে কম্পিউটারে কেবল একজন ব্যবহারকারী রয়েছে এবং তারা সকলেই একটি সার্ভার বক্সের মাধ্যমে সংযোগ স্থাপন করে যা গেটওয়ে হিসাবে কাজ করে। এই বাক্সটির একটি ক্রন্টব রয়েছে যা সেই সিস্টেমে সমস্ত ইন্টারনেট অ্যাক্সেস আটকে দেয় পরে এটি পরে তা সরিয়ে দেয়; পরবর্তীকালে এটি প্রতিদিন বিভিন্ন সময়েও চালিত হয়। কৌতূহলের বাইরে, আপনাকে কেন সেই কঠোর সময়ের মধ্যে অ্যাক্সেস সীমাবদ্ধ করতে হবে এবং ব্যবহারকারীর দ্বারা এটি করার দরকার কেন?
থমাস ওয়ার্ড

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

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

উত্তর:


7

ownerকোনও ব্যবহারকারীকে নেট অ্যাক্সেস করা থেকে বিরত রাখতে আপনি আইপটিবলের এক্সটেনশন ব্যবহার করতে পারেন , পছন্দ করুন

 sudo iptables -A OUTPUT -m owner --uid-owner user_you_want_to_block -j REJECT

এখন আপনি সেই নিয়মগুলি যুক্ত করতে বা মুছে ফেলার জন্য ক্রোন ব্যবহার করতে পারেন (আপনার যদি ইতিমধ্যে কিছু iptable নিয়ম থাকে বা বিভিন্ন সময়ে এটি বিভিন্ন ব্যবহারকারীদের কাছে চান তবে এটি শেল স্ক্রিপ্টিংয়ের কিছুটা প্রয়োজন হতে পারে)।


ওহ, আমি জানতাম না যে বিদ্যমান ছিল: পি @ ফ্লোরিয়ান: (ক) এর জন্য কোন কার্নেল মডিউলগুলি লোড করা দরকার? (খ) এটি দিয়ে কাজ করে -j REJECT --reject-with <argument>?
টমাস ওয়ার্ড

(ক) xt_owner স্বয়ংক্রিয়ভাবে লোড হবে। (খ) --reject-with এর সাথে কাজ করা উচিত নয় এর কোনও কারণ আমি দেখতে পাচ্ছি না তবে কখনও চেষ্টা করে দেখিনি।
ফ্লোরিয়ান ডিয়েচ

আমি এটি পরে পরীক্ষা করব: পি মালিকের মডিউলটির ব্যবহারের বিশদ বিবরণ দেওয়ার জন্য কি আইপটিবল ম্যানপেজে উপস্থিত রয়েছে? (পার্শ্ব নোট: আমি জিজ্ঞাসা করলাম যে কার্নেল মডিউল কারণ আমার কার্নেলটি কাস্টম সংকলিত হয়েছে: /)
টমাস ওয়ার্ড

ঠিক আমি যা খুঁজছি তা দেখতে .... আমি অবশ্যই এটি চেষ্টা করব :)
কাপাকোব

@ এভিলফিনিক্স: হ্যাঁ, এটি iptables
ম্যানপেজে

8
  1. রুট হিসাবে লগইন করুন:

    sudo su

  2. আপনার ফায়ারওয়ালের স্থিতি পরীক্ষা করুন:

    ufw status
    

    যদি ফায়ারওয়াল নিষ্ক্রিয় থাকে তবে ইস্যু করুন:

    ufw enable
    
  3. রবিবার, মঙ্গলবার, বুধবার ও শুক্রবারে ব্যবহারকারীর উইলহেলম ইন্টারনেট অ্যাক্সেসকে নির্ধারিত সময়ের ব্যবধানে সীমাবদ্ধ করতে (14: 00-16: 00 এবং 17: 00-18: 30):

    iptables -I OUTPUT -p tcp -m owner --uid-owner wilhelm -m time --weekdays Su,Tu,We,Fr --timestart 00:00:01 --timestop 14:00:00 -j DROP 
    iptables -I OUTPUT -p tcp -m owner --uid-owner wilhelm -m time --weekdays Su,Tu,We,Fr --timestart 16:00:00 --timestop 17:00:00 -j DROP 
    iptables -I OUTPUT -p tcp -m owner --uid-owner wilhelm -m time --weekdays Su,Tu,We,Fr --timestart 18:30:00 --timestop 23:59:59 -j DROP 
    

    পার্শ্ব নোট : * দয়া করে কমান্ডের -Iস্যুইচ করার পরিবর্তে স্যুইচ ব্যবহারের বিষয়টি লক্ষ্য করুন । সুইচ আউটপুট নিয়ম শৃঙ্খল শুরুতে (শীর্ষ) এ বদলে চেন নীচে উপরোক্ত নিয়ম (3) সন্নিবিষ্ট করে। নিয়মিত ফায়ারওয়াল নীতিগুলির উপরে ম্যানুয়ালি সংযুক্ত বিধিগুলি স্থাপন করা গুরুত্বপূর্ণ কারণ নিয়মগুলি উপরে থেকে নীচে প্রক্রিয়াজাত হয়। যদি শীর্ষস্থানীয় নিয়মগুলি একটি প্যাকেট স্বীকার করে, চেইন, OUTPUT, নীচের নীচে নীচের নিয়মগুলির জন্য পরীক্ষা করা হয় না যা প্যাকেটটি নষ্ট করে দিতে পারে।-Aiptables-I

  4. দয়া করে নিশ্চিত হয়ে নিন যে নিয়মগুলি যথাযথভাবে যথাযথভাবে প্রবেশ করেছে:

    iptables -L OUTPUT
    

    একটি অনুপযুক্ত নিয়ম মুছে ফেলতে অনুক্রমে বলতে নিয়ম নং 1, (উপর থেকে 1 ভিত্তিক গণনা iptables -v -L OUTPUTইস্যু): iptables -D OUTPUT 1

  5. পরবর্তী বুটে পুনরুদ্ধার করার জন্য iptables সংরক্ষণ করুন:

    iptables-save > /etc/iptables.rules
    
  6. মধ্যে /etc/rc.localপরিশেষে যোগ লাইন:

    iptables-restore < /etc/iptables.rules
    

সম্পন্ন

-

উবুন্টু ১১.১০ (একরিক), স্থানীয়ভাবে পরীক্ষিত he


1
একটি নিখুঁত সমাধান সহ দুর্দান্ত উত্তর! তবে মনে রাখবেন যে সমস্ত সময়কে ইউটিসি হিসাবে ব্যাখ্যা করা হয় , তাই কোনও ক্ষেত্রে স্থানীয়ভাবে ম্যানুয়ালি তাদের অফসেট করতে হতে পারে - আমার ক্ষেত্রে central european summer time -2 hours
যথাযথ পেঙ্গুইন

আমি সমস্ত পদক্ষেপগুলি করেছি এবং তারা কাজ করেছে (ইন্টারনেট অ্যাক্সেস সীমিত ছিল) তবে পুনরায় চালু করার পরে, ইন্টারনেটটি আবার চালু হয়েছিল। আমি iptables -L আউটপুট চেক করেছি এবং আমি যে নিয়মগুলি যুক্ত করেছি তা খুঁজে পেলাম না ...
Lawand

1
ufwআপনি পরে ব্যবহার করার পরেও সক্রিয় করার কারণ কী iptables?
বালু

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