feat: init commit

This commit is contained in:
2021-07-17 10:16:09 +08:00
parent 428f3935d8
commit 29db055415
5 changed files with 53 additions and 0 deletions

29
main.go Normal file
View File

@@ -0,0 +1,29 @@
package main
import (
"fmt"
"io"
"log"
"strings"
"github.com/gliderlabs/ssh"
gossh "golang.org/x/crypto/ssh"
)
func main() {
ssh.Handle(func(s ssh.Session) {
authorizedKey := gossh.MarshalAuthorizedKey(s.PublicKey())
io.WriteString(s, fmt.Sprintf("\r\n%s\r\n", strings.Repeat("-", 88)))
io.WriteString(s, fmt.Sprintf("public key used by %s:\n", s.User()))
io.WriteString(s, fmt.Sprintf("%v", s.PublicKey()))
io.WriteString(s, fmt.Sprintf("\r\n%s\r\n", strings.Repeat("-", 88)))
s.Write(authorizedKey)
io.WriteString(s, fmt.Sprintf("\r\n%s\r\n", strings.Repeat("-", 88)))
})
publicKeyOption := ssh.PublicKeyAuth(func(ctx ssh.Context, key ssh.PublicKey) bool {
return true // allow all keys, or use ssh.KeysEqual() to compare against known keys
})
log.Println("Listening :222...")
log.Fatal(ssh.ListenAndServe(":2222", nil, publicKeyOption))
}