Update README and initial routes
parent
12b22792d3
commit
da26894f0b
|
@ -11,9 +11,13 @@ In summary:
|
||||||
|
|
||||||
* Manage "client" keys
|
* Manage "client" keys
|
||||||
* Exchange keys over HTTP(S)
|
* Exchange keys over HTTP(S)
|
||||||
|
* Exchange IP addressing (DHCP-like)
|
||||||
* Manually gate new peers
|
* Manually gate new peers
|
||||||
|
* Sets up network interface on the "client"
|
||||||
* Generate Ansible INI inventory
|
* Generate Ansible INI inventory
|
||||||
|
|
||||||
|
The primary scenario this tool is going to be used for is to manage machines using Ansible within an unknown LAN behind NAT. I am planning to use it for FOSSASIA Summit 2020.
|
||||||
|
|
||||||
## Limitations
|
## Limitations
|
||||||
|
|
||||||
* Linux-only
|
* Linux-only
|
||||||
|
|
|
@ -41,6 +41,19 @@ func runServer(ctx *cli.Context) error {
|
||||||
}
|
}
|
||||||
listen := ctx.String("listen")
|
listen := ctx.String("listen")
|
||||||
|
|
||||||
|
// TODO: Rate limiting
|
||||||
|
|
||||||
|
http.HandleFunc("/pub", func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
// Produce the public key
|
||||||
|
})
|
||||||
|
|
||||||
|
http.HandleFunc("/request", func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
// Ensure public key is new
|
||||||
|
// Assign an IP address
|
||||||
|
// Enqueue request into the gate
|
||||||
|
// Wait for flush of configuration
|
||||||
|
})
|
||||||
|
|
||||||
log.Println(inter)
|
log.Println(inter)
|
||||||
log.Println(config)
|
log.Println(config)
|
||||||
log.Println(listen)
|
log.Println(listen)
|
||||||
|
|
Loading…
Reference in New Issue