Skip to content

SFTP Server (SSH File Transfer Protocol) in Java, based on Apache MINA SSHD

License

Notifications You must be signed in to change notification settings

Gorbush/sftpserver

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sftpserver

SFTP Server (SSH File Transfer Protocol) based on Apache MINA SSHD. Open Source Java project under Apache License v2.0

Current Stable Version is 1.0.1


Config:

${sftp.home}/conf/[id]/sftpd.properties
#
## Global Options
#
# Listen on TCP port 22222
sftpserver.global.port=22222
# Enable compression (requires jzlib) (default: false)
sftpserver.global.compress=true
# Enable dummy shell (default: false)
sftpserver.global.dummyshell=true
#
## Configure user "test"
#
# Password for user
sftpserver.user.test.userpassword=clean-unencripted-password
# Set user home directory (chrooted)
sftpserver.user.test.homedirectory=./home/test/
# Enable user (default: false)
sftpserver.user.test.enableflag=true
# Enable write (default: false)
sftpserver.user.test.writepermission=true
#

Running (Linux)

./bin/sftpd.sh <start|stop|restart|status> [id]

TODOs

  • Encrypted Passwords (SHA1/MD5)
  • Publickey Authenticator

DONEs

  • Use Java SecurityManager/Policy File
  • Non operating system accounts
  • Homes are chrooted
  • ReadOnly accounts

MISC

Current harcoded values:

  • Hostkeys are writed to: hostkey.pem or hostkey.set in ${sftp.home}/keys/ directory
  • SecurityManager/Policy File is in lib/sftpd.policy
  • Only SHA1 (160bits) are enabled for HMAC (MD5, MD5-96, SHA1-96 are disabled)

Maven Dependencies:

Apache MINA SSHD

  • mina-core-XXX.jar
  • sshd-core-XXX.jar

Log4J (logging)

  • log4j-XXX.jar

SLF4J (logging)

  • slf4j-api-XXX.jar
  • slf4j-log4j12-XXX.jar

Bouncy Castle (encryption)

  • bcprov-jdkXXX.jar

JZlib (for compression)

  • jzlib-XXX.jar

Inspired in mina-sshd and openssh.

About

SFTP Server (SSH File Transfer Protocol) in Java, based on Apache MINA SSHD

Resources

License

Stars

Watchers

Forks

Packages

No packages published