Acceso después de conectar a router

Buenas tardes.
A ver si algún compi puede ayudarme.
El problema:
Configuro el nodemcu a un router, acceso ok, tanto internamente como vía exterior.
Mi problema es que sigue visible.
Acceso libre sabiendo la ip asignada que te la da el tlf y probando puertos, das con la web creada = seguridad -2.
Como podría modificarlo para que esto no ocurra?
O como podría modificarlo para darle mas seguridad?

#include <ESP8266WiFi.h>                     //Incluye la librería ESP8266WiFi

const char* ssid = "xxxxxxxxxx";          //Indicamos el nombre de la red WiFi (SSID) a la que queremos conectarnos.
const char* password = "xxxxxxxxxxxx";      //Indicamos la contraseña de de red WiFi
WiFiServer server(xxxx);                     //Definimos el puerto de comunicaciones la ip asignada en la empresa 192.168.1.254

int PinLED = 5; // D1                  //Definimos el pin de salida - GPIO5
int Pin1 = 14; // D5
int Pin2 = 12; // D6
int Pin3 = 4; // D2
int estado = LOW;


void setup() {

  Serial.begin(115200);

  pinMode(PinLED, OUTPUT);                 //Inicializamos el GPIO2 como salida
  digitalWrite(PinLED, LOW);               //Dejamos inicialmente el GPIO2 apagado
  pinMode(Pin1, OUTPUT);
  digitalWrite(Pin1, LOW);
  pinMode(Pin2, OUTPUT);
  digitalWrite(Pin2, LOW);
  pinMode(Pin3, OUTPUT);
  digitalWrite(Pin3, LOW);
  


  WiFi.begin(ssid, password);              //Inicializamos  la conexión del NodeMCU con la red WiFi
  Serial.printf("Conectando a la red: %sn", WiFi.SSID().c_str());

  while (WiFi.status() != WL_CONNECTED) {  // Verifica el estado de la conexión del NodeMCU cada 0,5s hasta que conecta 
    delay(500);
    Serial.print(".");                    
  }
  Serial.println("");
  Serial.println("WiFi conectada");        // Indica que el NodeMCU conectado con la red WiFi 

  server.begin();                          // Inicia el NodeMCU en modo Station
  Serial.println("Servidor inicializado");

  Serial.printf("Utiliza esta URL para conectar: http://%s/n", WiFi.localIP().toString().c_str());
} 

void loop(){

  WiFiClient client = server.available();
  if (client) //Si hay un cliente presente
  { 
    Serial.println("Nuevo Cliente");
    
    //esperamos hasta que hayan datos disponibles
    while(!client.available()&&client.connected())
    {
    delay(1);
    }
    
    // Leemos la primera línea de la petición del cliente.
    String linea1 = client.readStringUntil('r');
    Serial.println(linea1);

    if (linea1.indexOf("LED=ON")>0) //Buscamos un LED=ON en la 1°Linea
    {
      digitalWrite(5,HIGH);
      delay(1000);
      digitalWrite(5,LOW);
    }

    if (linea1.indexOf("1=ON")>0) //Buscamos un LED=ON en la 1°Linea
    {
      digitalWrite(14,HIGH);
      delay(1000);
      digitalWrite(14,LOW);
    }
    if (linea1.indexOf("2=ON")>0) //Buscamos un LED=ON en la 1°Linea
    {
      digitalWrite(12,HIGH);
      delay(1000);
      digitalWrite(12,LOW);
    }
    if (linea1.indexOf("3=ON")>0) //Buscamos un LED=ON en la 1°Linea
    {
      digitalWrite(4,HIGH);
      delay(1000);
      digitalWrite(4,LOW);
    }
    
    
    client.flush(); 
                
    Serial.println("Enviando respuesta...");   
    //Encabesado http    
    client.println("HTTP/1.1 200 OK");
    client.println("Content-Type: text/html");
    client.println("Connection: close");// La conexión se cierra después de finalizar de la respuesta
    client.println();
    //Pagina html  para en el navegador
    client.println("<!DOCTYPE HTML>");
    client.println("<html>");
    client.println("<head><title>Naylam Mechatronics</title>");
    client.println("<body>");
    client.println("<h1 align='center'>Garaje</h1>");
    client.println("<div style='text-align:center;'>");
    client.println("
");            
    client.println("<button onClick=location.href='./?LED=ON'>Abrir</button>");           
    client.println("
");
    client.println("</div>");
    client.println("</body>");
    client.println("</html>");
    client.println("<h1 align='center'>Huerto</h1>");
    client.println("<div style='text-align:center;'>");
    client.println("
");            
    client.println("<button onClick=location.href='./?1=ON'>Abrir</button>");           
    client.println("
");
    client.println("</div>");
    client.println("<body>");
    client.println("<h1 align='center'>Puerta Huerto</h1>");
    client.println("<div style='text-align:center;'>");
    client.println("
");            
    client.println("<button onClick=location.href='./?2=ON'>Abrir</button>");           
    client.println("
");
    client.println("</div>");
    client.println("<body>");
    client.println("<h1 align='center'>Puerta Casa</h1>");
    client.println("<div style='text-align:center;'>");
    client.println("
");            
    client.println("<button onClick=location.href='./?3=ON'>Abrir</button>");           
    client.println("
");
    client.println("</div>");
    client.println("</body>");
    client.println("</html>");
    
    delay(1);
    Serial.println("respuesta enviada");
    Serial.println();

  }
}

Por supuesto esto lo he ido modificando tipo frankenstein.
Picando un poco de uno y otro compañero, agregando botones, etc.
Un saludo y gracias de antemano.

Moderador: Código editado con etiquetas

No me he explicado bien.
Una vez que se conecta el arduino al router, funcionamiento todo ok, sigue visible como ap.
Es decir que te puedes conectar a el sin ningún problema, ver ip asignada a tu móvil, (ejem. 192.168.4.2)
accedes a el mediante 192.168.4.1 y al averiguar el puerto abierto accedes a la web creada.
Es decir seguridad -2.
La cuestión es como evitar que siga disponible después de realizar la conexión con el router.

Por cierto, al router de movistar accedes a la configuración total en 192.168.1.1:8000 y la clave es la que tengas en alejandra dejando como usuario 1234.

Cuando digo visible y disponible, me refiero visible ante un escaneo de redes wifi.
La solución que busco no es ocultar el ssid.
Sino que una vez realizada la conexión con mi router, ya no se pueda acceder al arduino.

Un ejemplo.
Mi móvil se conecta a un router.
Mi móvil no es visible ni accesible directamente.(o eso creo jeje)
Solo busca un router se conecta y listo.
A eso me refiero.
Mi nodemcu según la configuración de mas arriba, sigue visible.