Закрыть порт 139 windows 7. Как закрыть tcp порт
Вчера неизвестные устроили очередную массовую атаку с помощью вируса-шифровальщика. Эксперты заявили, что пострадали десятки крупных компаний на Украине и в России. Вирус-шифровальщик носит название Petya.A (вероятно, вирус назван в честь Петра Порошенко). Пишут, что если создать файл perfc (без расширения) и разместить его по адресу C:\Windows\, вирус обойдет вас стороной. Если ваш компьютер ушел в перезагрузку и начал «проверку диска», нужно его немедленно выключить. Загрузка с с LiveCD или USB-диска даст доступ к файлам. Еще один способ защиты: закрыть порты 1024–1035, 135 и 445. Как это сделать мы сейчас разберемся на примере Windows 10.
Шаг 1
Переходим в Брандмауэр Windows
(лучше выбрать режим повышенной безопасности), выбираем вкладку «Дополнительные параметры
».
Выбираем вкладку «Правила для входящих подключений
», потом действие «Создать правило
» (в правой колонке).
Шаг 2
Выбираем тип правила - «для Порта
». В следующем окне выбираем пункт «Протокол TCP
», указываем порты, которые хотите закрыть. В нашем случае это «135, 445, 1024-1035
» (без кавычек).
Шаг 3
Выбираем пункт «Блокировать подключение
», в следующем окне отмечаем все профили: Доменный, Частный, Публичный.
Шаг 4
Осталось придумать название для правила (чтобы в будущем его было легко найти). Можно указать описание правила.
Если какие-то программы перестанут работать или станут работать неправильно, возможно, вы перекрыли порт, которые они используют. Нужно будет добавить для них исключение в брандмауэре.
135 TCP-порт используется службами удалённого обслуживания (DHCP, DNS, WINS и т.д.) и в приложениях «клиент-сервер» Microsoft (например, Exchange).
445 TCP-порт используется в Microsoft Windows 2000 и поздних версий для прямого TCP/IP-доступа без использования NetBIOS (например, в Active Directory).
Публикация
Серверы и компьютеры, подключенные к интернету подвержены атакам и сканированию различных скриптов, программ и злоумышленников. А поскольку известно, что во всех системах могут быть уязвимости, то лучше, чтобы извне было видно минимум портов.
Некоторые порты должны быть видны постоянно, например, порт веб-сервера, другие используются только системными администраторами, а еще одни, вообще, должны быть доступны только локально. Несмотря на то что все сервисы имеют методы авторизации, и не позволят подключиться кому попало, они могут быть уязвимы, поэтому все лишнее лучше закрыть. В этой статье мы рассмотрим как закрыть порт iptables. Мы закроем нужные порты полностью, а также сделаем некоторые из них доступными на время, после попытки подключения к определенному порту.
В этой статье я не стану подробно рассматривать все возможности Iptables, виды цепочек и как работает эта служба. Все это мы рассмотрели в статье . Вместо этого, перейдем ближе к делу. Чтобы заблокировать порт нам сначала нужно понять и за что они отвечают. Чтобы посмотреть какие порты слушаются локально, можно использовать утилиту netstat:
sudo netstat -ntulp
Для анализа портов, доступных извне используется программа nmap:
Как видите, извне у нас, кроме стандартных портов веб-сервера, доступны mysql, ftp, dns и другие сервисы. Некоторые из них не должны быть доступны публично. Это не критично, но и нежелательно. Мы можем очень просто закрыть такие порты с помощью iptables. Общий синтаксис команды для блокировки порта будет выглядеть вот так:
$ iptables -A INPUT -p tcp --dport номер_порта -j DROP
Например, если мы хотим заблокировать порт iptables mysql, то необходимо выполнить:
sudo iptables -A INPUT -p tcp --dport 3306 -j DROP
Можно закрыть порт для определенного интерфейса, например, eth1:
sudo iptables -A INPUT -i eth1 -p tcp --dport 3306 -j DROP
Или даже для ip и целой подсети. Например, закрыть все подключения к порту 22 SSH кроме IP адреса 1.2.3.4:
sudo iptables -A INPUT -i eth1 -p tcp -s !1.2.3.4 --dport 22 -j DROP
Здесь знак восклицания означает инверсию, то есть применить ко всем кроме этого. Можно убрать этот знак и указать только IP, к которым нужно применить запрет. Мы рассмотрели как закрыть порт iptables в цепочке INPUT, которая отвечает за входящие соединения, это более применимо к серверам. Но что, если нужно закрыть подключение к удаленному порту из этого компьютера или нашей сети? Для этого существует цепочка OUTPUT.
Например, заблокируем попытки отправки почты подключением к любой машине по порту 25:
sudo iptables -A OUTPUT -p tcp --dport 25 -j DROP
Также, как и раньше, вы можете указать исходящий сетевой интерфейс, только теперь он указывается опцией -o:
sudo iptables -A OUTPUT -o eth1 -p tcp --dport 25 -j DROP
После того как вы завершите с настройкой портов нужно сохранить все созданные правила, чтобы они остались активными даже после перезагрузки. Для этого выполните:
sudo iptables-save
Чтобы посмотреть текущие правила для каждой из цепочек выполните:
sudo iptables -L -n -v
Такая команда покажет все правила, а если вы хотите только информацию о заблокированных портах, выполните:
sudo iptables -L -n -v | grep -i DROP
Очистить все правила в случае возникновения проблем можно командой:
sudo iptables -F
Закрыть порты iptables, кроме разрешенных
По умолчанию политика для цепочек INPUT и OUTPUT - разрешать все подключения, а уже с помощью правил мы указываем какие подключения стоит запретить. Но если вы хотите закрыть все порты кроме разрешенных iptables. То нужно поступить по-другому. Мы поменяем политику по умолчанию, так чтобы она запрещала все и разрешим только доступ к нужным портам.
Например, меняем политику для цепочки INPUT:
sudo iptables -P INPUT DROP
Затем разрешаем все входящие соединения от локального интерфейса:
sudo iptables -A INPUT -i lo -j ACCEPT
Затем разрешаем доступ к портам 80 и 22:
sudo iptables -A INPUT -i eth0 -p tcp --dport 80 --match state --state NEW -j ACCEPT
$ sudo iptables -A INPUT -i eth0 -p tcp --dport 80 --match state --state NEW -j ACCEPT
Как скрыть порт iptables?
Закрыть порт, это очень хорошо, но что если он нужен нам открытым и желательно, чтобы для других этот же порт был недоступен. Существует такая технология, как Port Knocking, которая позволяет открывать нужный порт только для определенного ip адреса и только после обращения его к нужному порту. Например, нам нужно защитить SSH от перебора паролей и несанкционированного доступа. Для этого все пакеты, которые будут приходить на порт 22, 111 и 112 мы будем перенаправлять в цепочку SSH.
Как вы уже догадались, порт 22 нам непосредственно нужен, на порты 111 и 112 будут включать его и отключать соответственно. Когда пользователь обратится к порту 111 мы укажем системе, что нужно присвоить всем его пакетам имя ssh, при обращении к порту 112 уберем этот флаг. А если пользователь решит зайти на 22 порт, то проверим присвоено ли этому пакету имя SSH, если да, то пропустим, в противном случае - отбросим.
Сначала создаем цепочку SSH:
sudo iptables -N SSH
Перенаправляем пакеты:
sudo iptables -A INPUT -p tcp --dport 22 -j SSH
$ sudo iptables -A INPUT -p tcp --dport 111 -j SSH
$ sudo iptables -A INPUT -p tcp --dport 112 -j SSH
При обращении к порту 111 присваиваем IP адресу имя, сам пакет дальше не пускаем:
sudo iptables -A SSH -p tcp -m state --state NEW -m tcp --dport 111 -m recent --set --name SSH --rsource -j DROP
При обращении к 112 убираем имя у IP:
sudo iptables -A SSH -p tcp -m state --state NEW -m tcp --dport 112 -m recent --remove --name SSH --rsource -j DROP
И нам осталось только проверить имеет ли наш пакет, который пытается обратиться к 22 порту имя SSH и если да, то мы его одобряем:
sudo iptables -A SSH -p tcp -m state --state NEW -m tcp --dport 22 -m recent --rcheck --name SSH --rsource -j ACCEPT
Вот и все. Теперь для того чтобы открыть наш SSH порт будет достаточно попытаться подключиться к порту 111 с помощью telnet. Утилита сообщит, что произошла ошибка во время подключения, поскольку мы отбросили пакет:
telnet ip_адрес 111
Но зато теперь вы можете получить доступ к сервису SSH на порту 22. Чтобы снова закрыть порт выполните:
telnet ip_адрес 112
Даже при открытии, этот порт доступен только вашему ip адресу и больше никому другому. Но нужно заметить, что это не панацея. Кто-либо может случайно запросить порт, который предназначен для активации, и таким образом, открыть себе доступ к службе SSH. Так что надежные пароли и ключи шифрования это не отменяет.
Выводы
В этой статье мы рассмотрели как закрыть порт iptables, а также как его скрыть с возможностью подключения, когда это будет необходимо. Надеюсь, эта информация была для вас полезной.
По умолчанию в операционной системе Windows имеется несколько открытых портов, которые используются для разных сетевых протоколов. В большинстве случаев эти протоколы и связанные с ними порты и службы Виндовс совершенно не нужны - для работы в сети Интернет достаточно одного стандартного протокола TCP/IP. Кроме того, некоторые открытые порты делают компьютер уязвимым для хакерских атак. В этой статье рассказывается о том, как отключить ненужные открытые порты в Windows XP.
Для того, что бы узнать, какие порты открыты, потребуется консольная программа FPORT , которую можно скачать , или программа TCPView (её можно скачать ), либо программа CurrPorts (скачать ).
Распаковав программу FPORT , файл программы fport.exe следует поместить в директорию с операционной системой (например, C:\WINDOWS ), и теперь можно будет вызвать эту программу, создав ярлык с параметром cmd /k fport или введя эту последовательность команд cmd /k fport в окне запуска программ (Пуск --> Выполнить) . Здесь вызывается командный процессор (cmd ) с праметром /k , этот параметр указывает командному процессору не закрывать своё окно после выполнения программы fport.exe .
Запустив утилиту fport.exe , можно увидеть список открытых портов:
FPort v2.0 - TCP/IP Process to Port Mapper Copyright 2000 by Foundstone, Inc. http://www.foundstone.com Pid Process Port Proto Path 756 -> 135 TCP 4 System -> 139 TCP 4 System -> 445 TCP 404 -> 1028 TCP 404 -> 123 UDP 0 System -> 123 UDP 0 System -> 137 UDP 0 System -> 138 UDP 756 -> 445 UDP 4 System -> 500 UDP 0 System -> 1900 UDP 4 System -> 4500 UDP
Это типичные открытые порты в только что установленной операционной системе Windows XP SP3.
Так же эти открытые порты могут быть показаны программой TCPView :
И программой CurrPorts :
Назначение портов
- 123 - Network Time Protocol (NTP) - синхронизация часов компьютера.
- 135 - Удаленный вызов процедур (RPC).
- 137 - NetBIOS -Пртокол для работы с локальной сетью - (служба netbios-ns - служба имен NETBIOS).
- 138 - NetBIOS - Пртокол для работы с локальной сетью - (служба netbios-dgm - служба дейтаграмм NETBIOS).
- 139 - NetBIOS - Пртокол для работы с локальной сетью - (служба netbios-ss - служба сеансов NETBIOS).
- 445 - TCP/IP - MS Сетевой доступ (служба microsoft-ds).
- 500 - IPSec (VPN tunneling) - Internet Key Exchange (IKE).
- 1028 - порт динамически выделяемый операционной системой Windows, для этого используются порты с номерами больше 1024.
- 1900 - UPnP.
- 4500 - IPSec (VPN tunneling) - NAT traversal.
В данном примере для работы в сети интернет нужен только один порт - 1028 с протоколом TCP. Остальные порты можно отключить.
Отключение открытых портов
Для отключения портов 123, 135, 138, 139, 445, 500, 1900 и 4500 потребуется программа PORTS OFF , которую можно скачать . Эта программа позволяет отключить как ненужные порты, так и ненужные службы - Удалённый реестр (Remote Registry Service ) и Службу сообщений (Messenger ).
Программа предназначена для операционной системы Windows XP/2000/2003.
Как пользоваться программой PORTS OFF
.
Установив необходимые переключатели в положение OFF
, следует нажать кнопку Apply
, после чего потребуется произвести перезагрузку компьютера, что бы изменения вступили в силу. После первого использования программы настройки, связанные с портами 135, 137-139 и 445 будут сохранены и при необходимости их можно будет легко восстановить (для этого предназначены кнопки Restore Default
).
С отключёнными портами компьютер защищён от хакерских атак и и червей-вирусов. Следует отметить, что при отключении порта 123 системное время на компьютере необходимо будет корректировать вручную, так что этот порт можно в принципе оставить открытым или использовать для синхронизации времени какую-либо стороннюю программу, например, NIST , которую можно скачать . Для синхронизации внутренних часов компьютера эту консольную программу следует запускать со следующими параметрами:
nist.exe ntp.okstate.edu -s
Здесь ntp.okstate.edu
- имя сервера точного времени (можно использовать другой сервер, например, time.windows.com
);
-s
- параметр, указывающий программе произвести синхронизацию системных часов компьютера.
Что бы каждый раз не набирать эти команды, можно сделать ярлык для запуска утилиты NIST :
Параметры ярлыка выбраны такими (cmd.exe /k nist.exe ntp.okstate.edu -s ) для того, что бы консольное окно вывода не закрывалось после выполнения.
Вчера неизвестные устроили очередную массовую атаку с помощью вируса-шифровальщика. Эксперты заявили, что пострадали десятки крупных компаний на Украине и в России. Вирус-шифровальщик носит название Petya.A (вероятно, вирус назван в честь Петра Порошенко). Пишут, что если создать файл perfc (без расширения) и разместить его по адресу C:\Windows\, вирус обойдет вас стороной. Если ваш компьютер ушел в перезагрузку и начал «проверку диска», нужно его немедленно выключить. Загрузка с с LiveCD или USB-диска даст доступ к файлам. Еще один способ защиты: закрыть порты 1024–1035, 135 и 445. Как это сделать мы сейчас разберемся на примере Windows 10.
Шаг 1
Переходим в Брандмауэр Windows
(лучше выбрать режим повышенной безопасности), выбираем вкладку «Дополнительные параметры
».
Выбираем вкладку «Правила для входящих подключений
», потом действие «Создать правило
» (в правой колонке).
Шаг 2
Выбираем тип правила - «для Порта
». В следующем окне выбираем пункт «Протокол TCP
», указываем порты, которые хотите закрыть. В нашем случае это «135, 445, 1024-1035
» (без кавычек).
Шаг 3
Выбираем пункт «Блокировать подключение
», в следующем окне отмечаем все профили: Доменный, Частный, Публичный.
Шаг 4
Осталось придумать название для правила (чтобы в будущем его было легко найти). Можно указать описание правила.
Если какие-то программы перестанут работать или станут работать неправильно, возможно, вы перекрыли порт, которые они используют. Нужно будет добавить для них исключение в брандмауэре.
135 TCP-порт используется службами удалённого обслуживания (DHCP, DNS, WINS и т.д.) и в приложениях «клиент-сервер» Microsoft (например, Exchange).
445 TCP-порт используется в Microsoft Windows 2000 и поздних версий для прямого TCP/IP-доступа без использования NetBIOS (например, в Active Directory).
Публикация
Что такое компьютерные порты? Как закрыть порты?В этой статье я попытаюсь на пальцах объяснить, что такое компьютерные порты, как они используются, для чего нужны и чем может быть опасно оставлять неиспользуемые порты открытыми.
Давайте представим себе страну, пусть это будет Испания. Она омывается морями и океанами и конечно же имеет много морских портов.
Каждый порт специально оборудован для приема различных грузов. Суда, приходящие из различных стран мира заходят в порты на разгрузку или погрузку. Обычно каждый из этих кораблей имеет пункт (порт) назначения. Например судно из Южной Африки постоянно приходит на разгрузку в порт Cartagena и никогда ни в один из других портов. Несмотря на то, что в Испании существуют специально оборудованные порты, практически каждое судно может бросить якорь в любой бухте, например у города Bilbao, взять на борт груз и спокойно уплыть. Для того чтобы этого не произошло нужно иметь хорошую пограничную команду, которая будет постоянно контролировать береговую линию и не даст привести в страну или вывезти из нее груз.
Страны и океаны это конечно все интересно, но цель у нас немного иная, поэтому теперь попробуем провести параллель с вашим компьютером. Ваш компьютер после выхода в интернет становится похож на страну из нашего примера. Он получает IP и становится известным в сети под этим именем. Ваш компьютер так же как и в примере имеет множество портов.
Многие программы, которые работают с сетью рассчитаны на подключение к определенным портам. Как видно из рисунка, интернет браузеры, например Internet Explorer, используют в своей работе порт 80. Почтовые программы, например Outlook Express, используют 2 порта, для отправки почты порт 25 и для приема 110 порт. Если вы усатновите программу для обмена файлами emule, то она откроет, необходимые для своей работы порты 4662 и 4672. Таким образом, если ваш компьютер не защищен, то каждая программа, установленная на вашем компьютере сможет открыть, необходимый ей порт. Точно также любая программа извне может подключиться к любому порту вашего компьютера. Например, вам могут одним из многих способов подбросить программу - трояна (пример - I-Worm.MyDoom), которая откроет на вашем компьютере порт (пример - 3127), через который спокойно вынесет всю вашу важную информацию. Чтобы этого не произошло необходимо пользоваться программами, которые предназначены для закрытия неиспользуемых портов. Такие программы называют Firewalls. Что это за программы и как с ними работать мы узнаем с вами в следующей статье. А пока проверьте ваш компьютер на наличие открытых, наиболее опасных портов, это вы сможете
Пройдя наш тест " " вы обнаружили, что ваша система имеет один или несколько открытых портов и незнаете как их закрыть? Не беда, мы постараемся вам помочь.
Как можно закрыть порты?
Первый и самый простой вариант - это завершить работу программ или служб, которые используют эти порты (можно сказать открывают). В первую очередь это порты 135-139, 445, Это можно сделать вручную, что требует определенных знаний и навыков. Чтобы немного упростить вам эту задачу мы рекомендуем использовать небольшую программку , объемом всего 50 kB. Скачав ее и запустив, вы увидите следующее окошко
Вам останется только нажать кнопки с надписью Disable и Close, после чего перезагрузить компьютер. В итоге все индикаторы должны быть зеленого цвета. Это будет означать, что порты 135-139, 445 и 5000 закрыты.
Эта методитка поможет закрыть вам всего несколько портов и ни в коем случае не заменит установку Firewall
Второй вариант - это установка программы Firewall и создание правил для закрытия портов. Выбрать фаерволл и узнать как его установить вы можете, почитав наши руководства в разделе " ".
А теперь небольшой инструктаж по созданию правил для закрытия портов в различных фаерволах. Для закрытия определенного порта вам нужно выбрать используемый вами Firewall из списка ниже и повторить действия, указанные в руководстве, изменив всего лишь одну деталь, это номер порта.
Серия сообщений " ":все об ИнтернетеЧасть 1 -