Я пытаюсь воссоздать какую-то проблему клиента, которая требует от меня блокирования пакетов SSL, приходящих с сервера, т. Е. Шаги подключения TCP должны выполняться, но рукопожатие SSL должно остановиться.

Существуют ли какие-либо инструменты под ОС Windows или любые сторонние инструменты, которые можно использовать для имитации этого (я знаю, что в Linux я, вероятно, могу использовать команду iproutes для этого).

2 ответа2

0

Используйте простой Python или Perl скрипт, чтобы подделать протокол.

Остановите ваш демон ssh на сервере, а затем запустите скрипт Python:

    class MyTCPHandler(SocketServer.BaseRequestHandler):
    """
    The RequestHandler class for our server.

    It is instantiated once per connection to the server, and must
    override the handle() method to implement communication to the
    client.
    """

    def handle(self):
        # self.request is the TCP socket connected to the client
        self.data = self.request.recv(1024).strip()
        print "%s wrote:" % self.client_address[0]
        print self.data
        # just send back the same data, but upper-cased
        # Simulate error Here!
        # maybe exit()
        self.request.send(self.data.upper())

if __name__ == "__main__":
    HOST, PORT = "localhost", 22

    # Create the server, binding to localhost on port 9999
    server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)

    # Activate the server; this will keep running until you
    # interrupt the program with Ctrl-C
    server.serve_forever()

Просто настройте сценарий, чтобы он "потерпел неудачу" так, как вы хотите: либо не отвечать, ни отправлять мусор обратно, ни убивать процесс слушателя.

0

Мне не ясно, что именно вы хотите сделать. Вы хотите оставить TCP-соединение открытым, но не отправлять пакеты подтверждения связи TLS? Вы хотите немедленно закрыть TCP-соединение? Вы хотите отправить только несколько пакетов TLS? Если да, то какие?

В любом случае вам могут пригодиться утилиты тестирования командной строки openssl s_client и / или openssl s_server, а также wireshark для диагностики проблем SSL.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .