Advertisement
Guest User

Untitled

a guest
Dec 25th, 2018
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4. "flag"
  5. "log"
  6.  
  7. filedriver "github.com/goftp/file-driver"
  8. "github.com/goftp/server"
  9. )
  10.  
  11. func main() {
  12. var (
  13. root = flag.String("root", "./ftp", "Root directory to serve")
  14. user = flag.String("user", "user", "Username for login")
  15. pass = flag.String("pass", "123456", "Password for login")
  16. port = flag.Int("port", 8080, "Port")
  17. host = flag.String("host", "localhost", "Port")
  18. )
  19. flag.Parse()
  20. if *root == "" {
  21. log.Fatalf("Please set a root to serve with -root")
  22. }
  23.  
  24. factory := &filedriver.FileDriverFactory{
  25. RootPath: *root,
  26. Perm: server.NewSimplePerm("user", "group"),
  27. }
  28.  
  29. opts := &server.ServerOpts{
  30. Factory: factory,
  31. Port: *port,
  32. Hostname: *host,
  33. Auth: &server.SimpleAuth{Name: *user, Password: *pass},
  34. }
  35.  
  36. log.Printf("Starting ftp server on %v:%v", opts.Hostname, opts.Port)
  37. log.Printf("Username %v, Password %v", *user, *pass)
  38. server := server.NewServer(opts)
  39. err := server.ListenAndServe()
  40. if err != nil {
  41. log.Fatal("Error starting server:", err)
  42. }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement