Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
iptables
लिनक्स-कर्नेल के एकीकृत फ़ायरवॉल को कॉन्फ़िगर करने के लिए उपयोग किया जाने वाला एक शक्तिशाली उपकरण है। यह सबसे उबंटू वितरण पर प्रीइंस्टॉल्ड आता है, हालांकि यदि आप एक अनुकूलित उबंटू संस्करण का उपयोग कर रहे हैं या कंटेनर के अंदर चल रहे हैं, तो आपको सबसे अधिक मैन्युअल रूप से इसे स्थापित करना होगा।
sudo apt-get install iptables iptables-persistent
स्थापना के बाद, यदि आपसे पूछा जाए कि क्या आपके वर्तमान नियमों को सहेजना है, तो यह फिलहाल मायने नहीं रखता है क्योंकि आप बाद में नए नियमों को हटाने या बनाने जा रहे हैं।
आप अपने पोर्ट को खोलने या बंद करने के लिए परीक्षण करने के लिए netcat
कमांड ( अपने सर्वर से अलग कंप्यूटर पर ) का उपयोग कर सकते हैं ।
nc -z -w5 -v SERVER_IP PORT
nc
netcat कमांड है।-z
बस पेलोड के बिना एक पैकेट भेजें।-w5
प्रतिक्रिया के लिए 5 सेकंड तक प्रतीक्षा करें।-v
वाचाल प्रकार।SERVER_IP
अपने सर्वर पते से बदलें ।PORT
यदि आप इसे खोलना चाहते हैं तो पोर्ट के साथ बदलें (उदाहरण के लिए 22
)।अपने सर्वर पर आप यह netstat
देखने के लिए कमांड का उपयोग कर सकते हैं कि वर्तमान में कौन से पोर्ट कनेक्शन के लिए सुन रहे हैं।
sudo netstat -tulpn
नोट: यद्यपि netstat
आप जिन पोर्ट के साथ काम करना चाहते हैं, उन्हें ढूंढना एक आसान तरीका है, आपको उन अनुप्रयोगों के बारे में पता होना चाहिए जो आपने वर्तमान में अपने सर्वर पर इंस्टॉल किए हैं और कौन से पोर्ट सुन रहे हैं, आपको आउटपुट में प्रत्येक पोर्ट को खोजने की अनुमति नहीं हैnetstat
।
sudo iptables -A INPUT -p tcp -m tcp --dport 22 --m geoip --src-cc PE -j ACCEPT
-A INPUT
INPUT
श्रृंखला में एक नियम जोड़ें , एक श्रृंखला नियमों का एक समूह है, जिन्हें हम इस गाइड पर सबसे अधिक उपयोग करते हैं INPUT
, OUTPUT
और PREROUTING
।-p tcp
सेट tcp
प्रोटोकॉल इस नियम, आप भी इस तरह के रूप में अन्य प्रोटोकॉल का उपयोग कर सकते हैं के लिए लागू होगी के रूप में udp
, icmp
या all
।-m tcp
tcp
मॉड्यूल का उपयोग करें । iptables
मॉड्यूल के माध्यम से अतिरिक्त सुविधाओं का समर्थन करता है, जिनमें से कुछ पहले से ही iptables
और अन्य जैसे कि geoip
मॉड्यूल के साथ पूर्वस्थापित हैं ।--dport 22
--
पहले से उपयोग किए गए मॉड्यूल के लिए अतिरिक्त विकल्पों के साथ शुरू होने वाले कमांड इंगित करते हैं, इस मामले में हम tcp
मॉड्यूल को केवल पोर्ट पर लागू करने के लिए कहेंगे 22
।-m geoip
geoip
मॉड्यूल का उपयोग करें । यह देश के आधार पर पैकेट को सीमित करेगा (चरण 5 पर अधिक जानकारी)।--src-cc PE
geoip
पेरू से आने वाले पैकेट को सीमित करने के लिए मॉड्यूल को बताएं । अधिक देश कोड के लिए ISO 3166 country codes
इंटरनेट पर खोज करते हैं ।-j ACCEPT
-j
तर्क कहता है iptables
क्या हुआ अगर एक पैकेट की कमी पिछले तर्क में निर्दिष्ट से मेल खाता है क्या करना है। इस मामले में यह ACCEPT
उन पैकेट, अन्य विकल्प हैं REJECT
, DROP
और अधिक होगा। आप iptables jump targets
इंटरनेट पर खोज कर अधिक विकल्प पा सकते हैं ।सभी नियमों को सूचीबद्ध करें।
sudo iptables -L
वर्तमान में उपयोग किए गए नियमों को बनाने के लिए उपयोग किए जाने वाले सभी आदेशों को सूचीबद्ध करें, नियमों को संपादित करने या हटाने के लिए उपयोगी।
sudo iptables -S
एक विशिष्ट नियम को हटाने के लिए एक नियम चुनें sudo iptables -S
और उसके -A
साथ बदलें -D
।
# -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
sudo iptables -D INPUT -p tcp -m tcp --dport 22 -j ACCEPT
INPUT
श्रृंखला में सभी गिने हुए नियमों को सूचीबद्ध करें ।
sudo iptables -L INPUT --line-numbers
एक क्रमांकित नियम हटाएं।
sudo iptables -D INPUT 2
सभी नियमों को साफ करने के लिए।
sudo iptables -F
चेतावनी: यदि आप SSH से जुड़े हैं तो आप कनेक्शन खो सकते हैं ।
OUTPUT
श्रृंखला में केवल नियम स्पष्ट करें ।
sudo iptables -F OUTPUT
इंटरफ़ेस SSH
पर अनुमति देंeth0
sudo iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-i eth0
किसी भी इंटरफ़ेस से इस कमांड को हटाने की अनुमति देने के लिए एक विशिष्ट इंटरफ़ेस पर नियम लागू करें।आने वाले पैकेट को एक विशिष्ट आईपी (यानी 10.0.3.1/32
) तक सीमित करने के लिए ।
sudo iptables -A INPUT -i eth0 -s 10.0.3.1/32 -p tcp -m tcp --dport 22 -j ACCEPT
-s 10.0.3.1/32
कनेक्शन से अनुमति देने के लिए एक IP / सबनेट निर्दिष्ट करता है।डिफ़ॉल्ट श्रृंखला नियम सेट करें।
चेतावनी: आगे बढ़ने से पहले सुनिश्चित करें कि आपने रिमोट सर्वर पर काम कर रहे सही एसएसएच नियमों को लागू किया है ।
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
-P INPUT DROP
सभी आने वाले पैकेटों से इनकार करते हैं (अर्थात कोई भी आपके चलने वाले सर्वर जैसे Apache, SQL, आदि से कनेक्ट नहीं हो पाएगा)।-P FORWARD DROP
सभी अग्रेषित पैकेट से इनकार करता है (अर्थात जब आप अपने सिस्टम को राउटर के रूप में उपयोग कर रहे हैं)।-P OUTPUT ACCEPT
सभी आउटगोइंग पैकेट (अर्थात जब आप HTTP
अनुरोध करते हैं)।लूपबैक इंटरफ़ेस ( अनुशंसित ) पर सभी ट्रैफ़िक को अनुमति दें ।
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
वर्तमान iptables
नियमों को बचाएं ।
sudo netfilter-persistent save
sudo netfilter-persistent reload
यदि आप एक कंटेनर के अंदर चल रहे हैं netfilter-persistent
, तो कमांड की सबसे अधिक संभावना काम नहीं करेगी, इसलिए आपको iptables-persistent
पैकेज को फिर से कॉन्फ़िगर करने की आवश्यकता है ।
sudo dpkg-reconfigure iptables-persistent
DNS प्रश्नों की अनुमति दें।
sudo iptables -A OUTPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT
sudo iptables -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT
पैकेट और state
अनुमति के लिए मॉड्यूल का उपयोग करें ।RELATED
ESTABLISHED
sudo iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
वांछित बंदरगाहों की अनुमति दें; इस मामले में, HTTP
बंदरगाहों।
sudo iptables -A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
अधिक पोर्ट जो आप उपयोग करना चाहते हैं।
FTP
: पोर्ट 21 पर tcpHTTPS
: पोर्ट 443 पर tcpDHCP
: बंदरगाह 67 पर udpNTP
: पोर्ट 123 पर udpनोट: यदि आप अनुमति देना चाहते हैं तो अनुमति apt-get
देना आवश्यक हो सकता है FTP
औरHTTPS
।
केवल RELATED
और पहले से ही ESTABLISHED
कनेक्शन के लिए लौटाए गए ट्रैफ़िक को अनुमति दें ( अनुशंसित है क्योंकि कभी-कभी द्विदिश संचार की आवश्यकता होती है)।
sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
बाहर से पिंग अनुरोधों की अनुमति दें।
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
sudo iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
पर आगे यातायात eth0
बंदरगाह 2200
करने के लिए 10.0.3.21:22
(उपयोगी अगर आपको लगता है कि एक कंटेनर के अंदर चल रहा है एक SSH सर्वर का पर्दाफाश करना चाहते हैं)।
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 2200 -j DNAT --to-destination 10.0.3.21:22
यदि आप SSH का उपयोग करके अपने सर्वर पर सफलतापूर्वक लॉगिन करते हैं, तो एक स्थायी कनेक्शन बनाया जाएगा (यानी 1 घंटे से अधिक के लिए भी कनेक्ट होने पर भी कोई नया कनेक्शन नहीं)। यदि आप विफल हो जाते हैं और फिर से लॉगिन करने का प्रयास करते हैं, तो एक नया कनेक्शन बनाया जाएगा। यह प्रति घंटे नए कनेक्शन को सीमित करके निरंतर SSH लॉगिन प्रयासों को अवरुद्ध करेगा।
sudo iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
sudo iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 3600 --hitcount 4 -j DROP
बंदरगाह पर सभी अनुरोधों को पुन: निर्देशित 443
बंदरगाह के लिए 4430
(उपयोगी अगर आप बंदरगाह के लिए बाध्य करने के लिए चाहते हैं 443
के बिना root
)।
sudo iptables -t nat -A PREROUTING -i ens3 -p tcp --dport 443 -j REDIRECT --to-port 4430
sudo iptables -A INPUT -p tcp -m tcp --dport 4430 -m geoip --src-cc PE -j ACCEPT
ens3
नेटवर्क इंटरफ़ेस।-m geoip
देश ब्लॉक मॉड्यूल (चरण 5 देखें)।चेतावनी: उपयोग न करें lo
, OS लूपबैक इंटरफ़ेस पर पुनर्निर्देशित सभी पैकेटों को छोड़ देगा ।
xtables-addons
आप xtables-addons
विभिन्न तरीकों का उपयोग करके मॉड्यूल स्थापित कर सकते हैं, स्थापना विधि का उपयोग करने के लिए स्वतंत्र महसूस करें जो आपके लिए सबसे अच्छा काम करता है।
का उपयोग कर स्थापित करें apt-get
।
sudo apt-get install xtables-addons-common
का उपयोग कर स्थापित करें module-assistant
।
sudo apt-get install module-assistant xtables-addons-source
sudo module-assistant --verbose --text-mode auto-install xtables-addons
स्रोत से स्थापित करें
sudo apt-get install git bc libncurses5-dev libtext-csv-xs-perl autoconf automake libtool xutils-dev iptables-dev
git clone git://git.code.sf.net/p/xtables-addons/xtables-addons
cd xtables-addons
./autogen.sh
./configure
make
sudo make install
एक "देश" डेटाबेस बनाएँ।
sudo apt-get install libtext-csv-xs-perl unzip
sudo mkdir /usr/share/xt_geoip
sudo /usr/lib/xtables-addons/xt_geoip_dl
sudo /usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip *.csv
sudo rm GeoIPCountryCSV.zip GeoIPCountryWhois.csv GeoIPv6.csv
अपने सिस्टम को रिबूट करें।
sudo reboot
बाद xtables-addons
सफलतापूर्वक स्थापित हो गया है, पहले रिबूट के बाद, चलाने depmod
अन्यथा देश अवरुद्ध ठीक से काम नहीं करेगा (यह केवल पहली बार के लिए आवश्यक है)।
sudo depmod
डेटाबेस को मासिक रूप /etc/cron.monthly/geoip-updater
से अपडेट करने के लिए एक स्क्रिप्ट बनाएं geoip
।
#!/usr/bin/env bash
# this script is intended to run with sudo privileges
echo 'Removing old database---------------------------------------------------'
rm -rf /usr/share/xt_geoip/*
mkdir -p /usr/share/xt_geoip
echo 'Downloading country databases-------------------------------------------'
mkdir /tmp/geoip-updater
cd /tmp/geoip-updater
/usr/lib/xtables-addons/xt_geoip_dl
echo 'Building geoip database-------------------------------------------------'
/usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip *.csv
echo 'Removing temporary files------------------------------------------------'
cd /tmp
rm -rf /tmp/geoip-updater
/etc/cron.monthly/geoip-updater
निष्पादन योग्य बनाएं ।
sudo chmod +x /etc/cron.monthly/geoip-updater
_Note: यदि आप iptables: No chain/target/match by that name
किसी geoip
नियम को लागू करने का प्रयास करते समय कोई त्रुटि प्राप्त कर रहे हैं , तो यह संभव है कि xtables-addons
सही तरीके से स्थापित नहीं किया गया हो। एक और स्थापना विधि का प्रयास करें।
चीन, हांगकांग, रूस और कोरिया से आने वाले सभी पैकेटों को ब्लॉक करें।
sudo iptables -A INPUT -m geoip --src-cc CN,HK,RU,KR -j DROP
80
उपरोक्त देशों को छोड़कर हर जगह से पोर्ट पर आने वाले पैकेट की अनुमति दें ।
sudo iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
केवल पेरू से ens3
पोर्ट पर इंटरफ़ेस पर आने वाले पैकेट की अनुमति दें 22
(देश कोड चुनने के लिए स्वतंत्र महसूस करें, उदाहरण के लिए, US
संयुक्त राज्य अमेरिका से पैकेट स्वीकार करना चाहते हैं )।
sudo iptables -A INPUT -i ens3 -p tcp -m tcp --dport 22 -m geoip --src-cc PE -j ACCEPT
443
केवल पेरू से बंदरगाह पर आने वाले पैकेट की अनुमति दें ।
sudo iptables -A INPUT -p tcp -m tcp --dport 443 -m geoip --src-cc PE -j ACCEPT
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं
परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ