https usa ssl/tsl per la cifratura della comunicazione. ssl/tsl si basa su un sistema di riconoscimento a base di chiavi e certificati per garantire l'autenticità dei due partecipanti alla comunicazione (nel caso di https, solo del server). Sostanzialmente il server presenta le sue credenziali al client e il client lo "riconosce" e lo identifica come sicuro iniziando la comunicazione protetta. Ora, per permettere al client di identificare in maniera sicura il server, il certificato, la carta di identità, del server viene garantito da una CA (Certification Authority) riconosciuta a livello mondiale come valida. Solo i certificati che vengono validati da questa (queste, ce ne sono un pò in giro) CA sono ritenuti validi dal client e quindi non fanno apparire quel messaggio. Quel messaggio appare in caso di certificati ssl AUTOGENERATI dal server (configurazione standard di Apache quando abiliti l'https), ovvero Apache usa se stesso come CA e genera e rilascia il certificato. Và da se che il singolo server di pincopallo non può essere una CA valida, per tanto il certificato viene segnato dal client come non validato e quindi a rischio. Questo avviene perchè un malintenzionato può sempre spacciarsi per un server specifico presentando un certificato fasullo, cercando di far credere al tuo client che sia il server reale, e tu passeresti ad un terzo dati anche sensibili pensado invece di essere sicuro (poi le problematiche di man in the middle non so se si esauriscano qui, non faccio l'esperto di sicurezza)

per rispondere quindi alla tua domanda: puoi provare a vedere se il tuo browser ha dei meccanismi per permetterti di considerare valido quel certificato. Comandi linux come wget o php come curl accettano flag per ignorare il check di validità sul certificato ssl. Altrimenti, devi acquistare presso una CA autorizzata un certificato ssl e installarlo sul tuo server. Il coso del certificato è molto variabile, da poche decine di euro a molte migliaia, dipende dalla CA e dal tipo di certificato e di utilizzo.