Я создал клиент Twitter, который может отправлять твиты из командной строки, как указано в Рекомендации по программному обеспечению .
Чтобы твитнуть сообщение
java -jar EmailTweetor.jar tweet hello.txt
или
echo "Hello" | java -jar EmailTweetor.jar tweet
Твит с изображением:
java -jar EmailTweetor.jar tweet hello.txt image.jpg
Компьютер, на котором запускается команда, должен иметь OpenJDK или Oracle Java v1.8 или более позднюю версию. Для JAR также требуется однократная -авторизация в Twitter.
Чтобы убедиться, что трафик действительно достигает вашего Windows Server, я бы посоветовал вам добавить «-J LOG» в конец сценария брандмауэра, чтобы пакет регистрировался непосредственно перед удалением. Если вы не видите отбрасываемого пакета, возможно, его отбрасывает брандмауэр Windows. Кроме того, я понимаю, что эта настройка, вероятно, находится в стадии разработки, но я вообще не рекомендую вам использовать ACCEPT в качестве цели по умолчанию для цепочки FORWARD в вашем брандмауэре, поскольку это было бы очень рискованно. Вы также можете проверить журнал служб терминалов (, не зная, где они находятся ), чтобы убедиться, что Windows получает и не разрывает соединение по какой-либо причине.
Надеюсь, это поможет.
Имея только порт SSH в качестве правила INPUT, а затем вводя iptables -P INPUT DROP
, вы блокируете входящий ICMP.
Все современные операционные системы (, по крайней мере, начиная с Windows 95 )используют обнаружение MTU пути (PMTUD )для соединений TCP. MTU = максимальная единица передачи, в основном размер самого большого пакета, который может быть передан без разделения на два или более меньших пакетов (фрагментация ).
По сути, современные ОС всегда будут отправлять пакеты с установленным флагом «не фрагментировать», и если маршрутизатор где-то обнаружит, что они не будут проходить через конкретный сетевой переход, потому что этот переход имеет меньший -, чем -нормальный максимальный размер пакета,они будут ожидать, что маршрутизатор отправит обратно пакет ICMP «Требуется фрагментация», который также будет включать информацию о самом большом размере пакета, который пройдет через нефрагментированный. Как только они получат это сообщение ICMP, они вместо этого начнут использовать указанный размер. Поскольку процесс повторяется на любых переходах с ограниченным размером пакета, TCP-соединение автоматически найдет пакет самого большого размера, который сможет пройти от источника до места назначения без фрагментации. Тогда все маршрутизаторы между ними смогут работать с оптимальной эффективностью.
Заблокировав все ICMP, вы подорвали работу. Скорее всего, ваш сервер пытается отправить пакеты максимального размера -, а что-то еще пытается сказать ему «это не подходит, уменьшите немного свой MTU». Но поскольку входящий ICMP заблокирован, ваш сервер будет беспечно продолжать попытки отправить пакеты максимального размера -, которые никогда не достигнут предполагаемого получателя... до тех пор, пока время соединения не истечет.
Вы также используете VPN. Поскольку любой пакет, попадающий внутрь VPN-туннеля, должен иметь второй набор адресных заголовков с префиксом (плюс, возможно, некоторые накладные расходы на шифрование и/или собственные нужды VPN ), большинство VPN-соединений будут ограничивать MTU на что-то чуть меньшее, чем значение Ethernet по умолчанию. Так что вам обязательно понадобится PMTUD для работы.
Различные облачные -службы также могут иметь несколько уменьшенное значение MTU, и не все они имеют одинаковое значение. Поэтому установка меньшего значения MTU вручную не идеальна.
Вам следует изучить ICMP и решить для себя, какие ICMP-пакеты вы считаете достаточно безопасными для обработки, а какие следует пропустить через брандмауэр.
Кроме того, вы должны знать, что современные операционные системы уже по умолчанию включают некоторые средства защиты от атак на основе ICMP -, :, например,отправка сообщений об ошибках ICMP обычно считается менее приоритетной, чем обработка любых соединений, которые работают нормально. А количество исходящих ICMP-сообщений уже может быть по скорости -ограничено самим ядром ОС :разработчики кода сетевого протокола обычно не полные дураки.