diff options
Diffstat (limited to 'weed/sftpd')
| -rw-r--r-- | weed/sftpd/sftp_filer.go | 6 | ||||
| -rw-r--r-- | weed/sftpd/sftp_helpers.go | 4 | ||||
| -rw-r--r-- | weed/sftpd/sftp_service.go | 27 | ||||
| -rw-r--r-- | weed/sftpd/user/homemanager.go | 12 |
4 files changed, 24 insertions, 25 deletions
diff --git a/weed/sftpd/sftp_filer.go b/weed/sftpd/sftp_filer.go index dbe6a438d..a0d86ebb4 100644 --- a/weed/sftpd/sftp_filer.go +++ b/weed/sftpd/sftp_filer.go @@ -17,7 +17,7 @@ import ( "github.com/pkg/sftp" "github.com/seaweedfs/seaweedfs/weed/filer" - "github.com/seaweedfs/seaweedfs/weed/glog" + "github.com/seaweedfs/seaweedfs/weed/util/log" "github.com/seaweedfs/seaweedfs/weed/pb" filer_pb "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb" weed_server "github.com/seaweedfs/seaweedfs/weed/server" @@ -90,7 +90,7 @@ func (fs *SftpServer) withTimeoutContext(fn func(ctx context.Context) error) err // ==================== Command Dispatcher ==================== func (fs *SftpServer) dispatchCmd(r *sftp.Request) error { - glog.V(0).Infof("Dispatch: %s %s", r.Method, r.Filepath) + log.V(3).Infof("Dispatch: %s %s", r.Method, r.Filepath) switch r.Method { case "Remove": return fs.removeEntry(r) @@ -196,7 +196,7 @@ func (fs *SftpServer) putFile(filepath string, data []byte, user *user.User) err if err != nil { // Log the error but don't fail the whole operation - glog.Errorf("Failed to update file ownership for %s: %v", filepath, err) + log.Errorf("Failed to update file ownership for %s: %v", filepath, err) } } diff --git a/weed/sftpd/sftp_helpers.go b/weed/sftpd/sftp_helpers.go index 0545528b9..23af4f0c0 100644 --- a/weed/sftpd/sftp_helpers.go +++ b/weed/sftpd/sftp_helpers.go @@ -8,7 +8,7 @@ import ( "time" "github.com/pkg/sftp" - "github.com/seaweedfs/seaweedfs/weed/glog" + "github.com/seaweedfs/seaweedfs/weed/util/log" "github.com/seaweedfs/seaweedfs/weed/util" ) @@ -117,7 +117,7 @@ func (w *filerFileWriter) Close() error { // Check permissions based on file metadata and user permissions if err := w.fs.checkFilePermission(dir, "write"); err != nil { - glog.Errorf("Permission denied for %s", dir) + log.Errorf("Permission denied for %s", dir) return err } diff --git a/weed/sftpd/sftp_service.go b/weed/sftpd/sftp_service.go index 76cba305c..580c09a61 100644 --- a/weed/sftpd/sftp_service.go +++ b/weed/sftpd/sftp_service.go @@ -5,19 +5,18 @@ import ( "context" "fmt" "io" - "log" "net" "os" "path/filepath" "time" "github.com/pkg/sftp" - "github.com/seaweedfs/seaweedfs/weed/glog" "github.com/seaweedfs/seaweedfs/weed/pb" filer_pb "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb" "github.com/seaweedfs/seaweedfs/weed/sftpd/auth" "github.com/seaweedfs/seaweedfs/weed/sftpd/user" "github.com/seaweedfs/seaweedfs/weed/util" + "github.com/seaweedfs/seaweedfs/weed/util/log" "golang.org/x/crypto/ssh" "google.golang.org/grpc" ) @@ -60,7 +59,7 @@ func NewSFTPService(options *SFTPServiceOptions) *SFTPService { // Initialize user store userStore, err := user.NewFileStore(options.UserStoreFile) if err != nil { - glog.Fatalf("Failed to initialize user store: %v", err) + log.Fatalf("Failed to initialize user store: %v", err) } service.userStore = userStore @@ -166,7 +165,7 @@ func (s *SFTPService) Serve(listener net.Listener) error { return fmt.Errorf("failed to create SSH config: %v", err) } - glog.V(0).Infof("Starting Seaweed SFTP service on %s", listener.Addr().String()) + log.V(3).Infof("Starting Seaweed SFTP service on %s", listener.Addr().String()) for { conn, err := listener.Accept() @@ -247,7 +246,7 @@ func (s *SFTPService) addHostKey(config *ssh.ServerConfig, keyPath string) error return fmt.Errorf("failed to parse host key %s: %v", keyPath, err) } config.AddHostKey(signer) - glog.V(0).Infof("Added host key %s (%s)", keyPath, signer.PublicKey().Type()) + log.V(3).Infof("Added host key %s (%s)", keyPath, signer.PublicKey().Type()) return nil } @@ -259,7 +258,7 @@ func (s *SFTPService) handleSSHConnection(conn net.Conn, config *ssh.ServerConfi // Perform SSH handshake sshConn, chans, reqs, err := ssh.NewServerConn(conn, config) if err != nil { - glog.Errorf("Failed to handshake: %v", err) + log.Errorf("Failed to handshake: %v", err) conn.Close() return } @@ -275,13 +274,13 @@ func (s *SFTPService) handleSSHConnection(conn net.Conn, config *ssh.ServerConfi go s.monitorConnection(ctx, sshConn) username := sshConn.Permissions.Extensions["username"] - glog.V(0).Infof("New SSH connection from %s (%s) as user %s", + log.V(3).Infof("New SSH connection from %s (%s) as user %s", sshConn.RemoteAddr(), sshConn.ClientVersion(), username) // Get user from store sftpUser, err := s.authManager.GetUser(username) if err != nil { - glog.Errorf("Failed to retrieve user %s: %v", username, err) + log.Errorf("Failed to retrieve user %s: %v", username, err) sshConn.Close() return } @@ -297,7 +296,7 @@ func (s *SFTPService) handleSSHConnection(conn net.Conn, config *ssh.ServerConfi // Ensure home directory exists with proper permissions if err := s.homeManager.EnsureHomeDirectory(sftpUser); err != nil { - glog.Errorf("Failed to ensure home directory for user %s: %v", username, err) + log.Errorf("Failed to ensure home directory for user %s: %v", username, err) // We don't close the connection here, as the user might still be able to access other directories } @@ -328,11 +327,11 @@ func (s *SFTPService) monitorConnection(ctx context.Context, sshConn *ssh.Server _, _, err := sshConn.SendRequest("keepalive@openssh.com", true, nil) if err != nil { missedCount++ - glog.V(0).Infof("Keep-alive missed for %s: %v (%d/%d)", + log.V(3).Infof("Keep-alive missed for %s: %v (%d/%d)", sshConn.RemoteAddr(), err, missedCount, s.options.ClientAliveCountMax) if missedCount >= s.options.ClientAliveCountMax { - glog.Warningf("Closing unresponsive connection from %s", sshConn.RemoteAddr()) + log.Warningf("Closing unresponsive connection from %s", sshConn.RemoteAddr()) sshConn.Close() return } @@ -352,7 +351,7 @@ func (s *SFTPService) handleChannel(newChannel ssh.NewChannel, fs *SftpServer) { channel, requests, err := newChannel.Accept() if err != nil { - glog.Errorf("Could not accept channel: %v", err) + log.Errorf("Could not accept channel: %v", err) return } @@ -387,8 +386,8 @@ func (s *SFTPService) handleSFTP(channel ssh.Channel, fs *SftpServer) { if err := server.Serve(); err == io.EOF { server.Close() - glog.V(0).Info("SFTP client exited session.") + log.V(3).Info("SFTP client exited session.") } else if err != nil { - glog.Errorf("SFTP server finished with error: %v", err) + log.Errorf("SFTP server finished with error: %v", err) } } diff --git a/weed/sftpd/user/homemanager.go b/weed/sftpd/user/homemanager.go index c9051939c..b694e8f85 100644 --- a/weed/sftpd/user/homemanager.go +++ b/weed/sftpd/user/homemanager.go @@ -8,7 +8,7 @@ import ( "strings" "time" - "github.com/seaweedfs/seaweedfs/weed/glog" + "github.com/seaweedfs/seaweedfs/weed/util/log" filer_pb "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb" "github.com/seaweedfs/seaweedfs/weed/util" ) @@ -38,7 +38,7 @@ func (hm *HomeManager) EnsureHomeDirectory(user *User) error { return fmt.Errorf("user has no home directory configured") } - glog.V(0).Infof("Ensuring home directory exists for user %s: %s", user.Username, user.HomeDir) + log.V(3).Infof("Ensuring home directory exists for user %s: %s", user.Username, user.HomeDir) // Check if home directory exists and create it if needed err := hm.createDirectoryIfNotExists(user.HomeDir, user) @@ -54,7 +54,7 @@ func (hm *HomeManager) EnsureHomeDirectory(user *User) error { // Only add permissions if not already present if _, exists := user.Permissions[user.HomeDir]; !exists { user.Permissions[user.HomeDir] = []string{"all"} - glog.V(0).Infof("Added full permissions for user %s to home directory %s", + log.V(3).Infof("Added full permissions for user %s to home directory %s", user.Username, user.HomeDir) } @@ -102,7 +102,7 @@ func (hm *HomeManager) createSingleDirectory(dirPath string, user *User) error { if err != nil || resp.Entry == nil { // Directory doesn't exist, create it - glog.V(0).Infof("Creating directory %s for user %s", dirPath, user.Username) + log.V(3).Infof("Creating directory %s for user %s", dirPath, user.Username) err = filer_pb.Mkdir(hm, string(dir), name, func(entry *filer_pb.Entry) { // Set appropriate permissions @@ -133,7 +133,7 @@ func (hm *HomeManager) createSingleDirectory(dirPath string, user *User) error { // Update ownership if needed if resp.Entry.Attributes.Uid != user.Uid || resp.Entry.Attributes.Gid != user.Gid { - glog.V(0).Infof("Updating ownership of directory %s for user %s", dirPath, user.Username) + log.V(3).Infof("Updating ownership of directory %s for user %s", dirPath, user.Username) entry := resp.Entry entry.Attributes.Uid = user.Uid @@ -145,7 +145,7 @@ func (hm *HomeManager) createSingleDirectory(dirPath string, user *User) error { }) if updateErr != nil { - glog.Warningf("Failed to update directory ownership: %v", updateErr) + log.Warningf("Failed to update directory ownership: %v", updateErr) } } } |
