added log and sharpened up

This commit is contained in:
0xdcarns 2022-07-05 16:51:11 -04:00
parent 393102ad69
commit 98efd67313
2 changed files with 18 additions and 2 deletions

16
main.go
View file

@ -209,7 +209,7 @@ func genCerts() error {
ca, err := serverctl.ReadCertFromDB(tls.ROOT_PEM_NAME)
//if cert doesn't exist or will expire within 10 days --- but can't do this as clients won't be able to connect
//if errors.Is(err, os.ErrNotExist) || cert.NotAfter.Before(time.Now().Add(time.Hour*24*10)) {
if errors.Is(err, os.ErrNotExist) || database.IsEmptyRecord(err) {
if errors.Is(err, os.ErrNotExist) || database.IsEmptyRecord(err) || ca.NotAfter.Before(time.Now().Add(time.Hour*24*10)) {
logger.Log(0, "generating new root CA")
caName := tls.NewName("CA Root", "US", "Gravitl")
csr, err := tls.NewCSR(*private, caName)
@ -254,6 +254,8 @@ func genCerts() error {
return err
}
logger.Log(2, "ensure the root.pem, root.key, server.pem, and server.key files are updated on your broker")
serverClientCert, err := serverctl.ReadCertFromDB(tls.SERVER_CLIENT_PEM)
if errors.Is(err, os.ErrNotExist) || database.IsEmptyRecord(err) || serverClientCert.NotAfter.Before(time.Now().Add(time.Hour*24*10)) {
//gen new key
@ -280,6 +282,18 @@ func genCerts() error {
}
} else if err != nil {
return err
} else if err == nil {
logger.Log(0, "detected valid server client cert, re-saving for future consumption")
key, err := serverctl.ReadKeyFromDB(tls.SERVER_CLIENT_KEY)
if err != nil {
return err
}
if err := serverctl.SaveKey(functions.GetNetmakerPath()+ncutils.GetSeparator(), tls.SERVER_CLIENT_KEY, *key); err != nil {
return err
}
if err := serverctl.SaveCert(functions.GetNetmakerPath()+ncutils.GetSeparator(), tls.SERVER_CLIENT_PEM, serverClientCert); err != nil {
return err
}
}
return serverctl.SetClientTLSConf(

View file

@ -119,9 +119,11 @@ func sendPeers() {
for _, network := range networks {
serverNode, errN := logic.GetNetworkServerLeader(network.NetID)
if errN == nil && logic.IsLocalServer(&serverNode) {
if errN == nil {
serverNode.SetLastCheckIn()
logic.UpdateNode(&serverNode, &serverNode)
}
if errN == nil && logic.IsLocalServer(&serverNode) {
if network.DefaultUDPHolePunch == "yes" {
if logic.ShouldPublishPeerPorts(&serverNode) || force {
if force {