Skip to content

SFTP log noise #278

@jonasbardino

Description

@jonasbardino

We see regular exception tracebacks from various harmless client-side and network connection drops in sftp-subsys.log on Rocky 9:

2025-07-03 12:33:18,843 ERROR Exception in subsystem handler for "sftp": 
2025-07-03 12:33:18,844 ERROR Traceback (most recent call last):
2025-07-03 12:33:18,844 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/server.py", line 683, in _run
2025-07-03 12:33:18,844 ERROR     self.start_subsystem(self.__name, self.__transport, self.__channel)
2025-07-03 12:33:18,844 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp_server.py", line 142, in start_subsystem
2025-07-03 12:33:18,844 ERROR     self._send_server_version()
2025-07-03 12:33:18,844 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp.py", line 145, in _send_server_version
2025-07-03 12:33:18,844 ERROR     t, data = self._read_packet()
2025-07-03 12:33:18,845 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp.py", line 201, in _read_packet
2025-07-03 12:33:18,845 ERROR     x = self._read_all(4)
2025-07-03 12:33:18,845 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp.py", line 188, in _read_all
2025-07-03 12:33:18,845 ERROR     raise EOFError()
2025-07-03 12:33:18,845 ERROR EOFError

and

2025-07-17 11:11:17,121 ERROR Exception in subsystem handler for "sftp": Garbage packet received
2025-07-17 11:11:17,123 ERROR Traceback (most recent call last):
2025-07-17 11:11:17,123 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/server.py", line 685, in _run
2025-07-17 11:11:17,123 ERROR     self.start_subsystem(self.__name, self.__transport, self.__channel)
2025-07-17 11:11:17,123 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp_server.py", line 139, in start_subsystem
2025-07-17 11:11:17,123 ERROR     self._send_server_version()
2025-07-17 11:11:17,123 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp.py", line 156, in _send_server_version
2025-07-17 11:11:17,123 ERROR     t, data = self._read_packet()
2025-07-17 11:11:17,123 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp.py", line 216, in _read_packet
2025-07-17 11:11:17,123 ERROR     raise SFTPError("Garbage packet received")

and some from our own checks on client failure:

2025-06-30 18:51:02,347 ERROR Exception in subsystem handler for "sftp": reject client based on failed session checks
2025-06-30 18:51:02,348 ERROR Traceback (most recent call last):
2025-06-30 18:51:02,348 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/server.py", line 683, in _run
2025-06-30 18:51:02,348 ERROR     self.start_subsystem(self.__name, self.__transport, self.__channel)
2025-06-30 18:51:02,348 ERROR   File "/usr/lib/python3.9/site-packages/paramiko/sftp_server.py", line 143, in start_subsystem
2025-06-30 18:51:02,348 ERROR     self.server.session_started()
2025-06-30 18:51:02,348 ERROR   File "/home/mig/mig/server/grid_sftp.py", line 583, in session_started
2025-06-30 18:51:02,348 ERROR     raise Exception("reject client based on failed session checks")
2025-06-30 18:51:02,348 ERROR Exception: reject client based on failed session checks

They can safely be ignored, as I think we also used to do with patching in older paramiko versions.

It's probably a matter of wrapping one or more sftp methods or parts in try/except and only logging them as warning.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requesthelp wantedExtra attention is needed

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions