Puncte:0

Let's Encrypt: Certificatul SSL este valid pentru domeniu, dar nu este valid pentru portul specific (net::ERR_SSL_PROTOCOL_ERROR)

drapel in

Folosesc VPS: Amazon EC2 și furnizor de certificat SSL: Let's Encrypt (prin Certbot)

Am văzut un fel de întrebare, dar răspunsul nu este util pentru situația mea. Am un domeniu api.example.com care este configurat și funcționează pe deplin pe un server Ubuntu. Am folosit Certbot pentru a configura domeniul cu HTTPS, cu toate acestea, am și API-uri configurate pentru a fi accesate pe un anumit port al acelui domeniu, să zicem 8443.

Când accesez api.example.com, văd lacătul în browser care spune că site-ul este securizat, dar ori de câte ori încerc să-mi accesez api api.example.com:8443/v1/someAPI, API-ul returnează rezultatul corespunzător, dar fără site-ul este securizat. Deoarece site-ul principal este securizat, în timp ce locația de acces API nu este, nu pot efectua apeluri API în consecință, ceea ce duce la net::ERR_SSL_PROTOCOL_ERROR.

Ale mele aplicație.proprietăți:

# Bază de date
db.driver: com.mysql.cj.jdbc.Driver
db.url: jdbc:mysql://123.123.123.123:123/ex?serverTimeZone=UTC&useSSL=false
db.nume utilizator: xx
#db.parolă: xxx
db.parolă: xxxxxx
 
# Hibernați
hibernate.dialect: org.hibernate.dialect.MySQL5Dialect
hibernate.show_sql: false
hibernate.hbm2ddl.auto: validare
hibernate.format_sql = false
entitymanager.packagesToScan: com.example

# Comprimarea serverului GZIP
server.compression.enabled: adevărat
server.compression.min-response-size: 2048
server.compression.mime-types: application/json,application/xml,text/html,text/xml,text/plain

# Calea fișierului
calea fișierului: /home/ec2-user/
file.report.path: /home/ec2-user/
jpa.repositories.enabled=fals

multipart.enabled=true
multipart.max-file-size=50MB
multipart.max-request-size=50MB

spring.servlet.multipart.max-file-size=50MB
spring.servlet.multipart.max-request-size=50MB

# calea de bază a serverului
base.path: https://api.example.com:8443

# Origini pentru a permite solicitările de la
origini: *

#Configurarea paginii de eroare
server.error.whitelabel.enabled=fals
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration

reportUrl:https://example.com/report/
[email protected]
e-mails=sales@[email protected]

# Configurare SMTP
spring.mail.enabled=adevărat
spring.mail.from=sales@[email protected]
##Configurare SMTP Amazon SES
spring.mail.host=email-smtp 
spring.mail.username=fsdfskfjsldfjf
spring.mail.password=ffdfsfdsfdsfsdfdsf
spring.mail.port=123

eds.users: [email protected]
eds.host: smtp.gmail.com
eds.port: 123
eds.fromname==exemplu

##Detalii SSL
server.port:8443
security.require-ssl=adevărat

server.ssl.key-store:classpath:abc.p12
server.ssl.key-store-parola:abc
server.ssl.keyStoreType:PKCS12
server.ssl.keyAlias:abc

Am adăugat și o regulă pentru 8443 port [![introduceți descrierea imaginii aici][1]][1]

Primesc o eroare în jurnalul serverului:

  . ____ _ __ _ _
 /\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \/ ___)| |_)| | | | | || (_| | ) ) ) )
  ' |____| .__|_| |_|_| |_\__, | ////
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot :: (v2.4.1)

2021-08-28 15:47:04.463 INFO 4513 --- [principal] c.a.MarketResearcher.ApplicationWar : Pornește ApplicationWar v0.0.1-SNAPSHOT folosind Java 1.8.0_302 pe ip-172-31-17-south-203.ap-south- 1.compute.internal cu PID 4513 (/home/ec2-user/MarketResearcher-0.0.1-SNAPSHOT.jar început de root în /home/ec2-user)
2021-08-28 15:47:04.467 INFO 4513 --- [ principal] c.a.MarketResearcher.ApplicationWar : Următoarele profiluri sunt active: prod
2021-08-28 15:47:06.924 INFO 4513 --- [principal] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.ws.config.annotation.DelegatingWsConfiguration' de tip [org.springframework.wannotation.configuration.ws. $$EnhancerBySpringCGLIB$$b39d77f] nu este eligibil pentru a fi procesat de către toți BeanPostProcessors (de exemplu: nu este eligibil pentru auto-proxying)
2021-08-28 15:47:07.008 INFO 4513 --- [ principal] .w.s.a.s.AnnotationActionEndpointMapping : Suport [WS-Addressing august 2004, WS-Addressing 1.0]
2021-08-28 15:47:07.705 INFO 4513 --- [principal] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat inițializat cu portul (porturile): 8443 (https)
2021-08-28 15:47:07.729 INFO 4513 --- [ main] o.apache.catalina.core.StandardService : Pornirea serviciului [Tomcat]
2021-08-28 15:47:07.730 INFO 4513 --- [ main] org.apache.catalina.core.StandardEngine : Pornirea motorului Servlet: [Apache Tomcat/9.0.41]
2021-08-28 15:47:07.852 INFO 4513 --- [principal] o.a.c.c.C.[Tomcat].[localhost].[/] : Inițializarea Spring embedded WebApplicationContext
2021-08-28 15:47:07.852 INFO 4513 --- [principal] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: inițializarea finalizată în 3164 ms
2021-08-28 15:47:08.432 INFO 4513 --- [principal] org.hibernate.Versiune: HHH000412: Hibernate ORM versiunea de bază 5.4.25.Final
2021-08-28 15:47:08.894 INFO 4513 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
2021-08-28 15:47:09.462 INFO 4513 --- [principal] org.hibernate.dialect.Dialect : HHH000400: Utilizarea dialectului: org.hibernate.dialect.MySQL5Dialect
2021-08-28 15:47:09.613 INFO 4513 --- [ main] o.h.e.boot.internal.EnversServiceImpl : Integrarea Envers este activată? : Adevărat
2021-08-28 15:47:12.758 INFO 4513 --- [principal] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Utilizarea implementării JtaPlatform: [org.hibernate.engine.transaction.internalform].NoJtaPlatform.jta.NoJtaPlatform.
2021-08-28 15:47:13.322 INFO 4513 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Inițializarea ExecutorService 'applicationTaskExecutor'
2021-08-28 15:47:15.192 INFO 4513 --- [principal] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat a pornit pe portul(e): 8443 (https) cu calea contextului ''
2021-08-28 15:47:15.223 INFO 4513 --- [principal] c.a.MarketResearcher.ApplicationWar : ApplicationWar a pornit în 11.771 secunde (JVM rulează pentru 12.677)
2021-08-28 15:52:41.387 INFO 4513 --- [nio-8443-exec-6] o.a.c.c.C.[Tomcat].[localhost].[/] : Inițializarea Spring DispatcherServlet 'dispatcherServlet'
2021-08-28 15:52:41.388 INFO 4513 --- [nio-8443-exec-6] o.s.web.servlet.DispatcherServlet : Inițializarea Servlet „dispatcherServlet”
2021-08-28 15:52:41.390 INFO 4513 --- [nio-8443-exec-6] o.s.web.servlet.DispatcherServlet : Inițializare finalizată în 2 ms
2021-08-28 16:06:33.275 WARN 4513 --- [nio-8443-exec-4] org.hibernate.orm.deprecation : HHH90000022: moștenirea lui Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.391 WARN 4513 --- [nio-8443-exec-4] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.683 WARN 4513 --- [nio-8443-exec-4] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.738 WARN 4513 --- [nio-8443-exec-1] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.739 WARN 4513 --- [nio-8443-exec-3] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.747 WARN 4513 --- [io-8443-exec-10] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este deprecated; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.845 WARN 4513 --- [nio-8443-exec-5] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:33.866 WARN 4513 --- [nio-8443-exec-2] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-28 16:06:34.021 WARN 4513 --- [nio-8443-exec-7] org.hibernate.orm.deprecation : HHH90000022: moștenirea Hibernate org.hibernate.Criteria API este depreciată; utilizați în schimb JPA javax.persistence.criteria.CriteriaQuery
2021-08-29 19:08:38.141 INFO 4513 --- [nio-8443-exec-5] o.apache.coyote.http11.Http11Processor : Eroare la analizarea antetului solicitării HTTP
 Notă: alte apariții ale erorilor de analizare a solicitărilor HTTP vor fi înregistrate la nivelul DEBUG.

java.lang.IllegalArgumentException: caracter nevalid găsit în protocolul HTTP [RTSP/1.00x0d0x0a0x0d...]
    la org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:559) ~[tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:261) ~[tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888) [tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597) [tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_302]
    la java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_302]
    la org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.41.jar!/:9.0.41]
    la java.lang.Thread.run(Thread.java:748) [na:1.8.0_302]
Steffen Ullrich avatar
drapel se
Un certificat nu este specific unui port. Serverul de lucru de la portul standard HTTPS 443 și serverul care nu funcționează de pe portul 8443 sunt servere diferite cu configurații diferite. Problema constă în configurarea serverului pe portul 8443.Din păcate, configurația afișată nu oferă suficiente detalii despre acest server, în special nu despre certificatele oferite. De asemenea, nu este clar cum este accesat de fapt serverul - `api.example.com:8443/v1/someAPI` este o adresă URL incompletă din care lipsește protocolul (`http://` vs. `https://`)
Ragesh Pikalmunde avatar
drapel in
@SteffenUllrich „https://api.marketsresearcher.biz:8443/v1/read-news” acesta este API-ul meu pe care îl folosesc. dacă încercați să accesați browserul `https://api.marketsresearcher.biz` va afișa un certificat valid, dar când încerc să accesez API-ul, îmi va afișa `net::ERR_SSL_PROTOCOL_ERROR`
Steffen Ullrich avatar
drapel se
Primesc o „conexiune refuzată” când încerc să accesez API-ul pe portul 8443. Aceasta înseamnă că există probabil reguli de firewall care împiedică accesul la acest port din exterior. Rețineți că o modalitate obișnuită de a expune API-urile este să nu expuneți serverul API în sine pe alt port, ci să inversați calea API către serverul API intern folosind serverul web normal.
Ragesh Pikalmunde avatar
drapel in
@SteffenUllrich Am adăugat o imagine la întrebare, am adăugat o regulă în grupul de securitate AWS pentru portul 8443. Trebuie să fac ceva mai mult?
Ragesh Pikalmunde avatar
drapel in
@SteffenUllrich Am primit jurnalul de la server și afișează o eroare: `java.lang.IllegalArgumentException: caracter nevalid găsit în protocolul HTTP [RTSP/1.00x0d0x0a0x0d...]` Aveți idee cum să remediați asta pe server?
Steffen Ullrich avatar
drapel se
Ambele tale ultime comentarii par cu totul alte probleme față de ceea ce ai cerut inițial. Vă rugăm să nu faceți din întrebarea dvs. o țintă în mișcare, ci creați întrebări noi cu suficiente detalii pentru probleme noi.
Ragesh Pikalmunde avatar
drapel in
@SteffenUllrich Am actualizat întrebarea
Steffen Ullrich avatar
drapel se
Pe baza rezultatului, nu se face nicio solicitare HTTP către API, ci o solicitare RTSP, adică ceva folosit în streaming în timp real. Nu am idee ce faci din partea clientului pentru a provoca acest lucru.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.