Как да инсталирате и използвате защитна стена на Linux

Linux е една от най-сигурните настолни и сървърни платформи на планетата. Извън кутията ще намерите повечето дистрибуции на Linux много по-сигурни от двете Windows или macOS. Всъщност, за повечето случаи на използване на настолни компютри, сигурността, предлагана в повечето дистрибуции на Linux, ще ви служи добре. Това обаче не означава, че трябва напълно да игнорирате сигурността на операционна система за които сте поверили данните си. Всъщност би трябвало да знаете как да работите със защитна стена на Linux.

Какво е защитна стена?

Най-просто казано, защитната стена е подсистема на компютър, която блокира определен мрежов трафик да влиза или излиза от вашия компютър. Защитните стени могат да бъдат създадени да бъдат много ограничаващи (позволяващи много малко влизане и/или излизане) или много разрешаващи (позволяващи доста малко влизане и/или излизане). Защитните стени се предлагат в два различни вида:

  • Хардуер — физически устройства, които служат само за защита на вашата мрежа (и компютрите във вашата мрежа).
  • Софтуер – подсистеми на отделни компютри, които защитават само хост машината.

Повечето домашни мрежи зависят от комбинация от двете. Хардуерното решение обикновено е модемът/рутерът, инсталиран от вашия интернет доставчик. Много пъти тези устройства са настроени да бъдат много ограничителни. Що се отнася до софтуера, вашият настолен компютър използва софтуерна защитна стена. Една такава защитна стена, която може да бъде инсталирана и използвана на много Linux дистрибуции (като Ubuntu и неговите производни), е Неусложнена защитна стена (UFW). Неусложнената защитна стена е точно това, което звучи. Това е прост инструмент, който прави управлението на блокирането/разрешението на мрежовия трафик доста лесно. UFW е инструмент само за команден ред, който върши изключителна работа, като помага за защитата на вашия Linux компютър.

Инсталиране на UFW

Команден екран за състоянието на UFW

Както на Ubuntu, така и на повечето производни на Ubuntu, UWF вече е инсталиран. За да разберете дали UFW е инсталиран на вашия компютър, отворете прозорец на терминала и издайте командата:

sudo ufw status. 

Тази команда (най-вероятно) ще докладва, че UFW е неактивен. Ако откриете, че UFW не е инсталиран, издайте командата.

sudo apt-get install ufw -y. 

Активиране на UFW

Активиране на защитната стена на UFW

Тъй като UFW е неактивен по подразбиране, ще искате да го активирате. За да направите това, издайте командата.

sudo ufw enableNow, когато проверите състоянието, той ще се покаже като активен. Политиката по подразбиране

конфигурационен файл в UFW

Повечето потребители няма да се притесняват твърде много за правилата по подразбиране. Въпреки това, най-добре е поне да разберете основите на тези правила.

Политиката по подразбиране е набор от правила, които контролират как да се обработва трафик, който не съответства изрично на никакви други правила. Има четири правила по подразбиране:

  • INPUT—трафик, който влиза в компютъра.
  • ИЗХОД – трафик, излизащ от компютъра.
  • НАПРЕД—трафик, който се препраща от една дестинация към друга.
  • ПОЛИТИКА НА ПРИЛОЖЕНИЕТО – трафик, който се определя от приложението (а не от мрежовия порт).

За повечето потребители само политиките INPUT и OUTPUT ще бъдат от значение.

Правилата за UFW по подразбиране са зададени във файла /etc/default/ufw. Издайте командата.

  • sudo nano /etc/default/ufw
    и потърсете тези четири реда:
    DEFAULT_INPUT_POLICY="ОТПУСКАНЕ"
  • DEFAULT_OUTPUT_POLICY="ПРИЕМАНЕ"
  • DEFAULT_FORWARD_POLICY="ОТПУСКАНЕ"
  • DEFAULT_APPLICATION_POLICY="ПРОКАЗВАНЕ"

Важно е да знаете, че всяка от горните правила може да бъде коригирана с малко по-различна стойност по подразбиране.

  • INPUT/OUTPUT/FORWARD може да бъде настроен на ПРИЕМАНЕ, ОТПУСКАНЕ или ОТХВЪРЛЯНЕ
  • ПРИЛОЖЕНИЕТО може да бъде настроено на ПРИЕМАНЕ, ОТПУСКАНЕ, ОТХВЪРЛЯНЕ или ПРОПУСКАНЕ

Разликата между ACCEPT, DROP и REJECT е:

  • ПРИЕМА – Разрешаване на трафик през защитната стена.
  • ОТХВЪРЛЯВ—Не позволявайте трафик през защитната стена и изпратете ICMP съобщение, недостъпно за дестинация, обратно към източника на изпращане.
  • DROP—Забранява преминаването на пакет през защитната стена и не изпраща отговор.

Можете да коригирате правилата по подразбиране, за да отговарят на вашите нужди. Ако промените правилата във файла, презаредете правилата на UFW с командата:

sudo ufw презареждане. 

Разрешаване на входящ трафик

Разрешаване на SSH трафик в UFW

Тъй като вероятно няма да е необходимо да променяте правилата за изходящ трафик по подразбиране, нека се съсредоточим върху разрешаването на входящия трафик. Да речем, например, че искате да можете да защитите обвивката във вашия работен плот (с помощта на ssh команда) от друга машина. За това ще трябва да инструктирате UFW да разреши входящия трафик на стандартния SSH порт (порт 22). Командата за това ще бъде:

sudo ufw разреши ssh. 

Горната команда ще позволи на всяка машина във вашата мрежа (или дори извън вашата мрежа, ако вашият рутер е конфигуриран да позволява външен трафик) да получи достъп до вашия компютър чрез порт 22.

Разрешаване на SSH трафик от конкретен IP адрес

Всичко това е добре, освен ако не искате да разрешите само на определени компютри във вашата мрежа. Да речем, например, че искате да разрешите само един компютър - компютър с IP адрес 192.168.1.162. За това командата ще бъде:

sudo ufw позволява от 192.168.1.162 до всеки порт 22. 

В.

разреши от

изявление инструктира UFW, че това, което следва, е адресът, от който да се разреши трафик. В.

до всяко пристанище

инструктира UFW да разреши трафик на посочения порт. В примера по-горе,.

само

компютърът във вашата мрежа, на който ще бъде разрешено да защити обвивката във вашия компютър, ще бъде този с IP адрес 192.168.1.162.

Можете също да откажете трафик към определен мрежов интерфейс. Да кажем, например, вашата машина има два мрежови интерфейса:

  • ВЪТРЕШНО—използвайки мрежов интерфейс ens5 със схема за IP адрес 192.168.1.x.
  • EXTERNAL—използвайки мрежов интерфейс enp0s3 със схема за IP адрес 172.217.1.x

Ами ако искате да оставите правилото, позволяващо входящ ssh трафик на 192.168.1.162, но да откажете целия входящ трафик от външния интерфейс? За това командата ще бъде:

sudo ufw deny in на enp0s3 към всеки порт ssh. 

Издайте командата.

sudo ufw status, за да видите, че ssh трафикът от 192.168.1.162 все още е разрешен, докато трафикът от външния интерфейс е отказан. Правила за изтриване

Списък на правилата на UFW по номер

Ако установите, че сте създали правила, които създават проблеми с компютрите, които се свързват към вашата машина, е възможно да изтриете правилата, които сте създали. Първото нещо, което искате да направите, е да накарате UFW да изброи вашите правила по номер. За да направите това, издайте командата:

sudo ufw статус номериран. 

Кажете, че искате да изтриете правило номер 1. За да направите това, издайте командата:

sudo ufw изтрийте 1. 

Ще бъдете подканени да потвърдите изтриването на правилото. Тип г и използвайте Влизане/връщане на клавиатурата си, за да потвърдите. Издайте командата.

sudo ufw status.