Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1

    Trasformare l'ambiente di sviluppo di IntelliJ in https

    Come si trasforma l'ambiente di sviluppo di IntelliJ in https?
    Mi spigate anche cosa fisicamente bisogna fare per avere questo protocollo su un ide o un server qualsiasi?
    ciao
    Più pratica in futuro...

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Come si trasforma l'ambiente di sviluppo di IntelliJ in https?
    Scusa ma questo detto così non vuol dire proprio nulla, ZERO. Assolutamente senza senso ...
    Chiarisci meglio, altrimenti nessuno potrà risponderti.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Scusami. Ho aggiunto al mio sito uno script in js che funziona solo se presente https per cui vorrei trasformare questo:
    http://localhost:8080/
    in questo:
    https://localhost:8080/
    Ora è più chiaro?
    Più pratica in futuro...

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Scusami. Ho aggiunto al mio sito uno script in js che funziona solo se presente https per cui vorrei trasformare questo:
    http://localhost:8080/
    in questo:
    https://localhost:8080/
    Ora è più chiaro?
    Il IDE (che sia Eclipse, IDEA ,ecc...) c'entra relativamente poco (a meno che abbia delle opzioni specifiche per configurare il server su questi aspetti).
    C'entra ovviamente e certamente il server, es. Apache Tomcat. Se è appunto Tomcat, cerca in rete qualcosa tipo "tomcat ssl setup", perché non è una procedura che si può spiegare in poche righe.
    Questo perché con HTTPS entrano in gioco i "certificati" digitali. Riguardo quello che leggerai in rete, dovrai distinguere tra il setup per l'uso in locale, dove tipicamente si usa un certificato self-signed (firmato cioè da te, che non "vale" nulla) e quello che invece si deve fare se il sito sarà poi realmente su internet con un nome di dominio perché in quel caso si dovrebbe passare per una Certification Authority, per cui avere il certificato dalla CA non è gratis, costa dei soldi.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  5. #5
    Ultima modifica di giannino1995; 22-10-2018 a 18:48
    Più pratica in futuro...

  6. #6
    Seguendo la guida ci sono due punti che non comprendo:
    1) Il file .keistore posso lasciarlo in C:\Users\Gianni\.keystore? Dov'è la cartella della user con cui gira Tomcat?
    Fisicamente ho Tomcat e la jdk qui:
    F:\Java\apache-tomcat-9.0.11\
    F:\Java\jdk-10.0.2
    (F è un disco di storage e non di sistema)
    2) Ho decommentato il codice giusto?
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <!--
      Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at
    
          http://www.apache.org/licenses/LICENSE-2.0
    
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    <!-- Note:  A "Server" is not itself a "Container", so you may not
         define subcomponents such as "Valves" at this level.
         Documentation at /docs/config/server.html
     -->
    <Server port="8005" shutdown="SHUTDOWN">
      <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
      <!-- Security listener. Documentation at /docs/config/listeners.html
      <Listener className="org.apache.catalina.security.SecurityListener" />
      -->
      <!--APR library loader. Documentation at /docs/apr.html -->
      <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
      <!-- Prevent memory leaks due to use of particular java/javax APIs-->
      <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
      <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
      <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
    
      <!-- Global JNDI resources
           Documentation at /docs/jndi-resources-howto.html
      -->
      <GlobalNamingResources>
        <!-- Editable user database that can also be used by
             UserDatabaseRealm to authenticate users
        -->
        <Resource name="UserDatabase" auth="Container"
                  type="org.apache.catalina.UserDatabase"
                  description="User database that can be updated and saved"
                  factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
                  pathname="conf/tomcat-users.xml" />
      </GlobalNamingResources>
    
      <!-- A "Service" is a collection of one or more "Connectors" that share
           a single "Container" Note:  A "Service" is not itself a "Container",
           so you may not define subcomponents such as "Valves" at this level.
           Documentation at /docs/config/service.html
       -->
      <Service name="Catalina">
    
        <!--The connectors can use a shared executor, you can define one or more named thread pools-->
        <!--
        <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
            maxThreads="150" minSpareThreads="4"/>
        -->
    
    
        <!-- A "Connector" represents an endpoint by which requests are received
             and responses are returned. Documentation at :
             Java HTTP Connector: /docs/config/http.html
             Java AJP  Connector: /docs/config/ajp.html
             APR (HTTP/AJP) Connector: /docs/apr.html
             Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
        -->
        <Connector port="8080" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
        <!-- A "Connector" using the shared thread pool-->
        <!--
        <Connector executor="tomcatThreadPool"
                   port="8080" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
        -->
        <!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443
             This connector uses the NIO implementation. The default
             SSLImplementation will depend on the presence of the APR/native
             library and the useOpenSSL attribute of the
             AprLifecycleListener.
             Either JSSE or OpenSSL style configuration may be used regardless of
             the SSLImplementation selected. JSSE style configuration is used below.
        -->
    
        <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
                   maxThreads="150" SSLEnabled="true">
            <SSLHostConfig>
                <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
                             type="RSA" />
            </SSLHostConfig>
        </Connector>
    
        <!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443 with HTTP/2
             This connector uses the APR/native implementation which always uses
             OpenSSL for TLS.
             Either JSSE or OpenSSL style configuration may be used. OpenSSL style
             configuration is used below.
        -->
        <!--
        <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
                   maxThreads="150" SSLEnabled="true" >
            <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
            <SSLHostConfig>
                <Certificate certificateKeyFile="conf/localhost-rsa-key.pem"
                             certificateFile="conf/localhost-rsa-cert.pem"
                             certificateChainFile="conf/localhost-rsa-chain.pem"
                             type="RSA" />
            </SSLHostConfig>
        </Connector>
        -->
    
        <!-- Define an AJP 1.3 Connector on port 8009 -->
        <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    
    
        <!-- An Engine represents the entry point (within Catalina) that processes
             every request.  The Engine implementation for Tomcat stand alone
             analyzes the HTTP headers included with the request, and passes them
             on to the appropriate Host (virtual host).
             Documentation at /docs/config/engine.html -->
    
        <!-- You should set jvmRoute to support load-balancing via AJP ie :
        <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
        -->
        <Engine name="Catalina" defaultHost="localhost">
    
          <!--For clustering, please take a look at documentation at:
              /docs/cluster-howto.html  (simple how to)
              /docs/config/cluster.html (reference documentation) -->
          <!--
          <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
          -->
    
          <!-- Use the LockOutRealm to prevent attempts to guess user passwords
               via a brute-force attack -->
          <Realm className="org.apache.catalina.realm.LockOutRealm">
            <!-- This Realm uses the UserDatabase configured in the global JNDI
                 resources under the key "UserDatabase".  Any edits
                 that are performed against this UserDatabase are immediately
                 available for use by the Realm.  -->
            <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                   resourceName="UserDatabase"/>
          </Realm>
    
          <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true">
    
            <!-- SingleSignOn valve, share authentication between web applications
                 Documentation at: /docs/config/valve.html -->
            <!--
            <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
            -->
    
            <!-- Access log processes all example.
                 Documentation at: /docs/config/valve.html
                 Note: The pattern used is equivalent to using pattern="common" -->
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log" suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    
          </Host>
        </Engine>
      </Service>
    </Server>
    3) Dopo tutto questo lavoro IntelliJ mi apre ancora l'http. Probabilmente devo settare l'https da qualche parte. Dove di preciso?
    grazie per le info
    Più pratica in futuro...

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    3) Dopo tutto questo lavoro IntelliJ mi apre ancora l'http. Probabilmente devo settare l'https da qualche parte. Dove di preciso?
    Non lo so (su IntelliJ IDEA). Su Eclipse non mi pare ci sia una impostazione del genere (perlomeno non mi pare di averla mai vista).
    Ma comunque, è il solito "non problema". Che l'IDE ti apra la root della applicazione in un browser, è solo una comodità.
    Quello che poi conta è come usa il sito l'utente. E se l'utente scrive a http://blabla ? Parte e poi rimane tutto su http e NON https !
    Soluzione: forzare l'uso di https invece di http. Ci sono sicuramente diverse opzioni per farlo. Una: se ti dico la parola "magica" Filter ?

    P.S. per il resto che hai chiesto, dovrei andare a ri-leggere la documentazione. Queste cose di https, certificati, keystore ecc.. non sono cose che si fanno "tutti i giorni".
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  8. #8
    Premetto che la parolina magica di cui tu parli mi piace molto!
    Con le impostazioni che ho in questo momento se scrivo a mano http://localhost:8080/ funziona tutto alla perfezione ma se scrivo https://localhost:8443/ ottengo:
    Tempo per la connessione esaurito
    Il server localhost sta impiegando troppo tempo a rispondere.
    Il sito potrebbe essere non disponibile o sovraccarico. Riprovare fra qualche istante.
    Se non è possibile caricare alcuna pagina, controllare la connessione di rete del computer.
    Se il computer o la rete sono protetti da un firewall o un proxy, assicurarsi che Firefox abbia i permessi per accedere al Web.
    Non so come avviare Tomcat e far girare il mio progetto su esso senza IntelliJ IDEA: pensi che dovrei imparare a fare questo?
    ciao
    Più pratica in futuro...

  9. #9
    Se scrivo:
    codice:
        <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
                   maxThreads="150" SSLEnabled="true">
            <SSLHostConfig>
                <Certificate certificateKeystoreFile="conf/.keystore"
                             type="RSA" />
            </SSLHostConfig>
        </Connector>
    dopo aver spostato .keystore nella stessa cartella conf di Tomcat dove si trova server.xml il protocollo si attiva e riesco a navigare su https://localhost:8443/ ma mozilla mi continua a segnalare la connessione come non sicura.
    localhost:8443 utilizza un certificato di sicurezza non valido.
    Il certificato non è attendibile in quanto autofirmato.
    Il certificato è valido solo per .
    Codice di errore: MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT
    Come avevi previsto riesco a navigare su http ed htpps e questo va assolutamente modificato. Se c'è https devo usare https altrimenti in mancanza http.
    L'applicazione in js per la localizzazione su https non funziona ugualmente ma questo non so se centra con questa discussione. Lo script potrebbe non funzionare perché mozilla vede la connessione come non sicura? Tu che dici?
    grazie
    Più pratica in futuro...

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    ma mozilla mi continua a segnalare la connessione come non sicura.
    Certo, è auto-firmato, il certificato non "vale" nulla. Quindi la cifratura end-to-end (tra server e browser) c'è ma non è comunque sicuro nel fatto della identità del server.

    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Se c'è https devo usare https altrimenti in mancanza http.
    Ma che vuol dire!? Se il server supporta https oppure no lo sa lo sviluppatore del sito ... gli utenti no (o perlomeno, potrebbero saperlo sì o no). Ma è poi lo sviluppatore del sito che decide quando/dove/come usare https.

    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    L'applicazione in js per la localizzazione su https non funziona ugualmente
    Non hai ancora detto di quale script js stai parlando.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.