Сокет в Java и Nmap

У меня есть программа написать в Java, это ждать подключения на порт

когда я сканирую сервер по nmap, программа останавливается (erorr)

это мой код

SSLServerSocketFactory sslServerSocketfactory = (SSLServerSocketFactory)SSLServerSocketFactory.getDefault();
                sslServerSocket = (SSLServerSocket)sslServerSocketfactory.createServerSocket(intSSLport);

out = new PrintWriter(sslSocket.getOutputStream(), true);
                  in = new BufferedReader(new InputStreamReader(sslSocket.getInputStream()));
                  String value = in.readLine();

спасибо jtahlborn,,,, я решил, используя try и catch,,, и сделать catch вернуться к

sslSocket = (SSLSocket)sslServerSocket.accept()

снова

1 ответ

Nmap сканирует открытые порты, пытаясь подключиться к ним (отправляя TCP SYN). Поскольку вы открыли сокет сервера, он возвращается, когда к нему подключается клиент. В вашем случае это Nmap, который пытается подключиться.

AFAIK, nmap не завершит процедуру TCP-соединения (трехстороннее рукопожатие). nmap получит TCP SYN/ACK, отправленный в результате вашего вызова accept(), и решит, что порт открыт. Вот и все, nmap не будет отправлять третье сообщение, необходимое для завершения процедуры TCP-соединения (ACK).

Другие вопросы по тегам