Как сохранить правила iptables

Перезагрузка с клавиатуры

Существует также возможность перезагрузить компьютер с клавиатуры, если мышь не работает. Если у вас Windows XP, нажмите клавишу , чтобы открыть меню «Пуск» и нажимайте клавишу-стрелку вниз, пока не выделится кнопка выключения/завершения работы. Тогда нажмите , выберите с помощью горизонтальных клавиш-стрелок опцию «Перезагрузка» и нажмите .

В Windows Vista/7 откройте меню «Пуск» клавишей , переключитесь в его правую часть клавишей , затем с помощью стрелки вниз выделите кнопку выключения, а с помощью стрелки вправо — значок-стрелку. Откроется меню, в котором можно выбрать с помощью стрелок опцию «Перезагрузка» и нажать .

В Windows 8/8.1 нажмите +, с помощью стрелки вниз выберите «Параметры» и нажмите . Затем с помощью стрелок вниз и вправо выберите кнопку «Выключить» и опять нажмите . Выберите вариант «Перезагрузка» и снова нажмите .

Кстати, если мышь у вас работает, но стандартный вариант перезагрузки почему-либо недоступен, можете использовать клавиши ++ и нажать на открывшемся экране кнопку выключения, а затем выбрать опцию «Перезагрузка».

На первый взгляд перезагрузка компьютера не представляет из себя ничего сложного. Однако довольно часто операционные системы начинают работать неправильно как раз вследствие некорректного обращения с компьютером в плане перезагрузки. В этой статье мы расскажем, как перезагрузить компьютер правильно, если появилась такая необходимость.

Перезагрузка подразумевает процесс полной очистки или восстановления оперативной памяти, а также возобновление работы компьютера. Кроме того, происходит перезапуск всех системных настроек, который может быть вызван установкой нового оборудования или программного обеспечения.

Для многих пользователей фраза «перезагрузить компьютер» вызывает ассоциацию с кнопкой Reset, расположенной на системном блоке неподалеку от кнопки включения.

Однако следует помнить, что такой способ сравним с выдергиванием вилки шнура блока питания из розетки, за которым следует необратимый и довольно длительный процесс восстановления системы, а то и полный отказ компьютера работать.

Как правило, в таких поломках люди прежде всего обвиняют компьютерные игры и вирусы. Возможно, они и правда стали причиной поломок, однако чаще всего такие проблемы вызваны неправильным обращением с техникой, в том числе некорректной перезагрузкой.

Вариант перезагрузить компьютер с помощью кнопки Reset является актуальным только в том случае, если ни один из способов перезапустить машину программно не срабатывает.

Если у вас установлена операционная система Windows, то для того чтобы перезагрузить компьютер, достаточно нажать кнопку «Пуск», затем кликнуть по кнопке «Выключить компьютер» и из предложенного списка выбрать пункт «Перезагрузка».

Также возможны случаи, когда компьютер просто «виснет». Тогда нажимаем клавишу «Caps Lock» или «Num Lock», и если индикатор на клавиатуре реагирует на нажатие, пробуем воспользоваться сочетанием клавиш «Ctrl + Alt + Del»
, а в появившемся диалоговом окне диспетчера задач выбираем пункт меню «Завершение работы», где нажимаем на пункт «Перезагрузка».

Есть еще один вариант, при котором выключение компьютера происходит корректно. Необходимо нажать кнопку «Power», которая используется для включения компьютера, и держать ее до тех пор, пока машина не выключится. Этот же способ используется на ноутбуках, так как на них отсутствует клавиша «Reset».

Напоследок стоит описать, как перезагрузить компьютер в случае, если вдруг перестала работать мышь, которой все так привыкли пользоваться и выполнять огромное количество задач. Сначала нужно нажать на клавишу «Windows», на которой обычно изображен логотип операционной системы.

Если на вашем компьютере установлена Windows 7 или Vista, то далее следует нажать клавишу «Вправо», а затем Enter. Потом с помощью клавиш «Влево» и «Вправо» необходимо активировать кнопку «Принудительное завершение работы». Если при этом были запущены какие-либо программы, то система отобразит диалоговое окно, в котором она предложит завершить все активные процессы.

Также без помощи мыши можно перезагрузить компьютер через диспетчер задач, который, как уже было сказано, вызывается нажатием комбинации клавиш «Ctrl + Alt + Del» или же «Ctrl + Shift + Esc» для его непосредственного вызова. В этом случае нужно нажать клавишу F10
и с помощью клавиши «Вправо» активировать пункт меню «Завершение работы», где опять же с помощью стрелочек выбрать пункт «Перезагрузка» и нажать клавишу Enter.

Предварительные требования

Это учебное руководство предполагает использование сервера Linux с установленной командой и наличие у пользователя привилегий .

Если вам нужна помощь с данной начальной настройкой, воспользуйтесь нашим руководством по начальной настройке сервера Ubuntu 20.04. Вы также можете воспользоваться руководствами для Debian и CentOS

Давайте сначала рассмотрим, как просмотреть существующий список правил. Существует два различных способа просмотра действующих правил Iptables: в форме таблицы или списка спецификаций правил. Оба метода предоставляют приблизительно одну и ту же информацию в разных форматах.

Сохранение введенных правил при перезагрузке

Все введенные в консоли правила — после перезагрузки ОС будут сброшены в первоначальное состояние (читай — удалены). Для того чтобы сохранить все введенные команды iptables, существует несколько путей. Например, один из них — задать все правила брандмауэра в файле инициализации . Но у данного способа есть существенный недостаток: весь промежуток времени с запуска сетевой подсистемы, до запуска последней службы и далее скрипта rc.local из SystemV операционная система будет не защищена. Представьте ситуацию, например, если какая-нибудь служба (например NFS) стартует последней и при ее запуске произойдет какой-либо сбой и до запуска скрипта rc.local. Соответственно, rc.local так и не запуститься, а наша система превращается в одну большую дыру.

Поэтому самой лучшей идеей будет инициализировать правила netfilter/iptables при загрузке сетевой подсистемы. Для этого в Debian есть отличный инструмент — каталог /etc/network/if-up.d/, в  который можно поместить скрипты, которые будут запускаться при старте сети. А так же есть команды iptables-save и iptables-restore, которые сохраняют создают дамп правил netfilter из ядра на  и восстанавливают в ядро правила со  соответственно.

Итак, алгоритм сохранения iptables примерно следующий:

  • Настраиваем сетевой экран под свои нужны с помощью
  • создаем дамп созданный правил с помощью команды iptables-save > /etc/iptables.rules
  • создаем скрипт импорта созданного дампа при старте сети (в каталоге /etc/network/if-up.d/) и не забываем его сделать исполняемым:
# cat /etc/network/if-up.d/firewall
#!/bin/bash
/sbin/iptables-restore < /etc/iptables.rules
exit 0
# chmod +x /etc/network/if-up.d/firewall

Дамп правил, полученный командой iptables-save имеет текстовый формат, соответственно пригоден для редактирования. Синтаксис вывода команды iptables-save следующий:

# Generated by iptables-save v1.4.5 on Sat Dec 24 22:35:13 2011
*filter
:INPUT ACCEPT  
:FORWARD ACCEPT 
.......
# комментарий
-A INPUT -i lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT
...........
-A FORWARD -j REJECT
COMMIT
# Completed on Sat Dec 24 22:35:13 2011
# Generated by iptables-save v1.4.5 on Sat Dec 24 22:35:13 2011
*raw
......
COMMIT

Строки, начинающиеся на # — комментарии, строки на * — это название таблиц, между названием таблицы и словом COMMIT содержатся параметры, передаваемые команде iptables. Параметр COMMIT — указывает на завершение параметров для вышеназванной таблицы. Строки, начинающиеся на двоеточие задают цепочки, в которых содержится данная таблица в формате:

:цепочка политика 

где цепочка — имя цепочки, политика — политика цепочки по-умолчанию для данной таблицы, а далее счетчики пакетов и байтов на момент выполнения команды.

В RedHat функции хранения команд iptables выполняемых при старте и останове сети выполняет файл /etc/sysconfig/iptables. А управление данным файлом лежит на демоне iptables.

Как еще один вариант сохранения правил, можно рассмотреть использование параметра up в файле /etc/network/interfaces с аргументом в виде файла, хранящего команды iptables, задающие необходимые правила.

Итог

На сегодня будет достаточно. Более сложные реализации межсетевого экрана я обязательно будут публиковаться в следующих статьях.

Восстановите данные вашего Mac

В этой части мы поговорим о том, как использовать Stellar Data Recovery для Mac для восстановления потерянных и удаленных файлов на Mac.

1. Перейдите в официальный центр загрузки MiniTool, чтобы загрузить пробную версию этого программного обеспечения и затем установить ее на свой Mac.

2. Откройте это программное обеспечение.

3. Когда вы увидите следующий интерфейс, вам нужно выбрать типы данных, которые вы хотите восстановить. Если вы хотите восстановить все типы, вам просто нужно включить кнопку для Восстановить все .

4. Щелкните Следующий продолжить.

5. Это программное обеспечение перечислит все диски, которые оно может найти. Вам нужно выбрать диск, с которого вы хотите восстановить данные. Если вы хотите выполнить глубокое сканирование, вам нужно включить кнопку для Глубокий анализ (нижний левый угол).

6. Щелкните Сканировать чтобы начать процесс сканирования.

7. Процесс сканирования должен быть завершен в течение получаса. Затем вы можете увидеть результаты сканирования, отсортированные по Классический список по умолчанию. Если вы хотите восстановить только удаленные файлы, вы можете переключиться на Удаленный список чтобы проверить результаты сканирования.

8. Если вы хотите использовать это программное обеспечение для восстановления всех необходимых файлов, вы можете обновить его до расширенной версии. Затем вы можете выбрать файлы, нажать кнопку «Восстановить» и выбрать подходящее место для их сохранения.

Несколько слов напоследок

Как уже можно заметить, способов перезагрузки системы насчитывается достаточно много. Что из всего предложенного использовать, советовать трудно, поскольку каждый пользователь выбирает для себя наиболее удобный вариант. Но, думается, для Windows 8 описанная методика походит лучше всего. В остальных случаях – по желанию. Как уже говорилось, если и клавиатура отказывается работать, придется использовать принудительное выключение, но заниматься такими вещами стоит только в самых крайних случаях, когда другие методы необходимого эффекта не дают (в частности, это огромная проблема десятой модификации системы, которую разработчики, несмотря на постоянно выпускаемые пакеты обновлений, исправить так и не удосужились).

Здравствуйте, друзья. Моя практика показала, что иногда простые проблемы вызывают самые большие сложности. Например, не двигается курсор мыши. Возникает вопрос, что случилось? Часто в таких случаях помогает восстановить работоспособность машины обычная перезагрузка, но как это сделать непонятно. Хорошо бы проверить хвостатого друга на исправность, подключив его к рабочему компу или ноуту либо, наоборот, к заглючившей машине присоединить точно работающую мышь. К сожалению, это не всегда осуществимо. Что же делать? Этакая палка о двух концах. На самом деле всё вполне решаемо. Давайте расскажу, как без мышки перезагрузить компьютер. Существует немало простых способов.

Отключение Selinux и Firewalld в CentOS/RHEL системах

Если вы хотите начать использовать iptables в CentOS или других Red Hat производных системах, то перед настройкой необходимо отключить Selinux и firewalld.

Для отключения selinux отредактируем файл /etc/sysconfig/selinux.

# Открываем файл для редактирования
nano /etc/sysconfig/selinux

# Находим строку SELINUX=enforced, заменяем на disabled
SELINUX=disabled

# Сохраняем и выходим.

Firewalld — надстройка над iptables, играющая роль брандмауэра, применяется в RHEL системах по умолчанию. Так как управлять фаерволом мы будем при помощи собственных правил, то firewalld необходимо отключить.

# Останавливаем firewalld и удаляем его из автозагрузки
systemctl stop firewalld
systemctl disable firewalld

Проброс (forward) порта

Рассмотрим ситуацию, когда необходимо выполнить проброс портов с внешнего интерфейса на какой-то компьютер в локальной сети. Допустим, вам необходимо получить rdp доступ к компьютеру 10.1.3.50 из интернета. Делаем проброс TCP порта 3389:

Если вы не хотите светить снаружи известным портом, то можно сделать перенаправление с нестандартного порта на порт rdp конечного компьютера:

Если вы пробрасываете порт снаружи внутрь локальной сети, то обязательно закомментируйте правило, которое блокирует доступ из внешней сети во внутреннюю. В моем примере это правило:

$IPT -A FORWARD -i $WAN -o $LAN1 -j REJECT

Либо перед этим правилом создайте разрешающее правило для доступа снаружи к внутреннему сервису, например вот так:

$IPT -A FORWARD -i $WAN -d 10.1.3.50 -p tcp -m tcp --dport 3389 -j ACCEPT

Editing iptables

The only problem with our setup so far is that even the loopback port is blocked. We could have written the drop rule for just eth0 by specifying -i eth0, but we could also add a rule for the loopback. If we append this rule, it will come too late — after all the traffic has been dropped. We need to insert this rule before that. Since this is a lot of traffic, we’ll insert it as the first rule so it’s processed first.

sudo iptables -I INPUT 1 -i lo -j ACCEPT
sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
DROP       all  --  anywhere             anywhere

The first and last lines look nearly the same, so we will list iptables in greater detail.

sudo iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere
    0     0 ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ssh
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:www
    0     0 DROP       all  --  any    any     anywhere             anywhere

You can now see a lot more information. This rule is actually very important, since many programs use the loopback interface to communicate with each other. If you don’t allow them to talk, you could break those programs!

Примеры настройки Iptables

Мы рассмотрим несколько основных примеров, чтобы вы смогли закрепить все прочитанное выше.

Список правил

Сначала давайте рассмотрим как выполняется просмотр правил iptables, для этого достаточно опции -L:

Также вы можете указать нужную цепочку, чтобы вывести правила только для нее:

Очистка правил

Вы не можете просто так отключить iptables остановив сервис обновления правил iptables через systemd или даже удалив набор утилит для настройки. Подсистема работает на уровне ядра и не зависит от того, что там у вас установлено. Поэтому если сделаете что-то не так, то нужно будет очистить правила. Для этого выполните:

Или только для определенной цепочки:

Напоминаю, что все эти действия выполняются для таблицы по умолчанию — filter.

Правила по умолчанию

Как я уже говорил, если для пакета не подходит ни одно правило, то для него применяется действие по умолчанию. Его можно задать с помощью опции -p:

В этом примере мы разрешаем цепочки INPUT и OUTPUT, но запрещаем FORWARD.

Блокировка пакетов

Для блокировки пакетов мы можем использовать действие DROP, фильтровать пакеты, которые нужно заблокировать мы можем по множеству критериев, например, протоколу, ip адресу, маске сети, порту и многому другому.

Вот так будет выглядеть команда, которая позволяет добавить правило iptables для блокировки всех входящих пакетов от 10.10.10.10:

А теперь исходящие пакеты на этот же адрес:

Блокировка диапазона ip выполняется подобным образом. Для этого нужно использовать маску сети 10.10.10.0/24. Это будут все адреса начиная от 10.10.10.0 до 10.10.10.255:

Или расширенный вариант маски:

Также вы можете заблокировать все входящие соединения ssh:

Как видите, добавить правило iptables очень просто.

Удаление правил

Удаление правил iptables выполняется точно так же, как и создание новых, только вместо опции A нужно использовать опцию D. Сначала смотрим список правил:

Например, вот так можно удалить правило iptables, которое было создано вторым:

Также вы можете полностью очистить iptables выполнив команду с опцией -F:

Сохранить правила Iptables

Все настройки iptables, которые вы указали с помощью этих команд сохранятся только до перезагрузки. После перезагрузки компьютера все изменения будут стерты. Поэтому чтобы сохранить правила iptables, нужно выполнить специальную команду. Только в разных дистрибутивах она отличается. В Ubuntu выполните:

А в Red Hat или CentOS:

Перезагружаем ПК через командную строку

Перед тем, как запустить Powershell и ввести соответствующие команды, необходимо включить службу «Удаленный реестр» на обоих устройствах. В «Виндовс 10» сделать это можно следующим образом:

  1. Сначала откройте окно «Выполнить» с помощью комбинации Win + R и впишите команду «services.msc».
  1. В списке служб найдите строку «Удаленный реестр» и кликните по ней дважды ЛКМ.
  1. В поле «Тип запуска» установите параметр «Автоматически».
  1. Нажмите кнопку «Применить» и после – «Запустить».
  1. После этого закройте окно настроек и «Службы».

Чтобы пользоваться перезагрузкой ПК/ноутбука через командную строку, необходимо знать его имя. Для этого сделайте следующее:

  1. На удаленном ПК необходимо открыть «Проводник» и кликнуть на «Этот компьютер».
  1. На верхней панели нажмите «Компьютер», а затем – «Свойства».

Обратите внимание на поле «Имя компьютера». Запомните или скопируйте название устройства

Оно пригодится для команды в cmd.

Теперь возвращаемся к ПК администратора. Зная имя второго устройства, вы можете перезагрузить его, даже если он завис и не реагирует на ваши действия. Переходим к перезагрузке рабочего или зависшего компьютера:

  1. Запустите командую строку. Для этого в поиске введите соответствующий запрос. После этого кликните по программе ПКМ и выберите пункт «Запуск от имени администратора».
  1. Параметры и условия перезагрузки можно задать с помощью письменных команд. Чтобы их не запоминать, лучше воспользоваться графическим интерфейсом. Доступ к нему открывается с помощью команды «shutdown /i».
  1. На экране появится «Диалог удаленного завершения работы». Необходимо добавить второй ПК в список и подключиться к нему. Для этого кликните на кнопку «Добавить».
  1. Впишите имя устройства, которое вы нашли в прошлом руководстве.
  1. Выделите ПК и укажите желаемое действия. Также здесь вы можете указать причину и примечание. Для старта процедуры кликните «ОК».

Перезагрузка с помощью сочетания клавиш

Часто из-за системных сбоев перестает работать полный функционал ноутбука, включая тачпад или компьютерную мышь. Что делать, когда происходят подобные ситуации и обычный перезапуск выполнить невозможно? Чтобы совершить рестарт машины, можно воспользоваться одновременным нажатием горячих клавиш: Ctrl+Alt+Delete. Обычно перезапуск таким способом приводит к полному восстановлению работы ноутбука. Вызов команды приводит к появлению окна на экране, в котором помимо базовых действий (выключение, перезагрузка, сон), есть возможность воспользоваться диспетчером задач, заблокировать пользователя устройства или сменить профиль учетной записи.

Существуют другие сочетания клавиш для различных версий Windows.

Перезагрузка на Windows 7

1 способ – Win+L

Чтобы совершить перезапуск ноутбука, в первую очередь, стоит выйти из аккаунта пользователя системы. Это можно сделать путем нажатия сочетания кнопок Win+L. Ноутбук автоматически переходит к меню, содержащему учетные записи системы.

Следует завершить работу устройства, кликнув клавишей регулирования Tab на соответствующую иконку. Далее, пользуясь клавиатурными стрелками и кнопкой Tab для перемещения курсора, необходимо перейти к контекстному меню, где нужно выбрать опцию «Перезагрузить компьютер».

2 способ – Alt+F4

После нажатия горячей комбинации Alt+F4 на экране ноутбука отображается диалоговое окно. Пользуясь стрелками, следует выбрать пункт, подходящий для совершения перезапуска устройства. Если какие-либо запущенные приложения препятствуют выключению устройства, это можно предотвратить, пользуясь этим же сочетанием клавиш.

3 способ – Ctrl+Alt+Delete

Нажатие набора клавиш Ctrl+Alt+Delete также приводит к появлению на дисплее диалогового окна. Внизу справа на экране располагается ярлык красного цвета, на которую нужно нажать, используя кнопку управления Tab. Чтобы открыть контекстное меню, следует пользоваться Tab для перемещения по экрану от одной команде к другой и стрелками. В меню необходимо выбрать опцию перезагрузки прибора.

Перезагрузка на Windows 8

Восьмая версия Windows кардинально отличается от остальных содержанием и интерфейсом меню пуска. Поэтому способы перезагрузки несколько отличаются от привычных.

Способ 1 – Ctrl+Alt+Delete

Данное сочетание открывает окно встроенного антивируса «Windows Security». Далее пользователь должен выбрать один из двух наиболее удобных ему способов. Первый из них: используя кнопку управления Tab, курсор мыши нужно установить на кнопке «Выключение компьютера». С помощью стрелок нужно совершить переход к опции перезагрузки прибора и подтвердить свой выбор. Второй: нужно совершить выход из пользовательского аккаунта, используя стрелки, и, управляя клавишей Tab, выбрать пункт выключения прибора.

Способ 2 – Win+X

Для того, чтобы перезапустить работу системы версии 8.1 и выше необходимо зажимать комбинацию горячих клавиш Win+X на клавиатуре. После проделанной операции откроется диалоговое окно, где следует перейти к пункту «Выключить компьютер или выйти из сеанса». Передвигаясь с помощью нажатия стрелок по монитору, необходимо навести курсор на опцию «Перезагрузка» и подтвердить выбор.

Способ 3 – Alt+F4

Рестарт функционирования системы можно произвести нажатием сочетания Alt+F4. В меню выключения технического устройства нужно выбрать «Перезагрузка» или «Restart».

Перезагрузка на Windows 10

Способ 1 – Win+X

Нажатие кнопок Win+X приводит к появлению на мониторе окна выбора. В данном окне, используя стрелки, нужно перейти к завершению работы устройства.

Способ 2 – Alt+F4

Зажатие комбинации клавиш приводит к появлению на экране окна выбора, где с помощью стрелочки на клавиатуре нужно перейти к иконке отключения устройства и подтвердить выбор. Далее, работая с открывшимся диалоговым окном, следует перейти к кнопке «Перезагрузка» и снова подтвердить выбор.

Способ 3 – Ctrl+Alt+Delete

Один из самых простых способов рестарта компьютера – использование комбинации горячих клавиш Ctrl+Alt+Delete, как и в предыдущем пункте. Используя стрелочки, нужно перейти к учетной записи пользователя ноутбука, где в нижнем углу дисплея справа будет находиться окно отключения устройства. Данное окно нужно выбрать нажатием клавиши управления Tab. После этого остается только подтвердить свой выбор и перейти к «Перезагрузке» устройства.

Как перезагрузить компьютер с помощью клавиатуры — методы

Итак, рассмотрим наиболее известные методы как перезагрузить компьютер с помощью клавиатуры:

1. Использование меню Пуск

. В данном случае вам необходимо нажать вначале кнопку «Windows» (откроется меню Пуск), затем два раза нажимаете стрелочку вправо (раскроется небольшое меню). А далее выбираете действие — перезагрузка, выключение и так далее. Невероятно простой и удобный метод. Однако, его нельзя использовать в случае, если система зависла.

2. Сочетание клавиш «Ctrl + Alt + Del»

. После того, как вы нажмете эту комбинацию, откроется меню, где стрелочками можно добраться до пунктов выбора действий. Если коротко, то для Windows 7 после появления меню, необходимо стрелочкой вниз опустить фокус (текущий выбранный элемент) ниже кнопки «ОAlt + F4» . Это сочетание сегодня мало распространено, но до сих пор поддерживается Windows. Для тех, кто не знает, суть в том, что каждое нажатие этой комбинации запускает закрытие текущей активной программы, а когда открытых программ не остается, то вызывается окошко, где можно выбрать выключение или перезагрузку системы. Кстати, раньше немало шуток было связано именно с «Alt + F4».

4. Использование команды «shutdown»

. В Windows поддерживается немало консольных команд, которые можно запустить в любое время. И это одна из них. Чтобы перезагрузить систему с помощью нее, достаточно вначале нажать комбинацию «Клавиша Windows + R», а затем набрать в появившемся окне «shutdown /r» (без кавычек) и нажать ввод.

Конечно, это не все возможности, однако для большинства ситуаций перечисленных хватает с головой.

Теперь, вы знаете немало методов как можно перезагрузить компьютер с помощью только лишь клавиатуры.

Компьютер — сложное многозадачное устройство. Иногда его необходимо перезагружать. К примеру, если пользователь установил какую-нибудь новую программу или изменил системные настройки ОС. Как перезагрузить компьютер с помощью клавиатуры? Далее нам предстоит отыскать ответ на этот вопрос. Рассмотрим все возможные варианты развития событий.

Утилита Iptables

Подсистема iptables и netfilter встроены в ядро, но вот набор утилит для управления всем этим не всегда поставляется вместе с системой. Для установки утилиты в Ubuntu наберите:

А в дистрибутивах, основанных на Fedora, установка iptables выполняется немного по-другому:

Когда установка iptables будет завершена, можно переходить к настройке, но давайте сначала рассмотрим синтаксис утилиты. Обычно команда имеет такой общий вид:

$ iptables -t таблица действие цепочка дополнительные_параметры

Теперь давайте рассмотрим параметры iptables, таблица указывает таблицу, с которой нужно работать, этот параметр можно упустить, действие — нужное действие, например, создать или удалить правило, а дополнительные параметры описывают действие и правило, которое нужно выполнить.

Осталось рассмотреть основные действия, которые позволяет выполнить iptables:

  • -A — добавить правило в цепочку;
  • -С — проверить все правила;
  • -D — удалить правило;
  • -I — вставить правило с нужным номером;
  • -L — вывести все правила в текущей цепочке;
  • -S — вывести все правила;
  • -F — очистить все правила;
  • -N — создать цепочку;
  • -X — удалить цепочку;
  • -P — установить действие по умолчанию.

Дополнительные опции для правил:

  • -p — указать протокол, один из tcp, udp, udplite, icmp, icmpv6,esp, ah, sctp,
    mh;
  • -s — указать ip адрес устройства-отправителя пакета;
  • -d — указать ip адрес получателя;
  • -i — входной сетевой интерфейс;
  • -o — исходящий сетевой интерфейс;
  • -j — выбрать действие, если правило подошло.

Теперь вы можем перейти рассмотрению примеров того как выполняется настройка iptables.

Включение логов

Во время настройки полезно включить логи, чтобы мониторить заблокированные пакеты и выяснять, почему отсутствует доступ к необходимым сервисам, которые мы вроде бы уже открыли. Я отправляю все заблокированные пакеты в отдельные цепочки (block_in, block_out, block_fw), соответствующие направлению трафика и маркирую в логах каждое направление. Так удобнее делать разбор полетов. Добавляем следующие правила в самый конец скрипта, перед сохранением настроек:

Все заблокированные пакеты вы сможете отследить в файле /var/log/messages.

После того, как закончите настройку, закомментируйте эти строки, отключив логирование. Обязательно стоит это сделать, так как логи очень быстро разрастаются. Практического смысла в хранении подобной информации лично я не вижу.

Принцип настройки

Общий синтаксис использования iptables:

iptables -t <таблица> <команда> <цепочка> <условие> <действие>

<таблица>

Правила netfilter распределены по 4-м таблицам, каждая из которых имеет свое назначение (подробнее ниже). Она указывается ключом -t, но если данный параметр не указан, действие будет выполняться для таблицы по умолчанию — filter.

<команда>

Команды указывают, какое именно действие мы совершаем над netfilter, например, создаем или удаляем правило.

<цепочка>

В каждой таблице есть цепочки, для каждой из которых создаются сами правила. Например, для вышеупомянутой таблицы filter есть три предопределенные цепочки — INPUT (входящие пакеты), OUTPUT (исходящие) и FORWARD (транзитные).

Некоторые команды требуют указания номера правила, например, на удаление или редактирование.

<условие>

Условие описывает критерии отработки того или иного правила.

<действие>

Ну и, собственно, что делаем с пакетом, если он подходит под критерии условия.

* справедливости ради, стоит отметить, что ключ с действием не обязан идти в конце. Просто данный формат чаще всего встречается в инструкциях и упрощает чтение правил.
 

Отобразить список правил с номерами строк.

Примерный вывод:

Chain INPUT (policy DROP)
num  target     prot opt source               destination
1    DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID
2    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
Chain FORWARD (policy DROP)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
2    DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID
3    TCPMSS     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp flags:0x06/0x02 TCPMSS clamp to PMTU
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
5    wanin      all  --  0.0.0.0/0            0.0.0.0/0
6    wanout     all  --  0.0.0.0/0            0.0.0.0/0
7    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination
Chain wanin (1 references)
num  target     prot opt source               destination
Chain wanout (1 references)
num  target     prot opt source               destination

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

# Исправление 11: Первая помощь

Если у вашего загрузочного диска есть проблемы, ваш Mac также может продолжать перезагружаться из-за проблемы. Вы можете использовать функцию первой помощи в Дисковой утилите, чтобы исправить загрузочный диск.

Ваш компьютер Mac не загружается нормально, вы можете открыть Дисковую утилиту в режиме восстановления:

Шаг 1. Войдите в режим восстановления macOS.

  1. Принудительно выключите Mac.
  2. нажмите Мощность кнопку и сразу нажмите и удерживайте Command-R .
  3. Отпустите клавиши, когда увидите логотип Apple.
  4. При необходимости введите свой пароль.
  5. Вы увидите экран режима восстановления macOS (утилита macOS).

Шаг 2: оказываете первую помощь

  1. Выбирать Дисковая утилита в утилите macOS.
  2. Выберите загрузочный диск Mac.
  3. Нажмите Первая медицинская помощь .
  4. First Aid начнет поиск и исправление найденных ошибок на загрузочном диске. Вам следует дождаться завершения процесса.

Blocking Traffic

Once a decision is made to accept a packet, no more rules affect it. As our rules allowing ssh and web traffic come first, as long as our rule to block all traffic comes after them, we can still accept the traffic we want. All we need to do is put the rule to block all traffic at the end.

sudo iptables -A INPUT -j DROP
sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
DROP       all  --  anywhere             anywhere

Because we didn’t specify an interface or a protocol, any traffic for any port on any interface is blocked, except for web and ssh.

Tips

If you manually edit iptables on a regular basis

The above steps go over how to setup your firewall rules and presume they will be relatively static (and for most people they should be). But if you do a lot of development work, you may want to have your iptables saved everytime you reboot. You could add a line like this one in /etc/network/interfaces:

  pre-up iptables-restore < /etc/iptables.rules
  post-down iptables-save > /etc/iptables.rules

The line «post-down iptables-save > /etc/iptables.rules» will save the rules to be used on the next boot.

Using iptables-save/restore to test rules

If you edit your iptables beyond this tutorial, you may want to use the iptables-save and iptables-restore feature to edit and test your rules. To do this open the rules file in your favorite text editor (in this example gedit).

sudo sh -c "iptables-save > /etc/iptables.rules"
gksudo gedit /etc/iptables.rules

You will have a file that appears similiar to (following the example above):

# Generated by iptables-save v1.3.1 on Sun Apr 23 06:19:53 2006
*filter
:INPUT ACCEPT 
:FORWARD ACCEPT 
:OUTPUT ACCEPT 
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
-A INPUT -j DROP
COMMIT
# Completed on Sun Apr 23 06:19:53 2006

Notice that these are iptables commands minus the iptable command. Feel free to edit this to file and save when complete. Then to test simply:

sudo iptables-restore < /etc/iptables.rules

NOTE: With iptables 1.4.1.1-1 and above, a script allow you to test your new rules without risking to brick your remote server. If you are applying the rules on a remote server, you should consider testing it with:

sudo iptables-apply /etc/iptables.rules

After testing, if you have not added the iptables-save command above to your /etc/network/interfaces remember not to lose your changes:

sudo sh -c "iptables-save > /etc/iptables.rules"

More detailed Logging

For further detail in your syslog you may want create an additional Chain. This will be a very brief example of my /etc/iptables.rules showing how I setup my iptables to log to syslog:

# Generated by iptables-save v1.3.1 on Sun Apr 23 05:32:09 2006
*filter
:INPUT ACCEPT 
:FORWARD ACCEPT 
:LOGNDROP - 
:OUTPUT ACCEPT 
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j LOGNDROP
-A LOGNDROP -p tcp -m limit --limit 5/min -j LOG --log-prefix "Denied TCP: " --log-level 7
-A LOGNDROP -p udp -m limit --limit 5/min -j LOG --log-prefix "Denied UDP: " --log-level 7
-A LOGNDROP -p icmp -m limit --limit 5/min -j LOG --log-prefix "Denied ICMP: " --log-level 7
-A LOGNDROP -j DROP
COMMIT
# Completed on Sun Apr 23 05:32:09 2006

Note a new CHAIN called LOGNDROP at the top of the file. Also, the standard DROP at the bottom of the INPUT chain is replaced with LOGNDROP and add protocol descriptions so it makes sense looking at the log. Lastly we drop the traffic at the end of the LOGNDROP chain. The following gives some idea of what is happening:

  • --limit sets the number of times to log the same rule to syslog

  • --log-prefix "Denied..." adds a prefix to make finding in the syslog easier

  • --log-level 7 sets the syslog level to informational (see man syslog for more detail, but you can probably leave this)

Disabling the firewall

If you need to disable the firewall temporarily, you can flush all the rules using

sudo iptables -P INPUT ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -F

or create a script using text editor such as nano

sudo nano -w /root/fw.stop
echo "Stopping firewall and allowing everyone..."
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Make sure you can execute the script

sudo chmod +x /root/fw.stop

You can run the script

sudo /root/fw.stop
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: