क्या Ubuntu 16.04 के लिए कोई अनुप्रयोग स्तर फ़ायरवॉल है? (GUI के साथ)


20

मुझे यह स्वीकार करना चाहिए कि मैं लिनक्स की दुनिया में बहुत नया हूं, और ऐसी अवधारणाएं हैं जो मेरे लिए बहुत अपरिचित लगती हैं।

एक बात जो मुझे सबसे ज्यादा याद आती है, वह है एक अच्छा सा सिंपल एप्लीकेशन लेवल फ़ायरवॉल। अब तक, यह सब व्यापक घुसपैठ और इंटरनेट से स्थायी कनेक्टिविटी के साथ यह जानना आवश्यक है कि वास्तव में आपका कंप्यूटर क्या कर रहा है, क्यों और किसके साथ। एक प्रोटोकॉल विश्लेषक ठीक है, लेकिन बहुत ही अमित्र और समय लेने वाला "विश्लेषण" है जो घर के उपयोगकर्ताओं के लिए व्यावहारिक रूप से बेकार है।

मैंने विंडोज वातावरण में बहुत सारे कार्यक्रम खोजे हैं जो कि इंटरनेट से कनेक्ट नहीं होने चाहिए लेकिन वे करते हैं (और मेरे जोनआर्म फ्री फायरवाल के साथ मैं उन्हें रोक सकता हूं)।

Gufw (और कई अन्य) के साथ आपको यह जानना होगा कि आपके पास कौन से ऐप पहले से इंस्टॉल हैं (और हम जानते हैं कि इस आधुनिक OS withs के साथ अरबों-कोडों के साथ यह लगभग असंभव है)।

मैं जो देख रहा हूँ वह एक फ़ायरवॉल है जो NIC / WAN कनेक्शन पर नज़र रखता है और किसी भी प्रोग्राम / ऐप का पता लगाता है या जो भी इसके माध्यम से "बात" करने की कोशिश करता है, भले ही पोर्ट जो भी उपयोग करने की कोशिश कर रहा हो (जिन ऐप्स का मैंने पहले उल्लेख करने की कोशिश की है) अच्छी तरह से टीसीपी पोर्ट का उपयोग कर पता है: 80, 443, 8080)। क्या यह मौजूद है? (यदि नहीं, तो मुझे कैसे पता है कि मेरा कंप्यूटर सुनिश्चित करने के लिए क्या कर रहा है?)


1
बस जिज्ञासु: क्या इस सांप के तेल ने किसी भी गंभीर समस्या (जैसे कि वैनाक्राइ) को हाल ही में रोका है?
मोनिका को पुनः स्थापित करें - एम। श्रोडर

जवाबों:


12

Douane

डौने एक व्यक्तिगत फ़ायरवॉल है जो उपयोगकर्ता की गोपनीयता की रक्षा करता है ताकि उपयोगकर्ता यह नियंत्रित कर सके कि कौन से अनुप्रयोग अपने GNU / लिनक्स कंप्यूटर से इंटरनेट से जुड़ सकते हैं।


स्थापना

अब (2017/05/22) तक उबंटू पैकेज उपलब्ध नहीं है। आपको इसे स्रोत से बनाना होगा।

ये इंस्टॉलेशन निर्देश Douane Wiki की जानकारी पर आधारित हैं और Ubuntu 16.04.2 64-बिट पर टेस्ट किए गए हैं।

कमांड चलाने के लिए एक टर्मिनल ( Ctrl+ Alt+ T) खोलें ।

तैयारी

अपने सिस्टम को अपडेट करें:

sudo apt update
sudo apt full-upgrade

यदि आपको अपने कंप्यूटर को पुनरारंभ करने के लिए एक सूचना मिलती है, तो उसे पुनरारंभ करें।

निर्भरता स्थापित करें

sudo apt install git build-essential dkms libboost-filesystem-dev libboost-regex-dev libboost-signals-dev policykit-1 libdbus-c++-dev libdbus-1-dev liblog4cxx10-dev libssl-dev libgtkmm-3.0-dev python3 python3-gi python3-dbus

संकलन के लिए एक निर्देशिका बनाएँ

cd
mkdir Douane
cd Douane

कर्नेल मॉड्यूल बनाएँ

git clone https://github.com/Douane/douane-dkms
cd douane-dkms
sudo make dkms

जांचें कि क्या मॉड्यूल बनाया गया था और सही तरीके से स्थापित किया गया था:

lsmod | grep douane

आपको कुछ इस तरह देखना चाहिए:

douane                 20480  0

डेमॉन का निर्माण करें

cd ~/Douane
git clone --recursive https://github.com/Douane/douane-daemon
cd douane-daemon
make
sudo make install

संवाद प्रक्रिया का निर्माण करें

cd ~/Douane
git clone --recursive https://github.com/Douane/douane-dialog
cd douane-dialog
make
sudo make install

संवाद प्रक्रिया शुरू करें:

/opt/douane/bin/douane-dialog &

फिर जांचें कि क्या चल रहा है:

pgrep -a douane-dialog

आपको कुछ इस तरह देखना चाहिए:

21621 /opt/douane/bin/douane-dialog

विन्यासकर्ता बनाएँ

cd ~/Douane
git clone https://github.com/Douane/douane-configurator
cd douane-configurator
sudo python3 setup.py install

डेमॉन शुरू करें और ऑटोमैटिक स्टार्टिंग सेटअप करें

/etc/init.d/douaneडेमॉन की स्वचालित शुरुआत को सक्षम करने के लिए मुझे फ़ाइल में निम्नलिखित पाठ सम्मिलित करना था :

### BEGIN INIT INFO
# Provides:          douane
# Required-Start:
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Douane firewall
### END INIT INFO

संपादन के लिए फ़ाइल खोलें:

sudo nano /etc/init.d/douane

फिर कार्यक्रम विवरण के बाद उपरोक्त पाठ पेस्ट करें। प्रेस Ctrl+ O, Enterबचाने के लिए, तब Ctrl+ Xसंपादक से बाहर निकलने के लिए।

पाठ डालने के बाद फ़ाइल की यह पहली 21 पंक्तियाँ हैं:

#!/bin/bash
#
# douane      This shell script takes care of starting and stopping
#             douane daemon (A modern firewall at application layer)
#
# Author: Guillaume Hain zedtux@zedroot.org
#
# description: douane is the daemon process of the Douane firewall application. \
# This firewall is limiting access to the internet on application bases.

### BEGIN INIT INFO
# Provides:          douane
# Required-Start:
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Douane firewall
### END INIT INFO

# Source function library.
. /lib/lsb/init-functions

अब आप ऑटो स्टार्ट और डेमन शुरू कर सकते हैं:

sudo systemctl daemon-reload
sudo systemctl enable douane
sudo systemctl start douane

फ़िल्टर को सक्रिय करें और संवाद शुरू करें

कॉन्फ़िगरेशन प्रारंभ करें:

douane-configurator

फिर सुनिश्चित करें कि स्विच मेरे नेटवर्क ट्रैफ़िक को फ़िल्टर करने के लिए डौने का उपयोग करें और बूट पर ऑटो स्टार्ट ड्युएन दोनों चालू हैं।

आप नियम टैब में फ़िल्टरिंग नियमों की समीक्षा कर सकते हैं । एक नियम पर राइट क्लिक करने पर आपको इसे हटाने का विकल्प मिलता है।

परीक्षा

यदि सब कुछ ठीक है, तो आपको नेटवर्क कनेक्शन का उपयोग करने वाले एप्लिकेशन खोलने पर डोन विंडो को अनुमति के लिए पूछना चाहिए।


1
एरिक हाय, आपके तुरंत जवाब के लिए बहुत बहुत धन्यवाद। जैसा कि मैंने उल्लेख किया है कि मैं लिनक्स के साथ काफी नौसिखिया हूं। मैंने अपना प्रश्न पोस्ट करने से पहले इस डौने चीज़ को पाया, मैंने डौने साइट पर एक नज़र डाली और उबंटू के लिए कोई "पैकेज" नहीं है, केवल "आर्चलिनक्स" नामक कुछ के लिए (मुझे लगता है कि लिनक्स का एक और डिस्ट्रो है) ... मुझे भी मिला कि कोई भी पुन: स्थापन और स्थापना को डिस्ट्रोफिक बनाने के लिए इसे अनुकूलित कर सकता है ... क्या मैं सही हूं? ... कोई भी पहले से ही ubuntu के लिए संकलित और पैक नहीं किया गया है?
jonabrv1965

1
सबसे पहले आप फिर से समर्थन के लिए एरिक को धन्यवाद देते हैं..हम ... 30 से अधिक चरणों को लगाने और एक ऐप को लिनक्स में चलाने के लिए ... बहुत उपयोगकर्ता के अनुकूल नहीं है, है न? ... मुझे लग रहा है देखें कि क्यों टेकी लोगों के बाहर लिनक्स का बहुत कम स्वागत है ... मैं इसे एक कोशिश दूंगा (मुख्यतः क्योंकि मुझे किसी भी कीमत पर एम $
विंडोज

क्या बायनेरिज़ प्रदान करने के लिए पीपीए नहीं है ? Google ने launchpad.net/~zedtux/+archive/ubuntu/douane (लेकिन मैंने इसका परीक्षण नहीं किया है) पाया।
मेबलियस

4

एक नई परियोजना है जिसे OpenSnitch कहा जाता है

https://www.cyberciti.biz/python-tutorials/opensnitch-the-little-snitch-application-like-firewall-tool-for-linux/

प्रोजेक्ट पेज https://www.opensnitch.io/ है

इस बिंदु पर इसे अल्फा सॉफ्टवेयर माना जाता है, और अजीब तरह से इसे पायथन में लिखा गया है, लेकिन कम से कम यह एक ताजा प्रयास है, जबकि डौने एक बहुत पुराना कार्यक्रम है जो मुझे लगता है कि स्थापित करना बहुत कठिन है।

डिस्क्लेमर: मैंने व्यक्तिगत रूप से किसी भी कार्यक्रम का परीक्षण नहीं किया है, मैं सिर्फ यह पता लगाने की कोशिश कर रहा था कि क्या कोई अन्य विकल्प हैं और ध्यान दें कि किसी ने भी यहां ओपनसिनेच का उल्लेख नहीं किया था।


> "अजीब तरह से यह पायथन में लिखा गया है" - नहीं, यह अजीब नहीं है, यह वास्तव में समय बचाने और कम गलतियों को करने के लिए "गर्म" भागों को छोड़कर सभी चीजों के लिए एक उच्च स्तरीय भाषा का उपयोग करने का एक बहुत अच्छा विचार है।
सर्ज बोर्श

3

यह वास्तव में एक अच्छा सवाल है, लेकिन मुझे इस तरह के सवालों से नफरत है, क्योंकि उन्हें जवाब दिए बिना जवाब देना बहुत मुश्किल है क्योंकि सुरक्षा महत्वपूर्ण नहीं है।

तो सबसे पहले, मुझे यह बताना चाहिए कि सुरक्षा महत्वपूर्ण है, लेकिन लिनक्स इसे बहुत अलग तरीके से संभालता है फिर विंडोज करता है।

तो अपने प्रश्न से निपटने देता है।

पहले एक आउटगोइंग फ़ायरवॉल नहीं है जो ज़ोन अलार्म के समान काम करता है। लिनक्स बस एक के लिए एक बड़ी जरूरत नहीं है। कई एप्लिकेशन क्लाइंट / सर्वर आर्किटेक्चर में काम करते हैं, भले ही आप उन्हें एक ही मशीन पर उपयोग कर रहे हों। Xorg एक बेहतरीन उदाहरण है। पहले आपके पास एक सर्वर होता है (इस मामले में वह हिस्सा जो स्क्रीन पर आ जाता है) और एक क्लाइंट (gedit) gedit सर्वर से उसके बटनों के ड्राइंग के बारे में बात करता है, यह टेक्स्ट वगैरह रखता है। यहां तक ​​कि साधारण ओएस के रूप में कुछ भी एक ही वास्तुकला (या हो सकता है) है। एक प्रोग्राम एक सर्वर के रूप में कार्य करता है जो सूचना को सुनता है और जब इसे प्राप्त करता है तो डेटा भेजता है, फिर एक क्लाइंट उस "माउस सर्वर" से "कनेक्ट" होता है और जानकारी की प्रतीक्षा करता है।

यह लिनक्स में इतना प्रचलित है कि यदि आप एक "फ़ायरवॉल" बनाते हैं जो हर नेटवर्क कनेक्शन के लिए अनुमति मांगता है तो आप शायद इसे कॉन्फ़िगर नहीं कर पाएंगे क्योंकि यह स्वयं के सर्वर से कनेक्ट नहीं हो सकता है।

यह सब एक बहुत ही मोटा उदाहरण है, इसमें से कुछ भ्रामक है क्योंकि यह बहुत उच्च स्तर है। लेकिन यह अभी भी बहुत सच है।

इसके खिलाफ लिनक्स उपयोगकर्ताओं की रक्षा के लिए, हमारे पास दो बहुत ही बुनियादी नियम हैं जो एक बहुत अच्छा "बुनियादी" काम करते हैं।

पहला, रूट को छोड़कर कोई भी उपयोगकर्ता 1024 से नीचे किसी भी पोर्ट को नहीं खोल सकता है। इसका मतलब यहां तक ​​कि एक FTP सर्वर (एक मानक बंदरगाह पर) चलाने के लिए आपको रूट एक्सेस की आवश्यकता है। आप एक उपयोगकर्ता के रूप में आमतौर पर "उच्च बंदरगाहों" (1024 से ऊपर) को खोल सकते हैं। लेकिन नियम दो देखें।

2। कोई भी प्रक्रिया किसी भी फ़ाइल तक नहीं पहुंच सकती है जो प्रक्रिया शुरू करने वाला उपयोगकर्ता एक्सेस नहीं कर सकता है। (फिर से बहुत उच्च स्तर) इसलिए यदि "coteyr" एक FTP सर्वर को शुरू करना था, तो उस एफ़टीपी सर्वर को बदतर स्थिति (उच्च स्तर) पर केवल वही पहुँच प्राप्त होगी जो कि उपयोगकर्ता coteyr के रूप में होती है।

इन दो नियमों के संयोजन के कारण, एक "सॉफ़्टवेयर" जो हर बार कुछ पूछता है कि फ़ायरवॉल कनेक्ट करने की कोशिश करता है बस रास्ते में हो जाता है, और इसके लिए बहुत अधिक मांग नहीं है।

कहा कि आप हमेशा एक आउटबाउंड फ़ायरवॉल नियम बना सकते हैं, और कई मामलों में यह शायद एक बुरा विचार नहीं है। फ़ाइल आधारित सॉकेट (या मेमोरी बेस्ड) और नेटवर्क आधारित सॉकेट का उपयोग करने के लिए कई सेवाएं (और डिफ़ॉल्ट रूप से) कॉन्फ़िगर की जा सकती हैं।

एक इनबाउंड फ़ायरवॉल नियम आमतौर पर नियम 1 या 2 द्वारा छोड़े गए किसी भी विषम अंतर को बंद कर देता है।

मेरा कहना यह है सुरक्षा महत्वपूर्ण है और मैं यह कहने की कोशिश नहीं कर रहा हूं कि यह नहीं है, बस यहां लिनक्स की भूमि में हमारे पास विभिन्न उपकरण और लक्ष्य हैं। मैं अनुशंसा करूंगा कि आप लिनक्स उपयोगकर्ता और समूह अनुमतियों को देखें और फिर किसी भी अंतराल में भरने के लिए gfw और IPTABLES जैसे उपकरण का उपयोग करें।


3
> कोई भी प्रक्रिया किसी भी फ़ाइल तक नहीं पहुंच सकती है जो प्रक्रिया शुरू करने वाला उपयोगकर्ता नहीं पहुंच सकता है - जो कि विंडोज से अलग नहीं है, जैसा कि आप आसन्न लगते हैं। यह एक OS अंतर नहीं है। ईमानदारी से, हालांकि, यदि आपने अभी सभी लूपबैक कनेक्शनों की अनुमति दी है, तो ऐसा फ़ायरवॉल किसी भी मशीन पर किसी भी टीसीपी क्लाइंट / सर्वर अनुप्रयोगों के साथ हस्तक्षेप नहीं करेगा - यह पूरी तरह से एक सेट करना संभव है जो केवल नेटवर्क एक्सेस को नियंत्रित करता है। (इसके अलावा, जब तक आप विंडोज 9x नहीं चला रहे हैं, विंडोज ACLs हैं, अगर कुछ भी, पारंपरिक यूनिक्स अनुमतियों की तुलना में अधिक शक्तिशाली है। जो फिर से नेटवर्क को प्रतिबंधित करने के लिए बहुत कम है।)
बॉब

1
दरअसल, उत्तर को फिर से पढ़ना ... मुझे यकीन नहीं है कि प्रसिद्ध बंदरगाहों का उपयोग कैसे किया जा सकता है या तो प्रासंगिक नहीं है - यह केवल सिस्टम सेवाओं के मास्किंग को रोकने के लिए उपयोगी है (उदाहरण sshd22 पर होने का नाटक ), लेकिन सवाल लगता है डेटा के बहिष्कार के बारे में और अधिक पूछें। जो लगभग पूरी तरह से आउटगोइंग कनेक्शन हैं और उन पोर्ट के साथ बहुत कम संबंध रखते हैं जिन्हें आपको बांधने की अनुमति है।
बॉब

1
पहले एक आउटगोइंग फ़ायरवॉल नहीं है जो ज़ोन अलार्म के समान काम करता है। लिनक्स के लिए बस एक बड़ी ज़रूरत नहीं है - आईपी टेबल आने वाले समय में भी आउटगोइंग को नियंत्रित करेगा, कृपया ऐसा सामान न कहें जिसे आप वास्तव में नहीं जानते हैं।
djsmiley2k - CoW

हाय होनज़ा, अपने "होमवर्क" दौरे के दौरान मैंने कई बार आपके जैसे जवाब देखे। और मैं कुछ हद तक इसे समझता हूं, लेकिन ... और एक बड़ा "लेकिन" ... वह नहीं है जो मैं देख रहा हूं ... मैं बंदरगाह, कम जोखिम (मंच के कम व्यापक होने के कारण) को समझता हूं। आपके द्वारा बताई गई सभी अन्य अवधारणाएं ... लेकिन जो मैं देख रहा हूं वह आसान तरीके से समझना है (जैसे zonealarm) मेरा कंप्यूटर कंप्यूटर के बाहर क्या कर रहा है .. (आपके उदाहरण का पालन करने के लिए Xorg / gedit है, में) कुछ भी करने के लिए इंटरनेट पर जाने की आवश्यकता है; यदि ऐसा है तो मुझे यह जानने की आवश्यकता है कि क्यों / कब / कहाँ ...
jonabrv1965

तब आपकी गहराई तक खुदाई होगी। netstatअभी प्रयास करें मेरे बॉक्स में 1354 खुले कनेक्शन हैं। उनमें से 65 नेटवर्क कनेक्शन हैं। मेरे लिए यह काफी कम संख्या है (यह कहना हर किसी के लिए नहीं है) लेकिन फिर आप यह जानने की कोशिश करना शुरू करेंगे कि उनमें से प्रत्येक कनेक्शन क्या करता है। जैसा मैंने कहा, ऐसा नहीं है कि सुरक्षा महत्वपूर्ण नहीं है, यह सिर्फ एक बहुत अलग वातावरण है।
coteyr
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.