Nicola Murino
266216e372
Add sample cli client for REST API
...
It isn't written in Go to show interoperability with other programming languages
2019-08-02 00:00:48 +02:00
Nicola Murino
8d4964c16d
convert public key from newline delimited string to a real array
...
Added a compatibility layer that will convert newline delimited keys to array
when the user is fetched from the database.
This code will be removed in future versions please update your public keys,
you only need to resave the users using the REST API.
2019-08-01 22:42:46 +02:00
Nicola Murino
788e068e13
Improve documentation
2019-08-01 15:39:30 +02:00
Jo Vandeginste
bd7b6a785e
Support multiple private (host) keys
...
With this patch, one can configure one or more private (host) keys in
the configuration file.
I made it a nested struct, so we can add more options later. Eg. host
certificates might be a useful addition if I can figure out how this is
done in golang's crypto/ssh...
Signed-off-by: Jo Vandeginste <Jo.Vandeginste@kuleuven.be>
2019-08-01 14:57:15 +02:00
Nicola Murino
1566e43cd7
set track_quota to 2 as default
2019-08-01 09:24:35 +02:00
Jo Vandeginste
170e3113e1
When path starts with slash, consider it absolute
...
When SQLite path starts with a `/`, we consider this to be an absolute path.
Eg.:
```json
{
"data_provider":{
"name":"/var/lib/sftpgo/sftpgo.db"
}
}
```
2019-07-31 17:14:46 +02:00
Nicola Murino
a7a3d533e7
Add documentation and tests for multiple public keys support
2019-07-31 17:06:12 +02:00
Jo Vandeginste
c752dd8e81
Support multiple public keys
...
This will parse the public key field as a newline delimited list of public keys.
Return (valid) result on first match.
2019-07-31 15:47:51 +02:00
Jo Vandeginste
99e89f59c9
Add missing newline, add code highlighting hint
2019-07-31 14:49:21 +02:00
Nicola Murino
34543fd861
simplify test case for quota checking after file replace
2019-07-31 14:21:56 +02:00
Nicola Murino
89986b9305
add new test cases
2019-07-31 14:11:44 +02:00
Nicola Murino
2a8ab620f3
improve logger
...
log file size, rotation policy and compression are now configurable
2019-07-31 14:06:55 +02:00
Nicola Murino
fab21dcf51
Print initialization errors to standard output
...
This way debugging configuration and initialization issues is simpler
2019-07-31 08:14:31 +02:00
Nicola Murino
8058178ea0
Improve documentation
2019-07-30 20:51:29 +02:00
Nicola Murino
8dbcac15f3
fix default config
2019-07-29 09:31:41 +02:00
Nicola Murino
eb79c4effa
add license badge
2019-07-29 09:26:36 +02:00
Nicola Murino
7dd03ee24e
document bcrypt support
2019-07-29 09:20:33 +02:00
Nicola Murino
2456d5c3bf
document the new banner configuration
...
use SFTPGo as default banner and ensure that the banner is not empty
2019-07-29 08:53:22 +02:00
Philip Hofstetter
be9a1fb7c4
add bcrypt support
2019-07-29 08:11:21 +02:00
Philip Hofstetter
88a288ccfe
make the server banner configurable
2019-07-29 08:07:59 +02:00
Nicola Murino
645c4b4fa2
fix MySQL provider initialization
...
this not caused any issue since the queries are basically the same
2019-07-28 23:47:57 +02:00
Nicola Murino
0bed768909
allow quota tracking only for users with quota restrictions
...
Setting "track_quota" to 2 in sftpgo.conf will avoid a database update
after each file upload/deletion if the user has no quota restrictions
2019-07-28 22:04:50 +02:00
Nicola Murino
9987821003
rename last_quota_scan to last_quota_update
...
Existing databases must be updated using the script 20190728.sql
2019-07-28 19:29:32 +02:00
Nicola Murino
88fedd577d
sftpd handler: remove eccessive logging and prepare the code to support upload resume
...
Upload resume is currently disabled for this upstream bug:
https://github.com/pkg/sftp/issues/295
2019-07-28 13:40:12 +02:00
Nicola Murino
c547c5c9ee
quota tracking: fix concurrent updates
...
added a test case to check quota size for upload that replace an existing file
2019-07-28 13:24:46 +02:00
Nicola Murino
b728a06984
travis: add osx
2019-07-27 22:45:11 +02:00
Nicola Murino
e177366be9
windows: fix test cases
2019-07-27 21:19:30 +02:00
Nicola Murino
c9e6fa0dd6
api_utils: set a timeout for http requests
...
These methods are used for test cases only, anyway a timeout is not bad :)
2019-07-27 20:42:45 +02:00
Nicola Murino
4a46b84dd5
Improve http action notification
...
Send the notification using a goroutine and set the request timeout to 15 seconds
2019-07-27 19:29:33 +02:00
Nicola Murino
c4fbca9ea2
HTTP server is now optional
...
Setting bind_port to 0 the HTTP server will not be started
2019-07-27 14:11:14 +02:00
Nicola Murino
25f7043fb3
sftpd transfer: close the file before executing any action ...
...
... that could potentially move or delete it
2019-07-27 11:17:32 +02:00
Nicola Murino
6a6e31cceb
clarify notifications on folder deletion
2019-07-27 09:52:57 +02:00
Nicola Murino
48451a9924
add support for custom actions
...
Configurable custom commands and/or HTTP notifications on SFTP upload, download, delete or rename
2019-07-27 09:38:09 +02:00
jungle-boogie
70ae68a7c4
with -> will
...
and other small changes
2019-07-27 05:19:32 +02:00
Nicola Murino
aaa4c22911
sftpd: test case for SetStat
...
SetStat is silently ignored. Ownership and permissions are configured globally
or per account
2019-07-26 17:18:51 +02:00
Tim Sedlmeyer
eb18e30a65
Fix some spelling errors
2019-07-26 16:20:40 +02:00
Nicola Murino
5d3a93baae
sftpd: improve test cases
2019-07-26 16:15:42 +02:00
Nicola Murino
9f61415832
add more test cases
2019-07-26 15:08:08 +02:00
Nicola Murino
ff8fb80e3c
fix check for used quota
...
remove unused data provider from sftpd configuration struct
2019-07-26 13:07:08 +02:00
Nicola Murino
1348862e52
add code coverage badge
2019-07-26 11:56:01 +02:00
Nicola Murino
7360b0f73c
test cases: wait 100 milliseconds before recheck if the test server is up
...
this avoid a lot of useless warnings in travis logs
2019-07-26 11:41:58 +02:00
Nicola Murino
417b173c78
Improve test cases and logging
2019-07-26 11:35:12 +02:00
drakkan
e0a550b216
Merge pull request #2 from Surye/Surye-patch-1
...
Fix typo in ActiveQuotaScan json annotations
2019-07-26 11:01:57 +02:00
Vincent Castellano
69e941483a
Fix typo in ActiveQuotaScan json annotations
2019-07-25 21:55:26 -07:00
Nicola Murino
5f41b6d506
remove codecov for now
...
test cases run against a real server and not a mock server so the coverage is not detected
2019-07-21 13:17:09 +02:00
Nicola Murino
5c861a7c46
sftpd config: MaxAuthTries is now configurable
2019-07-21 12:02:24 +02:00
Nicola Murino
6053a0617f
README: add Build Status and Go Report Card links
2019-07-21 11:45:11 +02:00
Nicola Murino
78420a4a96
add travis integration
2019-07-21 11:08:57 +02:00
Nicola Murino
14f919df47
simplify some code
2019-07-21 00:19:17 +02:00
Nicola Murino
fea9ae1de2
fix another misspell
2019-07-20 21:20:16 +02:00