Nainstalujte Plesk na CentOS 7
Používáte jiný systém? Plesk je proprietární ovládací panel webového hostitele, který umožňuje uživatelům spravovat jejich osobní a/nebo klientské webové stránky, databáze
iptables
je výkonný nástroj používaný ke konfiguraci integrovaného firewallu linuxového jádra. Dodává se předinstalovaný na většině distribucí Ubuntu, ale pokud používáte přizpůsobenou verzi Ubuntu nebo běžíte v kontejneru, budete ji s největší pravděpodobností muset nainstalovat ručně.
sudo apt-get install iptables iptables-persistent
Pokud budete po instalaci dotázáni, zda chcete uložit vaše aktuální pravidla, v tuto chvíli nezáleží, protože později se chystáte odstranit nebo vytvořit nová pravidla.
Pomocí netcat
příkazu (na jiném počítači, než je váš server) můžete otestovat, které z vašich portů jsou otevřené nebo zavřené.
nc -z -w5 -v SERVER_IP PORT
nc
je příkaz netcat.-z
stačí poslat paket bez užitečného zatížení.-w5
počkejte až 5 sekund na odpověď.-v
podrobný režim.SERVER_IP
adresu vašeho serveru.PORT
portem, který chcete otestovat, zda je otevřený (např. 22
).Na vašem serveru můžete pomocí netstat
příkazu zjistit, které porty aktuálně naslouchají připojení.
sudo netstat -tulpn
Poznámka: Přestože netstat
je užitečné najít porty, se kterými chcete pracovat, měli byste si být vědomi aplikací, které máte aktuálně nainstalované na vašem serveru a které porty naslouchají, nemusíte povolit každý port, který najdete ve netstat
výstupu .
sudo iptables -A INPUT -p tcp -m tcp --dport 22 --m geoip --src-cc PE -j ACCEPT
-A INPUT
přidat pravidlo do INPUT
řetězce, řetězec je skupina pravidel, která v této příručce používáme nejčastěji INPUT
, OUTPUT
a PREROUTING
.-p tcp
nastavit tcp
jako protokol, na který se bude toto pravidlo vztahovat, můžete použít i jiné protokoly, jako je udp
, icmp
nebo all
.-m tcp
použijte tcp
modul. iptables
podporuje další funkce prostřednictvím modulů, z nichž některé jsou již předinstalované iptables
a jiné, jako je geoip
modul.--dport 22
příkazy začínající na --
označují další možnosti pro dříve použitý modul, v tomto případě tcp
modulu řekneme, aby se vztahoval pouze na port 22
.-m geoip
použijte geoip
modul. Omezí pakety na základě země (další informace v kroku 5).--src-cc PE
řekněte geoip
modulu, aby omezil příchozí pakety na ty, které přicházejí z Peru. Další kódy zemí vyhledejte ISO 3166 country codes
na internetu.-j ACCEPT
-j
parametr říká iptables
, co má dělat, když paket odpovídá omezení uvedená v předchozí argumenty. V tomto případě bude ACCEPT
tyto pakety, další možnosti REJECT
, DROP
a další. Další možnosti najdete hledáním iptables jump targets
na internetu.Seznam všech pravidel.
sudo iptables -L
Seznam všech příkazů, které byly použity k vytvoření aktuálně používaných pravidel, užitečných pro úpravu nebo odstranění pravidel.
sudo iptables -S
Chcete-li odstranit pravidlo specifický zvolit pravidlo sudo iptables -S
a nahradí -A
se -D
.
# -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
sudo iptables -D INPUT -p tcp -m tcp --dport 22 -j ACCEPT
Vypište všechna očíslovaná pravidla v INPUT
řetězci.
sudo iptables -L INPUT --line-numbers
Odstraňte očíslované pravidlo.
sudo iptables -D INPUT 2
Vymazat všechna pravidla.
sudo iptables -F
Upozornění: Při připojení pomocí SSH můžete ztratit připojení .
Jasná pouze pravidla v OUTPUT
řetězci.
sudo iptables -F OUTPUT
Povolit SSH
na eth0
rozhraní
sudo iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-i eth0
aplikovat pravidlo na konkrétní rozhraní, aby bylo možné z libovolného rozhraní tento příkaz odstranit.Omezení příchozích paketů na konkrétní IP (tj. 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
určuje IP/podsíť, ze které se povolí připojení.Nastavte výchozí pravidla řetězce.
Upozornění: Než budete pokračovat, ujistěte se, že jste použili správná pravidla SSH, pokud pracujete na vzdáleném serveru .
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
-P INPUT DROP
zakáže všechny příchozí pakety (tj. nikdo se nebude moci připojit k vašim běžícím serverům, jako je Apache, SQL atd.).-P FORWARD DROP
zakáže všechny předávané pakety (tj. když používáte svůj systém jako router).-P OUTPUT ACCEPT
umožňuje všechny odchozí pakety (tj. když provedete HTTP
požadavek).Povolit veškerý provoz na rozhraní zpětné smyčky ( doporučeno ).
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
Uložte aktuální iptables
pravidla.
sudo netfilter-persistent save
sudo netfilter-persistent reload
Pokud běžíte uvnitř kontejneru, netfilter-persistent
příkaz s největší pravděpodobností nebude fungovat, takže musíte překonfigurovat iptables-persistent
balíček.
sudo dpkg-reconfigure iptables-persistent
Povolit dotazy 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
Použijte state
modul k povolení RELATED
a ESTABLISHED
odchozích paketů.
sudo iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Povolte požadované porty; v tomto případě HTTP
porty.
sudo iptables -A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
Více portů, které budete chtít použít.
FTP
: tcp na portu 21HTTPS
: tcp na portu 443DHCP
: udp na portu 67NTP
: udp na portu 123Poznámka: Pokud chcete povolit apt-get
, může být nutné povolit FTP
aHTTPS
.
Povolit vrácený provoz pouze pro RELATED
a již ESTABLISHED
připojení ( doporučeno, protože někdy je vyžadována obousměrná komunikace).
sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Povolit požadavky ping zvenčí.
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
sudo iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
Předat provoz na eth0
portu 2200
na 10.0.3.21:22
(užitečné, pokud chcete odhalit server SSH, který běží uvnitř kontejneru).
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 2200 -j DNAT --to-destination 10.0.3.21:22
Pokud se úspěšně přihlásíte na svůj server pomocí SSH, bude vytvořeno trvalé připojení (tj. žádná nová připojení, i když jste připojeni déle než 1 hodinu). Pokud selžete a pokusíte se přihlásit znovu, vytvoří se nové připojení. To zablokuje nepřetržité pokusy o přihlášení k SSH omezením nových připojení za hodinu.
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
Přesměrujte všechny požadavky na portu 443
na port 4430
(užitečné, pokud se chcete svázat s portem 443
bez 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
síťové rozhraní.-m geoip
modul country block (viz krok 5).Upozornění: Nepoužívejte lo
, OS zahodí všechny pakety přesměrované na rozhraní zpětné smyčky .
xtables-addons
xtables-addons
Modul můžete nainstalovat různými způsoby, klidně použijte způsob instalace, který vám nejlépe vyhovuje.
Nainstalujte pomocí apt-get
.
sudo apt-get install xtables-addons-common
Nainstalujte pomocí module-assistant
.
sudo apt-get install module-assistant xtables-addons-source
sudo module-assistant --verbose --text-mode auto-install xtables-addons
Instalovat ze zdroje.
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
Vytvořte databázi „zemí“.
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
Restartujte systém.
sudo reboot
Po xtables-addons
úspěšné instalaci po prvním restartu spusťte, depmod
jinak nebude blokování země správně fungovat (toto je vyžadováno pouze poprvé).
sudo depmod
Vytvořte skript na adrese /etc/cron.monthly/geoip-updater
pro aktualizaci geoip
databáze měsíčně.
#!/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
Udělat /etc/cron.monthly/geoip-updater
spustitelný.
sudo chmod +x /etc/cron.monthly/geoip-updater
_Poznámka: Pokud se iptables: No chain/target/match by that name
při pokusu o použití geoip
pravidla zobrazí chyba , je možné, že xtables-addons
nebylo nainstalováno správně. Zkuste jiný způsob instalace.
Blokujte všechny příchozí pakety z Číny, Hongkongu, Ruska a Koreje.
sudo iptables -A INPUT -m geoip --src-cc CN,HK,RU,KR -j DROP
Povolit příchozí pakety na portu 80
odkudkoli kromě zemí výše.
sudo iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
Povolit příchozí pakety na ens3
rozhraní na portu 22
pouze z Peru (neváhejte si vybrat kód země, ze které chcete přijímat pakety, například US
pro Spojené státy).
sudo iptables -A INPUT -i ens3 -p tcp -m tcp --dport 22 -m geoip --src-cc PE -j ACCEPT
Povolit příchozí pakety na portu 443
pouze z Peru.
sudo iptables -A INPUT -p tcp -m tcp --dport 443 -m geoip --src-cc PE -j ACCEPT
Používáte jiný systém? Plesk je proprietární ovládací panel webového hostitele, který umožňuje uživatelům spravovat jejich osobní a/nebo klientské webové stránky, databáze
Úvod Lets Encrypt je služba certifikační autority, která nabízí bezplatné certifikáty TLS/SSL. Proces instalace zjednodušil Certbot,
Používáte jiný systém? Co je Tekkit Classic? Tekkit Classic je modpack pro hru, kterou každý zná a miluje; Minecraft. Obsahuje některé z ver
Používáte jiný systém? Jekyll je skvělá alternativa k WordPressu pro blogování nebo sdílení obsahu. Nevyžaduje žádné databáze a je velmi snadné i
Používáte jiný systém? Pokud si zakoupíte server Debian, měli byste mít vždy nejnovější bezpečnostní záplaty a aktualizace, ať už spíte nebo ne
PHP a související balíčky jsou nejčastěji používané komponenty při nasazování webového serveru. V tomto článku se naučíme, jak nastavit PHP 7.0 nebo PHP 7.1 o
Squid je populární bezplatný linuxový program, který vám umožňuje vytvořit webový proxy pro předávání. V této příručce uvidíte, jak nainstalovat Squid na CentOS, aby vás otočil
Úvod Lighttpd je fork Apache, jehož cílem je být mnohem méně náročný na zdroje. Je lehký, odtud jeho název, a jeho použití je docela jednoduché. Installin
Yii je PHP framework, který vám umožňuje vyvíjet aplikace rychleji a snadněji. Instalace Yii na Ubuntu je přímočará, jak se přesně dozvíte
Screen je aplikace, která umožňuje vícenásobné použití terminálových relací v rámci jednoho okna. To vám umožňuje simulovat více oken terminálu, kde to má
Tento tutoriál vysvětluje, jak nastavit DNS server pomocí Bind9 na Debianu nebo Ubuntu. V celém článku nahraďte odpovídajícím způsobem název-vaše-domény.com. Při čt
VULTR nedávno provedl změny na jejich konci a vše by nyní mělo fungovat dobře po vybalení s povoleným NetworkManagerem. Pokud si přejete deaktivovat
Icinga2 je výkonný monitorovací systém a při použití v modelu master-client může nahradit potřebu monitorovacích kontrol založených na NRPE. Hlavní klient
Používáte jiný systém? Red5 je open source mediální server implementovaný v Javě, který vám umožňuje spouštět aplikace Flash pro více uživatelů, jako je živé streamování
V tomto článku uvidíme, jak zkompilovat a nainstalovat hlavní řadu Nginx z oficiálních zdrojů Nginx pomocí modulu PageSpeed, který vám umožňuje
Používáte jiný systém? Apache Cassandra je bezplatný a otevřený systém pro správu databází NoSQL, který je navržen tak, aby poskytoval škálovatelnost, vysokou
Používáte jiný systém? Apache Cassandra je bezplatný a otevřený systém pro správu databází NoSQL, který je navržen tak, aby poskytoval škálovatelnost, vysokou
Používáte jiný systém? Vanilla forum je open source aplikace fóra napsaná v PHP. Je plně přizpůsobitelný, snadno použitelný a podporuje externí
Používáte jiný systém? Úvod Kanboard je bezplatný a otevřený softwarový program pro správu projektů, který je navržen tak, aby usnadnil a vizualizoval
Používáte jiný systém? Úvod Kanboard je bezplatný a otevřený softwarový program pro správu projektů, který je navržen tak, aby usnadnil a vizualizoval
Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.
Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.
Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.
Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.
Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…
Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.
Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.
Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.
V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.
Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více