Брандмауэры
Обзор
Использование локального брандмауэра почти всегда является хорошей практикой. Даже если вы находитесь за сетевым брандмауэром, локальный защищает вас от угроз внутри вашей сети.
UFW
UFW расшифровывается как Uncomplicated FireWall (несложный брандмауэр) и является программой для управления брандмауэром netfilter. Она предоставляет интерфейс командной строки и стремится быть понятной и легкой в использовании. UFW намного проще, чем iptables и является хорошим местом для начала, если у вас нет очень специализированных потребностей.
Установка UFW
Вы можете установить пакет ufw
с помощью своего любимого менеджера пакетов или команды:
После установки UFW необходимо запустить и включить его с помощью команд:
Добавление правил
Для просмотра текущей конфигурации можно использовать команду ufw status
. Вот как это выглядит при новой установке:
$ sudo ufw status verbose
Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip
Это означает, что он будет блокировать весь входящий трафик и разрешать весь исходящий. Это хорошая отправная точка для большинства настольных систем. Однако часто мы хотим разрешить некоторый входящий трафик. Это можно сделать с помощью команды ufw allow
. Например, если мы хотим разрешить входящий ssh-трафик, чтобы подключаться к машине с других машин в сети, мы должны использовать команду:
If we wanted to also tcp connections to a local webserver on a non-standard https port, 8443. We could use the command:
UFW и приложения
You may notice a difference in the above two commands. When we built the rules for ssh we used the name and for https we used the port number, 8443. This is because UFW has a small database of applications it knows the ports for. You can see the list with the command:
For applications on the list you can add them by name. If you want to review the configuration for one of the applications, you can use the command ufw app info
. For example, to the configuration for ssh:
$ sudo ufw app info SSH
Profile: SSH Title: SSH server Description: SSH server Port: 22/tcp
Some additional preconfigured applications can be added by installing the package ufw-extras
with your favorite package manager or the command:
Удаление правил
Rules can be removed with the ufw delete
command. For example, to delete our 8443 rules we could use the command:
You can also delete them by number. This is easier if you have a numbered list which you can see with the command:
$ sudo ufw status numbered
Status: active To Action From -- ------ ---- [ 1] 22 ALLOW IN Anywhere [ 2] 22 (v6) ALLOW IN Anywhere (v6)
Now if we wanted to stop allowing ssh on ipv6 we could use the command:
GUFW
Prefer to use GUI applications and still want to manage your firewall? No problem. GUFW is a GTK front-end for UFW that aims to make managing a Linux firewall as accessible and easy as possible. It features pre-sets for common ports and p2p applications.
If it is not installed already gufw can be installed from the repos:
It will now be available in the menu as Firewall Configuration or by running gufw
directly.
iptables
iptables is included as part of the Linux kernel. iptables is significantly more complicated than using a tool like UFW. As a result, a full tutorial on iptables is beyond the scope of this wiki. Using iptables on Manjaro should be the same for every distribution of Linux so there is plenty of available documentation. Some of this is linked below. Here are some basics to get you started.
To enable loading rules on startup you can use the command:
This will load the rules from the file /etc/iptables/iptables.rules
.
To display the currently loaded rules:
To save the current rules to a file
To load the rules from a file
To allow ssh connections
See Also
- The Arch Wiki on UFW
- The UFW website
- The GUFW website
- The iptables man page
- The Arch Wiki on iptables
- The Debian Wiki on iptables