1684
Комментарий:
|
3941
|
Удаления помечены так. | Добавления помечены так. |
Строка 16: | Строка 16: |
* Приверженность legacy (nvi, ifconfig, netstat, route, sh) * Пользователь `toor` (`tcsh` в качестве оболочки для `root`) * Редактор: `vi`, `ee` или установить `vim` (`pkg install vim`) |
* Приверженность legacy ([[BSDman:nvi]], [[BSDman:ifconfig]], [[BSDman:netstat]], [[BSDman:route]], sh) * Пользователь `toor` ([[BSDman:tcsh]] в качестве оболочки для `root`) * Редактор: [[BSDman:vi]], [[BSDman:ee]] или установить `vim` (`pkg install vim`) |
Строка 20: | Строка 20: |
* Просмотр сокетов (в т. ч. TCP): `sockstat` | * Просмотр сокетов (в т. ч. TCP): [[BSDman:sockstat]] |
Строка 24: | Строка 24: |
/etc/rc /etc/rc.d /etc/rc.d/netif service rcvar /etc/rc.conf /etc/rc.default/ |
История развития [[BSDman:rc]]: * `/etc/rc` → … + `/etc/rc.conf`→ … + `/etc/defaults/rc.conf` * … + `/etc/rc.d/`; [[BSDman:service]] (start, stop, restart, rcvar, onestart и т.п.) * Зависимости служб, * Включение cлужбы в `/etc/rc.conf`: `служба_enabled="YES"` |
Строка 30: | Строка 30: |
== ipfw == | == IPFW == |
Строка 32: | Строка 32: |
/etc/rc.firewall * open * simple * client * UNKNOWN * /file/name |
Основная статья: [[http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/firewalls-ipfw.html|IPFW]] в FreeBSD handbook ([[http://www.freebsd.org/doc/ru/books/handbook/firewalls-ipfw.html|несколько устаревший русский перевод]] |
Строка 39: | Строка 34: |
ipfw | '''Архитектура''' * Список правил вида: `действие ← фильтр` * полный вид:`RULE_NUMBER set SET_NUMBER ACTION log LOG_AMOUNT PROTO from SRC SRC_PORT to DST DST_PORT OPTIONS` * например, `420 allow tcp from any to me 80 in via em0 setup` * Финальные действия (вида «побеждает первый»): `allow`, `deny` и т. п. * Проходные действия: `log`, `count`, `skipto` и т. п. * Последнее правило: `65535 deny ip from any to any` (`net.inet.ip.fw.default_to_accept="1"` ⇒ `65535 allow …`) |
Строка 41: | Строка 42: |
list show flush add delete swap | '''Утилита [[BSDman:ipfw]]''': работа со списком правил * `add`, `delete`, `swap` и т. п. * `flush` и что будет, если выполнить только `ipfw flush` * автоматическая нумерация (шаг 100) * `list`, `show` и `zero` |
Строка 43: | Строка 48: |
set enable disable | Запуск: `service ipfw` и `/etc/rc.firewall` * Виды профилей МЭ по умолчанию (open, simple, silent и т. п.) * Кастомный профиль: имя shell-сценария |
Строка 45: | Строка 52: |
any | me | Задача удалённого редактирования правил (возможен обрыв канала): * Отредактировать сценарий или настройки * Перезагрузить ipfw * В течение тайм-аута ждать подтверждение * Если подтверждения нет, вернуться к исходному набору правил |
Строка 47: | Строка 58: |
… Редактирование настроек сети по сети и премия Дарвина /usr/share/examples/ipfw/change_rules.sh |
Примерная реализация: /usr/share/examples/ipfw/change_rules.sh |
Строка 55: | Строка 63: |
Почему не работает rc.firewall simple? Как это исправить? | Сказать и заставить работать [[https://cloud.mail.ru/public/742a237de7f6/FW/|стендовую виртуальную машину]] (два файла с именем `FW`_что-то там). Поменять на `simple` значение `firewall_type` в `/etc/rc.conf`. Почему не работает? Как это исправить? |
Работа в FreeBSD и ipfw
Настройки VirtualBox
Внешний интерфейс: «VirtualBox NAT» ⇒ 10.0.2.15/24
- Внутренний интерфейс 10.30.50.1/24
- Доступ по ssh localhost:2212
TODO Ссылка на образ ВМ
FreeBSD
=== Особенности FreeBSD ====
Базовая дистрибуция + пакеты (пакетный диспетчер pkg)
Установка пакетов в /usr/local (в т. ч. /usr/local/etc, /usr/local/man и т. п.)
Пользователь toor (tcsh в качестве оболочки для root)
- Оболочка: sh или установить bash/zsh
Просмотр сокетов (в т. ч. TCP): sockstat
Достаточно полная и связная система man-страниц; /usr/share/doc и /usr/share/examples
Подсистема запуска служб RC
История развития rc:
/etc/rc → … + /etc/rc.conf→ … + /etc/defaults/rc.conf
… + /etc/rc.d/; service (start, stop, restart, rcvar, onestart и т.п.)
- Зависимости служб,
Включение cлужбы в /etc/rc.conf: служба_enabled="YES"
IPFW
Основная статья: IPFW в FreeBSD handbook (несколько устаревший русский перевод
Архитектура
Список правил вида: действие ← фильтр
полный вид:RULE_NUMBER set SET_NUMBER ACTION log LOG_AMOUNT PROTO from SRC SRC_PORT to DST DST_PORT OPTIONS
например, 420 allow tcp from any to me 80 in via em0 setup
Финальные действия (вида «побеждает первый»): allow, deny и т. п.
Проходные действия: log, count, skipto и т. п.
Последнее правило: 65535 deny ip from any to any (net.inet.ip.fw.default_to_accept="1" ⇒ 65535 allow …)
Утилита ipfw: работа со списком правил
add, delete, swap и т. п.
flush и что будет, если выполнить только ipfw flush
- автоматическая нумерация (шаг 100)
list, show и zero
Запуск: service ipfw и /etc/rc.firewall
- Виды профилей МЭ по умолчанию (open, simple, silent и т. п.)
- Кастомный профиль: имя shell-сценария
Задача удалённого редактирования правил (возможен обрыв канала):
- Отредактировать сценарий или настройки
- Перезагрузить ipfw
- В течение тайм-аута ждать подтверждение
- Если подтверждения нет, вернуться к исходному набору правил
Примерная реализация:
- /usr/share/examples/ipfw/change_rules.sh
Д/З
Сказать и заставить работать стендовую виртуальную машину (два файла с именем FW_что-то там).
Поменять на simple значение firewall_type в /etc/rc.conf. Почему не работает? Как это исправить?