উবুন্টুতে কীভাবে সহজ ফায়ারওয়াল সেটআপ করবেন?


18

উবুন্টুতে কীভাবে সাধারণ ফায়ারওয়াল সেটআপ করা যায় (কেবলমাত্র কনসোল ব্যবহার করে) কেউ কি কনফিগারেশন উদাহরণ সহ কিছু সাধারণ পদক্ষেপ দিতে পারেন? কেবল ssh, http এবং https অ্যাক্সেসের অনুমতি দেওয়া উচিত।


আপনি কি কোনও নেটওয়ার্ক ফায়ারওয়াল, বা কেবল একটি সিস্টেম ফায়ারওয়াল সম্পর্কে কথা বলছেন?
ব্র্যাড গিলবার্ট

নেটওয়ার্ক ফায়ারওয়াল বলতে কী বোঝ? এটি কি রাউটারে ফায়ারওয়াল? যদি হ্যাঁ, তবে আমি সিস্টেম ফায়ারওয়াল সম্পর্কে বলছিলাম।
ক্লিও করুন

উত্তর:


20

sudo ufw ডিফল্ট অস্বীকার

sudo ufw অনুমতি HTTP

sudo ufw https অনুমতি দেয়

sudo ufw অনুমতি ssh

sudo ufw সক্ষম


আমি যদি এই আদেশগুলি ssh এর মাধ্যমে ক্রমানুসারে কল করি তবে এটি কি আমার সংযোগটি ভঙ্গ করবে?
ক্লিও করুন

আমি এটি বিশ্বাস করি না, তবে আপনার নিশ্চিত হওয়া উচিত check এটি পুনঃসূচনাগুলির মধ্যে এর স্থিতিটিও ধারণ করে, সুতরাং আপনার কেবল একবার এটি করা উচিত।
Nerdfest

আমি যখন এই কম্পিউটারের কাছাকাছি থাকব তখন তা পরীক্ষা করব ...
ক্লিও করুন

আপনি এটিকে কোনও স্ক্রিপ্টে রেখে এটিকে চালাতে পারেন এবং তারপরেও সংযোগ বিচ্ছিন্ন হয়ে গেলে আপনি পরে পুনরায় সংযোগ করতে সক্ষম হবেন। স্ক্রিপ্টের জন্য নীচে আমার উত্তর দেখুন।
হামিশ ডাউনার

2
আগের মন্তব্যটি সঠিক। মূলত, উপরের স্ক্রিপ্টে প্রথম কমান্ডটি সর্বশেষে চালান।
Nerdfest

14

এই স্ক্রিপ্ট ব্যবহার করুন।

আপনি যদি ইনকামিং আইসিএমপি (পিং) এর অনুমতি দিতে চান তবে ঠিক করুন।

# Clear any existing firewall stuff before we start
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# As the default policies, drop all incoming traffic but allow all
# outgoing traffic.  This will allow us to make outgoing connections
# from any port, but will only allow incoming connections on the ports
# specified below.
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT

# Allow all incoming traffic if it is coming from the local loopback device
iptables -A INPUT -i lo -j ACCEPT

# Accept all incoming traffic associated with an established
# connection, or a "related" connection
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow incoming connections
# SSH
iptables -A INPUT -p tcp -i eth0 --dport 22 -m state --state NEW -j ACCEPT
# HTTP
iptables -A INPUT -p tcp -i eth0 --dport 80 -m state --state NEW -j ACCEPT
# HTTPS
iptables -A INPUT -p tcp -i eth0 --dport 443 -m state --state NEW -j ACCEPT

# Allow icmp input so that people can ping us
iptables -A INPUT -p icmp -j ACCEPT

# Reject all other incoming packets
iptables -A INPUT -j REJECT

8

অন্য উত্তরে মন্তব্যে উল্লিখিত হিসাবে, ssh বন্দরের অনুমতি দেওয়ার আগে আপনি আপনার সংযোগটি হারাতে চান না। ম্যান পৃষ্ঠা থেকে:

"রিমোট ম্যানেজমেন্ট

যখন ইউএফডাব্লু চালাবেন বা ইউএনডব্লিউটিটিকে এটির স্ক্রিপ্টের মাধ্যমে শুরু করবেন, তখন ইউএফডাব্লু তার চেইনগুলি ফ্লাশ করবে। এটি প্রয়োজনীয় তাই ইউএফডাব্লু ধারাবাহিক অবস্থা বজায় রাখতে পারে তবে এটি বিদ্যমান সংযোগগুলি (যেমন ssh) ফেলে দিতে পারে। ufw ফায়ারওয়াল সক্ষম করার আগে বিধি যুক্ত করার পক্ষে সমর্থন করে, তাই প্রশাসকরা এটি করতে পারেন:

ufw allow proto tcp from any to any port 22

'ufw সক্ষম' চালানোর আগে। বিধিগুলি এখনও তছনছ করা হবে, তবে ফায়ারওয়াল সক্রিয় করার পরে ssh বন্দরটি খোলা থাকবে। দয়া করে নোট করুন যে একবার ইউএফডাব্লু 'সক্ষম' হয়ে গেলে, ইউএফডাব্লু বিধিগুলি যোগ করার সময় এবং মুছে ফেলার সময় চেইনগুলি ফ্লাশ করবে না (তবে কোনও নিয়ম সংশোধন করার সময় বা ডিফল্ট নীতি পরিবর্তন করার সময় হবে)।

সুতরাং এটি এখানে একটি পদ্ধতির যা এটি সেট করতে কোনও স্ক্রিপ্ট ব্যবহার করে। আপনি যখন এই স্ক্রিপ্টটি চালাবেন তখন আপনি লগ আউট হয়ে যাবেন তবে এটি চালানোর পরে আপনি আবার ssh এর মাধ্যমে আবার লগ ইন করতে পারবেন।

নিম্নলিখিতটি একটি স্ক্রিপ্টে রাখুন এবং এটিকে start -firewall.sh বলুন

#!/bin/sh
ufw allow ssh
ufw enable
ufw default deny
ufw allow http
ufw allow https

এবং তারপরে এটিকে এক্সিকিউটেবল করে তুলুন এবং এটি করে চালান

$ chmod + x start-firewall.sh
$ sudo ./start-firewall.sh

আরও জানতে, ম্যান পৃষ্ঠাটি পড়ুন


2

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


1

কুইক টেবিলগুলি আমাকে iptables বিধিগুলি শিখতে সহায়তা করেছিল। কেবল স্ক্রিপ্টটি চালান এবং এটি আপনার জন্য একটি iptables স্ক্রিপ্ট তৈরি করবে ... তারপরে আপনি এটি খুলতে এবং এটি আপনাকে জিজ্ঞাসা করা প্রশ্নগুলির দ্বারা উত্পন্ন সম্পর্কিত আদেশগুলি দেখতে পারে। এটি একটি দুর্দান্ত শিক্ষার উত্স।

দুর্ভাগ্যক্রমে, এটি আর রক্ষণাবেক্ষণ করা হয় না।

http://qtables.radom.org/


1

আমি সত্যিই ফায়ারহোল ( প্যাকেজ ) ব্যবহার করতে পছন্দ করি ।

সেটআপ বিধি তৈরি করতে আপনার পছন্দ হয় যে আপনি ফাইল / ইত্যাদি / ডিফল্ট / ফায়ারহল সম্পাদনা করতে হবে এবং START_FIHOL = YES পরিবর্তন করতে হবে

এবং আপনি আপনার /etc/firehol/firehol.conf দেখতে দেখতে চাইবেন।

version 5

interface any IfAll
    client any AnyClient accept
    server "ssh http https" accept
    # Accept everything from trusted networks
    server anystateless AllInside accept src "10.3.27.0/24"

ফায়ারহোল সম্পর্কে দুর্দান্ত জিনিসগুলির মধ্যে একটি হ'ল 'চেষ্টা করুন' আদেশ। আপনি আপনার কনফিগারেশন ফাইলটি সামঞ্জস্য করতে পারেন এবং একটি 'ফায়ারহল ট্রাই' করতে পারেন, আপনি যদি সেখানে এসএসএসের মাধ্যমে সংযুক্ত হয়ে থাকেন এবং আপনি যা পরিবর্তন করেছেন সে সম্পর্কে আপনার নেটওয়ার্ক অ্যাক্সেসকে মেরে ফেলেছে তবে ফায়ারহল পরিবর্তনগুলি ফিরিয়ে আনবে। পরিবর্তনগুলি বাস্তবে কার্যকর হওয়ার জন্য আপনাকে অবশ্যই কমিট বলতে হবে।


1
ফায়ারহল iptables নিয়মগুলি পরিচালনা করার জন্য উজ্জ্বল। '$ ফায়ারহল চেষ্টা করুন "" ফায়ারওয়াল সক্রিয় করে তবে ব্যবহারকারী শব্দটি কমিট করার সময় পর্যন্ত অপেক্ষা করে this
গ্যারেথ

Sooo আপনি বিধিগুলি যুক্ত / সম্পাদনা / মুছে ফেলতে পারেন এবং তারপরে সেগুলি পরীক্ষা করতে পারেন। আপনি যদি এসএসএইচের মাধ্যমে দূরবর্তীভাবে এটি করে থাকেন তবে এটি আপনাকে আপনার নিজের সার্ভার থেকে লক করতে যাচ্ছে না!
গ্যারেথ



-1

sudo apt-get install firestarter

তারপরে, সিস্টেম-> প্রশাসন মেনুতে দেখুন।


প্রশ্নকারী কেবল কনসোলটি ব্যবহার করতে চায়
মাইকেজ

আহ, আমার ভুল বিকল্পভাবে। প্রশাসক এখনও সার্ভারের মধ্যে এক্স-এস-এস করতে পারেন এবং দূরবর্তীভাবে ফায়ার স্টার্টার চালাতে পারেন।
spoulson

1
Ssh -X :) শুরু করার জন্য আমার কিছু এক্স সার্ভার ইনস্টল করতে হবে।
ক্লিও করুন

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