RainSFTP is an implementaion of the Secure File Transfer Protocol backed by LDAP for authentication and an S3-compatible object store. This makes RainSFTP a powerful tool for managing cloud-based storage solutions where compatibility with SFTP clients is necessary.
Superficially, RainSFTP is similar to other object store-backed SFTP servers, but is designed to be as simple as possible and to only implement what is necessary to get users going. It targets audiences where many SFTP servers need to be set up and torn down quickly in an enterprise environment where central authentication, central logging, audit trails, and other features are necessary.
- Compatible with most S3-compatible object stores, using the Minio Go client library
- Supports LDAP-based authentication and simple role-based access control
- Follows 12factor design for easy deployment in cloud environments
- Generates logs in Elastic Common Schema for easy processing
- Logs requests and responses, along with client IP addresses, to support a high quality audit trail
RainSFTP is released under the MIT license. See LICENSE.md.
RainSFTP is a product of the cloud. Rain is a product of clouds. Not super creative but it works.
- Files can be opened for reading or writing but not both due to difficulty finding an SFTP client that does this to test against
SETSTAT
is not supported as it is not particularly relevant or supported by S3-compatible environmentsRENAME
is not supported currently as there is no rename operation in S3-compatible object stores, and instead a copy and delete operation will need to be implementedLINK
,SYMLINK
andREADLINK
are not supported as S3-compatible object stores do not have a concept of links
- Removing a non-empty directory will result in success even though the directory contents are not removed