fixed netclient

This commit is contained in:
afeiszli 2021-06-01 22:31:41 -04:00
parent 085877ace2
commit 9dff18209e
6 changed files with 27 additions and 46 deletions

View file

@ -44,9 +44,10 @@ func CreateServerToken(netID string) (string, error) {
if *network.IsLocal {
privAddr = network.LocalRange
}
accessstringdec := servercfg.GetGRPCWGPort() + "|" + address + "|" + address + "|" + netID + "|" + accesskey.Value + "|" + privAddr
accessstringdec := " " + "|"+ address + "|" + address + "|" + netID + "|" + accesskey.Value + "|" + privAddr
log.Println("Access String: " + accessstringdec)
accesskey.AccessString = base64.StdEncoding.EncodeToString([]byte(accessstringdec))
network.AccessKeys = append(network.AccessKeys, accesskey)

View file

@ -1,18 +1,18 @@
package models
type IntClient struct {
ClientID string `json:"clientid" bson:"clientid"`
PrivateKey string `json:"privatekey" bson:"privatekey"`
PublicKey string `json:"publickey" bson:"publickey"`
AccessKey string `json:"accesskey" bson:"accesskey"`
Address string `json:"address" bson:"address"`
Address6 string `json:"address6" bson:"address6"`
Network string `json:"network" bson:"network"`
ServerPublicEndpoint string `json:"serverwgendpoint" bson:"serverwgendpoint"`
ServerAPIPort string `json:"serverapiendpoint" bson:"serverapiendpoint"`
ServerPrivateAddress string `json:"serveraddress" bson:"serveraddress"`
ServerWGPort string `json:"serverport" bson:"serverport"`
ServerGRPCPort string `json:"serverport" bson:"serverport"`
ServerKey string `json:"serverkey" bson:"serverkey"`
IsServer string `json:"isserver" bson:"isserver"`
ClientID string `json:"clientid" bson:"clientid"`
PrivateKey string `json:"privatekey" bson:"privatekey"`
PublicKey string `json:"publickey" bson:"publickey"`
AccessKey string `json:"accesskey" bson:"accesskey"`
Address string `json:"address" bson:"address"`
Address6 string `json:"address6" bson:"address6"`
Network string `json:"network" bson:"network"`
ServerPublicEndpoint string `json:"serverpublicendpoint" bson:"serverpublicendpoint"`
ServerAPIPort string `json:"serverapiport" bson:"serverapiport"`
ServerPrivateAddress string `json:"serverprivateaddress" bson:"serverprivateaddress"`
ServerWGPort string `json:"serverwgport" bson:"serverwgport"`
ServerGRPCPort string `json:"servergrpcport" bson:"servergrpcport"`
ServerKey string `json:"serverkey" bson:"serverkey"`
IsServer string `json:"isserver" bson:"isserver"`
}

View file

@ -273,6 +273,13 @@ func ModGlobalConfig(cfg models.IntClient) error{
if cfg.ServerKey != ""{
modconfig.Client.ServerKey = cfg.ServerKey
}
if cfg.AccessKey != ""{
modconfig.Client.AccessKey = cfg.AccessKey
}
if cfg.ClientID != ""{
modconfig.Client.ClientID = cfg.ClientID
}
err = WriteGlobal(&modconfig)
return err
}

View file

@ -52,6 +52,8 @@ func Register(cfg config.GlobalConfig) error {
return errors.New("request to server failed: " + res.Status)
}
bodyBytes, err := ioutil.ReadAll(res.Body)
bodyString := string(bodyBytes)
spew.Dump(bodyString)
if err != nil {
return err
}
@ -74,6 +76,7 @@ func Register(cfg config.GlobalConfig) error {
func Unregister(cfg config.GlobalConfig) error {
client := &http.Client{ Timeout: 7 * time.Second,}
publicaddress := cfg.Client.ServerPublicEndpoint + ":" + cfg.Client.ServerAPIPort
log.Println("sending delete request to: " + "http://"+publicaddress+"/api/intclient/"+cfg.Client.ClientID)
req, err := http.NewRequest("DELETE", "http://"+publicaddress+"/api/intclient/"+cfg.Client.ClientID, nil)
if err != nil {
log.Println(err)
@ -94,17 +97,3 @@ func Unregister(cfg config.GlobalConfig) error {
}
return err
}
func Reregister(cfg config.GlobalConfig) error {
err := Unregister(cfg)
if err != nil {
log.Println("failed to un-register")
return err
}
err = Register(cfg)
if err != nil {
log.Println("failed to re-register after unregistering")
}
return err
}

View file

@ -199,22 +199,6 @@ func main() {
return err
},
},
{
Name: "reregister",
Usage: "Re-Register with Netmaker Server for secure GRPC communications.",
Flags: cliFlags,
Action: func(c *cli.Context) error {
cfg, err := config.ReadGlobalConfig()
if err != nil {
return err
}
var gconf config.GlobalConfig
gconf = *cfg
err = command.Reregister(gconf)
return err
},
},
{
Name: "join",
Usage: "Join a Netmaker network.",

View file

@ -208,7 +208,7 @@ func AddNetwork(network string) (bool, error) {
return false, err
}
token, err := functions.CreateServerToken(network)
if err != nil {
if err != nil {
log.Println("could not create server token for " + network)
return false, err
}