Uzamčení systému nemusí být velký nebo hrozný úkol, který vzbuzuje hrůzu v těch nejunavejších srdcích systémových správců. Ne, správné uzamčení linuxového serveru není intuitivní ani nezbytně triviální, ale také to není kvantová fyzika. V mém předchozím článku Zabezpečení systému Sysadmin:8 ovládacích prvků uzamčení Linuxu jsem se zabýval osmi zásadními změnami, které musíte provést v každém systému Linux bez ohledu na funkci. V tomto článku se zabývám dalšími ovládacími prvky systému, které můžete implementovat rychle a bez nákladů.
Tyto ovládací prvky pocházejí z různých zdrojů, jako je moje vlastní zkušenost, DISA STIG a další systémoví správci. Zde uvedené ovládací prvky nejsou v žádném konkrétním pořadí podle důležitosti nebo závažnosti.
Banner
Bez ohledu na to, zda váš systém má grafické uživatelské rozhraní nebo ne, musíte vytvořit banner, který se zobrazí uživateli při přihlášení. Banner musí uživatele varovat, že systém je chráněn
Upravte /etc/issue
pro uživatele konzole a /etc/issue.net
pro uživatele sítě. Nezapomeňte uvést úplnou cestu k souboru, který používáte pro banner v /etc/ssh/sshd_config
soubor takto:
Banner /etc/issue.net
Můžete použít libovolný soubor, ale musíte upravit cestu Banner a nasměrovat ji na soubor, který obsahuje vaši zprávu.
Ne, nastavení banneru rozhodně nezabrání útočníkovi v úspěšném narušení vašeho systému. Přesto ničí obranný argument, že útočník neměl povědomí o tom, že systém je soukromý, chráněný systém.
Vynucení složitosti hesla
Posílit složitost hesel u systémů, které stále používají hesla, úpravou parametrů v /etc/security/pwquality.con
souboru (zobrazeno níže). Tento soubor obsahuje seznam upravitelných parametrů pro vynucení silných hesel pro vaše systémy.
# Configuration for systemwide password quality limits
# Defaults:
#
# Number of characters in the new password that must not be present in the
# old password.
# difok = 5
#
# Minimum acceptable size for the new password (plus one if
# credits are not disabled which is the default). (See pam_cracklib manual.)
# Cannot be set to lower value than 6.
# minlen = 9
#
# The maximum credit for having digits in the new password. If less than 0
# it is the minimum number of digits in the new password.
# dcredit = 1
#
# The maximum credit for having uppercase characters in the new password.
# If less than 0 it is the minimum number of uppercase characters in the new
# password.
# ucredit = 1
#
# The maximum credit for having lowercase characters in the new password.
# If less than 0 it is the minimum number of lowercase characters in the new
# password.
# lcredit = 1
#
# The maximum credit for having other characters in the new password.
# If less than 0 it is the minimum number of other characters in the new
# password.
# ocredit = 1
#
# The minimum number of required classes of characters for the new
# password (digits, uppercase, lowercase, others).
# minclass = 0
#
# The maximum number of allowed consecutive same characters in the new password.
# The check is disabled if the value is 0.
# maxrepeat = 0
Níže jsou uvedeny doporučené hodnoty. Poznámka:Chcete-li aktivovat vynucenou hodnotu, nezapomeňte zrušit komentář na řádku parametru.
difok = 8
minlen = 15
dcredit = -1
ucredit = -1
lcredit = -1
ocredit = -1
minclass = 4
maxrepeat = 3
maxclassrepeat = 4
Tyto parametry pomáhají zajistit, že systémová hesla jsou mnohem bezpečnější než výchozí nastavení. Pro lepší zabezpečení přístupu k systému se doporučuje používat vícefaktorové ověřování spíše než hesla.
Poznámka:minlen
(minimální délka) by měl být nastaven na hodnotu 15 nebo vyšší. Naučte uživatele používat přístupové fráze spíše než se snažit najít jediné slovo, které splňuje kritéria.
Minimální životnost hesla
Někteří chytří uživatelé mění svá hesla několikrát, aby obešli zabezpečení systému. Když jsou nuceni svá hesla aktualizovat, mění svá hesla dostatečně často, aby překonali zabezpečení systému a nakonec své heslo nastavili zpět na původní. PASS_MIN_DAYS
parametr v /etc/login.defs
soubor může této činnosti zabránit. Nastavte hodnotu na 1 nebo vyšší. Výchozí hodnota je 0, což způsobuje bezpečnostní problém.
PASS_MIN_DAYS 1
Nastavení tohoto parametru znamená, že uživatel si musí nové heslo ponechat minimálně jeden den, než jej znovu změní. Hodnotu můžete nastavit na libovolné číslo, ale zdá se, že problém vyřešíte tím, že zabráníte uživateli, aby se okamžitě několikrát změnil.
Maximální životnost hesla
Možná ještě nebezpečnější než minimální životnost hesla je nastavení maximální doby trvání hesla. Výchozí hodnota je 99999, což znamená, že uživatel by nikdy nemusel měnit svá hesla. Toto je závažné porušení zabezpečení.
V závislosti na zásadách vaší společnosti a potřebách zabezpečení byste měli vynutit změny hesla v rozmezí 60 až 90 dnů. Chcete-li vynutit takovou celosystémovou změnu, upravte PASS_MAX_DAYS
nastavení v /etc/login.defs
soubor.
PASS_MAX_DAYS 60
Toto nastavení nutí uživatele měnit svá hesla každých 60 dní. Ano, uslyšíte reptání, zvláště když je spojeno s PASS_MIN_DAYS
omezení. Bezpečnost vítězí nad stížnostmi uživatelů.
Zabezpečení Sudoer
Systémoví správci často konfigurují své uživatelské účty tak, aby používali sudo
příkaz bez hesla. Toto je závažné porušení zabezpečení, které by nemělo být povoleno za žádných okolností na žádném systému, bez ohledu na funkci.
Upravte /etc/sudoers
soubor s visudo
a odstraňte všechny výskyty NOPASSWD v souboru.
Dále zkontrolujte výskyty "!authentication" v /etc/sudoers
soubor. Tento záznam umožňuje uživateli, který má sudo
přístup, abyste mohli nadále používat sudo
bez opětovného ověření. Toto je porušení zabezpečení. Odstraňte všechny výskyty "!authentication" z /etc/sudoers
soubor.
Prodleva při neúspěšném přihlášení
Abyste zabránili útokům hrubou silou na uživatelské účty, měli byste nastavit zpoždění při selhání přihlášení na alespoň 4 sekundy. To odrazuje od útoků hrubou silou, ale může také pomoci uživatelům zadat správné heslo, což je pro delší hesla a přístupové fráze obtížnější.
Tento parametr se nastavuje v /etc/login.defs
soubor. Číslo je počet sekund, po které se systém pozastaví před zobrazením výzvy k novému přihlášení po neúspěšném pokusu o přihlášení.
FAIL_DELAY 4
Čtyři sekundy jsou dostatečně krátké, aby nefrustrovaly uživatele, kteří mohli omylem stisknout nesprávnou klávesu, ale dostatečně dlouho na to, aby zabránili opakovaným pokusům o přihlášení roboty.
Zakázat automatické připojení zařízení
Automatické připojování souborových systémů představuje bezpečnostní rizika z neznámých zařízení, která mohou být zapojena do systému. Jinými slovy, útočník by mohl připojit zařízení USB a doručit užitečné zatížení, když se zařízení automaticky připojí. Zakažte automatické připojování zastavením a deaktivací autofs
službu.
$ sudo systemctl stop autofs
$ sudo systemctl disable autofs
Může být trochu méně pohodlné muset ručně připojovat souborové systémy po připojení nového zařízení do systému, ale zvýšení zabezpečení kompenzuje další tři sekundy práce potřebné k připojení zařízení. To umožňuje správci systému deaktivovat, vymazat nebo vysunout neautorizované zařízení.
Omezit oprávnění k vytváření souborů
Vracíme se do /etc/login.defs
soubor k provedení celosystémové změny. Když uživatelé vytvářejí nové soubory, obvykle obdrží oprávnění 644 vyplývající z umask
nastavení filtru 022. Pro zvýšení bezpečnosti by měly být všechny nové soubory vytvářeny s umask
z 077, což vede k tomu, že nové soubory mají výchozí oprávnění 600.
UMASK 077
Pro většinu uživatelů to může být méně důležité, ale pro soubory vytvořené uživatelem root je toto nastavení povinné. Nastavení pro celý systém zajišťuje konzistenci.
Sbalit
Zvýšení zabezpečení systému je jedním z hlavních úkolů správce systému. Nové systémy, zděděné systémy a systémy, které poskytují specializované funkce, jsou ve vaší síti nejzranitelnější. Zvláštní péči je třeba věnovat ochraně každého síťového systému. Často kompromitace jednoho systému umožňuje kompromitaci více, protože útočník je nyní uvnitř sítě a má kontrolu nad jedním nebo více systémy.
Některé z těchto bezpečnostních kontrol se mohou zdát těžkopádné, ale ve srovnání s obnovou po narušení je to jen součást dnešního „normálního stavu“.
[ Chcete se dozvědět více o zabezpečení? Podívejte se na kontrolní seznam zabezpečení IT a dodržování předpisů. ]