, когда вы установили ubuntu, вы установили его в UTC. серьезно, ive допустил ошибку. всегда 7 часов разницы между компьютерным временем и временем BIOS. его в настройках времени и даты ubuntu.
Вместо этого используйте команду iptables-save. Правила брандмауэра никогда не должны входить в скрипт rc.local. rc.local - последнее, что нужно выполнить. Если правило блока было помещено в rc.local, есть небольшой временной интервал, в котором злоумышленник может использовать правило, не находящееся на месте. Хотя это, вероятно, не имеет значения в этой ситуации, все равно лучше не попасть в плохую привычку, которая может вас укусить позже.
Вот как нас обучает официальная документация ipttable. См. Здесь
Добавьте эти две строки в / etc / network / interfaces: pre-up iptables-restore < /etc/iptables.rules post-down iptables-save > /etc/iptables.rules
Строка «post-down iptables-save> /etc/iptables.rules» сохранит правила, которые будут использоваться при следующей загрузке.
Я обнаружил набор каталогов на Ubuntu 16.04 в /etc/network, который будет запускать скрипты в разное время во время инициализации и выключения сети:
if-down.d
if-post-down.d
if-pre-up.d
if-up.d
interfaces.d
Итак, я обнаружил, что могу сбросить конфигурацию как обычно :
$ sudo sh -c "iptables-save > /etc/iptables.rules"
Затем я создал файл `/etc/network/if-pre-up.d/restore:
#!/bin/sh
iptables-restore < /etc/iptables.rules
... и пометил его исполняемый файл [ ! d3]
$ sudo chmod 755 /etc/network/if-pre-up.d/restore