Commit graph

1010 commits

Author SHA1 Message Date
Dane Everitt
ccecaa6694
Add basic auditing for filesystem actions
Specifically skipping read actions since there isn't much to say there, and it generally wouldn't be very helpful (plus, likely to generate lots of logs).
2021-01-17 11:46:08 -08:00
Charles Morgan
ffeedf17e4 Adds months for schedules
Adds month variable for schedules
2021-01-16 22:07:39 -05:00
Dane Everitt
ff21d83e2d
Add endpoint to get all nodes meeting memory & disk requirements for a server; closes #1012 2021-01-10 13:08:43 -08:00
Dane Everitt
a7fef8b736
Correctly handle backups that fail without an upload_id attached to them 2020-12-27 11:56:28 -08:00
Dane Everitt
952715facc
Fix handling of upload IDs on backups 2020-12-27 11:34:55 -08:00
Matthew Penner
951d92b143 Store S3 upload_id in the database for backups 2020-12-26 11:59:21 -07:00
Dane Everitt
6c39288def
Clarify error messaging for transfers 2020-12-24 10:14:10 -08:00
Dane Everitt
a2548c14ac
Fix logic since this accepts arrays now 2020-12-24 10:12:01 -08:00
Dane Everitt
25e53d9f22
Merge branch 'matthewpi/transfer-improvements' of https://github.com/Pterodactyl/Panel into matthewpi/transfer-improvements 2020-12-24 10:10:41 -08:00
Dane Everitt
2ee08a1a3d
Update logic for server transfer controller 2020-12-24 10:10:40 -08:00
Dane Everitt
6c61577699
Simplify logic in websocket control 2020-12-24 09:20:23 -08:00
Dane Everitt
6fa24d4979
Merge branch 'develop' into matthewpi/transfer-improvements 2020-12-24 09:17:21 -08:00
Dane Everitt
9a57011071
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-12-24 09:15:05 -08:00
Dane Everitt
087c41d5ac
Add endpoint to pull a remote file down 2020-12-24 09:15:03 -08:00
Dane Everitt
2f17e75395
Merge pull request #2879 from pterodactyl/fix/backups-failing-early
Allow changing the prune age for backups
2020-12-24 09:12:59 -08:00
Matthew Penner
d8f75fa0b7 Fix failed transfers locking a server into a unaccessible state 2020-12-17 11:14:58 -07:00
Matthew Penner
fd848985ee Add ServerTransferringException, use is_null 2020-12-17 10:35:54 -07:00
Matthew Penner
8d297a0918 Release reserved allocations upon archive failure 2020-12-17 10:35:54 -07:00
Matthew Penner
01926e2896 Improve logic for logging into the websocket of the target node 2020-12-17 10:35:54 -07:00
Matthew Penner
5c5e2e24f1 📯 tRaNsFeR lOgS 📯 2020-12-17 10:35:54 -07:00
Matthew Penner
e6c4a68e4a Update logic for tracking a server's transfer state 2020-12-17 10:35:54 -07:00
Dane Everitt
5d03c0d2e5
Properly handle loading files with special characters 2020-12-16 21:38:46 -08:00
Matthew Penner
e34d31a58c Allow changing the prune age for backups 2020-12-16 14:15:07 -07:00
Dane Everitt
5bbb36b3cf
Support updating docker image for a server from the frontend 2020-12-13 11:07:29 -08:00
Dane Everitt
638ea2e815
Support creating/updating docker images on eggs 2020-12-13 10:13:32 -08:00
Dane Everitt
78c4ac80bc
Basic implemention of multiple selectable images for an egg
The admin side of this is quite ugly when creating/editing a server, but I'm not putting effort into that right now with React Admin soon™
2020-12-13 09:53:17 -08:00
Dane Everitt
3e65a2d055
Pass one at unfucking the stupid file encoding issues 2020-12-08 21:24:17 -08:00
Matthew Penner
00429c3911 Cleanup remote backup controllers 2020-12-06 15:19:54 -07:00
Matthew Penner
a5cebd6bcf s3 backups: handle CompleteMultipartUpload and AbortMultipartUpload on the panel instead of in wings, add BACKUP_PRESIGNED_URL_LIFESPAN environment variable 2020-12-06 13:53:55 -07:00
Dane Everitt
11054de5b3
Attempt revocation of JWT access when changing a server's owner
closes #2771
2020-12-06 12:16:12 -08:00
Dane Everitt
af360d49dd
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-12-06 12:01:43 -08:00
Dane Everitt
a8d9eccf9c
Support pagination of server backups, closes #2787 2020-12-06 12:01:42 -08:00
Matthew Penner
8611ebb2d6 Add /api/client/servers/{server}/files/chmod endpoint 2020-12-04 09:24:06 -07:00
Dane Everitt
f99ac0ecde
Fix some failing test cases 2020-11-06 22:33:39 -08:00
Dane Everitt
625fd92130
Fix URKL encoding hellscape; closes #2664 closes #2663 2020-11-06 20:47:03 -08:00
Dane Everitt
009f9c297d
Revoke JWT JTIs when modifying a subuser's permissions 2020-11-03 21:01:15 -08:00
Dane Everitt
b482632af4
Remove unnecessary calls to Wings to add/remove mounts 2020-11-02 19:58:14 -08:00
Dane Everitt
964a1436ce
Code cleanup for signed URL generation endpoint 2020-11-01 14:46:01 -08:00
Matthew Penner
6af848ccea Tweaks to BackupRemoteUploadController.php 2020-11-01 15:27:43 -07:00
Matthew Penner
63ac81586d Tweaks to BackupRemoteUploadController.php 2020-11-01 15:27:43 -07:00
Matthew Penner
85af073438 Switch to s3 multipart uploads for backups 2020-11-01 15:27:43 -07:00
Dane Everitt
23d2352a9b
Don't ever return per_page as a string here... 2020-11-01 14:27:14 -08:00
Dane Everitt
d493685518
Add test coverage for allocation assignment endpoint 2020-10-31 21:57:27 -07:00
Dane Everitt
b2be067f38
Support deleting an allocation for a server 2020-10-31 21:22:44 -07:00
Dane Everitt
c6bd7ff661
Improve logic handle auto-allocation of ports for a server 2020-10-31 14:58:15 -07:00
Dane Everitt
665a4dd8a4
Merge branch 'develop' into develop 2020-10-31 13:47:12 -07:00
Dane Everitt
ff64220741
Avoid N+1 location query for servers 2020-10-31 11:28:31 -07:00
Dane Everitt
c00e5b36a5
Return all servers for a node as a paginated response
Avoids crashing the PHP process and avoids a bad runaway N+1 query issue that previously existed.
2020-10-31 11:14:28 -07:00
Dane Everitt
092c942764
Fix server owner filtering; improve searching for servers; closes #2581 2020-10-25 17:29:57 -07:00
Dane Everitt
65d04d0c05
Correctly handle schedule task deletion and avoid errors; closes #2534 2020-10-22 20:54:58 -07:00
Dane Everitt
c370e08f65
[security] add login throttling to the 2FA verification endpoint 2020-10-17 14:46:10 -07:00
Matthew Penner
66b9169458 Cleanup code in MountController.php, again. 2020-10-17 14:42:08 -06:00
Matthew Penner
050075b835 Cleanup code in MountController.php 2020-10-17 14:37:35 -06:00
Matthew Penner
f7520b721b Deny /etc/pterodactyl as a source path for mounts 2020-10-17 14:29:29 -06:00
Matthew Penner
c52c5d6736 Deny certain paths for mounts 2020-10-17 14:28:02 -06:00
Dane Everitt
f30dab053b
Support much better server querying from frontend
Search all servers if making a query as an admin, allow searching by a more complex set of data, fix unfocus on search field when loading indicator was rendered
2020-10-15 21:21:38 -07:00
Dane Everitt
c1ee0ac4f8
Add support for executing a scheduled task right now 2020-10-14 20:38:59 -07:00
Caleb
ea778e9345
Merge branch 'develop' into develop 2020-10-13 15:35:38 -04:00
Matthew Penner
3ef3c2a461 Remove commented code 2020-10-12 11:12:23 -06:00
Matthew Penner
abd60ee6f8 Fix 500 error when mounting a mount and fix the actual mount being deleted instead of the relation 2020-10-12 11:11:40 -06:00
Dane Everitt
8697185900
Fix up database creation and handling code for servers; ref #2447 2020-10-11 11:59:46 -07:00
Dane Everitt
7b0f998f0b
Return the correct server & subuser counts for user listing; closes #2469 2020-10-10 18:06:42 -07:00
Dane Everitt
1f28fb94e2
Ensure the UUID is set correctly; closes #2450 2020-10-10 17:11:27 -07:00
Dane Everitt
d8228f2da8
Allow passing empty values through for variables, covers with test, closes #2433 2020-10-10 16:45:24 -07:00
Dane Everitt
2560163655
Modify how deletion service works (actually fixes #2085); cover changes with test 2020-10-08 21:08:55 -07:00
Dane Everitt
83efb2d7b6
More fixes for broken unit tests 2020-10-05 21:54:29 -07:00
Dane Everitt
0c2bd416ee
Fix unit tests for eggs 2020-10-05 21:29:35 -07:00
Dane Everitt
2d01c7b988
Reset is_processing state of a schedule when toggling active/inactive; closes #2425 2020-10-03 19:47:52 -07:00
Dane Everitt
2d56cacbab
Don't trigger a 500 error with bad data; closes #2442
This whole chunk of code needs some cleanup but I'll defer that for the new admin area in the future
2020-10-03 19:05:04 -07:00
Dane Everitt
4ff5de7e1b
decode before encoding URLs, closes #2440 2020-10-03 12:51:41 -07:00
Dane Everitt
99c9682f67
Fix errors with mounts; closes #2374 2020-10-03 12:42:27 -07:00
Caleb
4770af453b Removed loggin and reverted changes to webpack 2020-09-29 14:42:02 -04:00
Caleb
fb33824e10 Added admin controls.
Removed the note in the server settings that stated that the allocations feature is currently not implemented.

Properly check to make sure that there are allocations available in range before trying to create it.
2020-09-29 12:00:59 -04:00
Caleb
d80660f047 Added admin configuration
This is not working just yet but the fields have been added to the admin control area.
2020-09-28 16:14:14 -04:00
Caleb
8f8bd0be83 Added Automatic Allocations
Known issues:
- Port range to auto create is hard coded
- React interface is still a WIP.
2020-09-28 11:50:34 -04:00
Dane Everitt
3340ee7fd8
Fix bad encoding when handling files; closes #2399 2020-09-24 20:27:02 -07:00
Dane Everitt
2182a15494
Don't return variables to users that they should not be able to see; closes #2388 2020-09-22 21:12:00 -07:00
Dane Everitt
7f9b21e486
Correctly show number of servers a user belongs to; closes #2375 2020-09-22 20:13:54 -07:00
Dane Everitt
79f616f791
Fix authentication lockout when doing multiple SFTP uploads; closes #2221 2020-09-13 13:54:41 -07:00
Dane Everitt
7b57d65edf
Cleanup allocation repository 2020-09-13 12:47:05 -07:00
Dane Everitt
8b4bd3945d
Fix user search in admin area; closes #2100 2020-09-13 12:35:48 -07:00
Dane Everitt
88300e5448
Support searching servers in admin area using name; closes #2100 2020-09-13 12:26:15 -07:00
Dane Everitt
d8c338df3e
Update all remaining code pathways to use new search tooling 2020-09-13 12:21:44 -07:00
Dane Everitt
f31dd4706c
Fix location controller searches 2020-09-13 11:59:52 -07:00
Dane Everitt
a66623d8e1
Fix user search via the API; ref #2100 2020-09-13 11:55:39 -07:00
Dane Everitt
3c7ffaaadb
Remove all references of packs from the Panel 2020-09-13 11:13:37 -07:00
Dane Everitt
9a21584c42
Cleanup mount code; automatically include the mount in the configuration 2020-09-13 09:59:54 -07:00
Dane Everitt
981edb0d64
Require specific permission for reading the actual contents of a file; ref #2288 2020-08-31 19:36:30 -07:00
Dane Everitt
1967e3f7fd
Better backup storage 2020-08-27 19:59:01 -07:00
Dane Everitt
4b919cabd2
Correctly validation API calls to mark a backup as completed
Also block modifying a backup that is already marked as completed via the endpoint
2020-08-27 19:35:22 -07:00
Dane Everitt
179885b546
Add endpoint to return startup variables; send back modified startup when a variable is edited 2020-08-25 19:22:17 -07:00
Dane Everitt
d58fd72bf5
Correctly pass along startup variables for a server; closes #2255 2020-08-25 19:11:25 -07:00
Dane Everitt
1e58e108ba
Update last location using wrong column name 2020-08-23 20:23:42 -07:00
Dane Everitt
5173f1f7e8
Don't allow editing read only values; closes #2252 2020-08-23 14:56:05 -07:00
Dane Everitt
54f9c5f187
Merge branch 'develop' into feature/file-uploads 2020-08-22 18:33:09 -07:00
Dane Everitt
91cdbd6c2e
Support modifying startup variables for servers 2020-08-22 18:13:59 -07:00
Dane Everitt
e3178ba6f0
backend: support is_successful state for backups rather than deleting it when failing
This allows the UI to correctly show failed backups to the user and require them to manually delete those backups, rather than them mysteriously disappearing.

We can also hook into this later to send a notification to the user when the backup fails.
2020-08-20 21:07:53 -07:00
Dane Everitt
61e9771333
Code cleanup for subuser API endpoints; closes #2247 2020-08-19 20:21:12 -07:00
Dane Everitt
f0ac0725b6
[Security] Don't return all servers on the system when not a root admin and admin level servers are requested
Cleaned up the API endpoint by simplifying the logic and adds test case to cover this bug.

If you ever need to list _all_ of the servers on the system you should be using the application API endpoint for the servers most likely.
2020-07-26 10:43:46 -07:00
Dane Everitt
d644758986
Always return the status code from the daemon if possible 2020-07-18 10:23:28 -07:00
Dane Everitt
1a6669aa5c
Add endpoint support for decompressing files 2020-07-14 21:16:49 -07:00
Dane Everitt
78c76d6df4
Ensure errors from daemon are wrapped correctly 2020-07-14 21:16:38 -07:00
Matthew Penner
1d2acbd5b4 Get basic file upload functionality working 2020-07-12 16:42:32 -06:00
Dane Everitt
0d35ab95fd
Merge pull request #1915 from pterodactyl/feature/server-mounts
Add configurable server mounts
2020-07-11 17:19:25 -07:00
Dane Everitt
2653321fc2
Support renaming multiple files at once 2020-07-11 16:00:30 -07:00
Dane Everitt
93cab68cc3
Handle mass actions for file deletion 2020-07-11 15:37:59 -07:00
Dane Everitt
82bc9e617b
Add support for compressing items in the file manager 2020-07-11 13:38:49 -07:00
Matthew Penner
295f09ca43
Merge branch 'develop' into feature/server-mounts 2020-07-11 12:29:30 -06:00
Dane Everitt
fdec3cea80
Fix nested directories being created incorrectly 2020-07-10 22:10:41 -07:00
Dane Everitt
2278927fb6
Update allocations to support ids; protect endpoints; support notes 2020-07-09 20:36:08 -07:00
Dane Everitt
fc9054312d
Support modifying the primary allocation for a server 2020-07-09 19:56:46 -07:00
Dane Everitt
bfb28f949d
[Breaking] Return server allocations automatically as a relation object 2020-07-09 19:17:24 -07:00
Dane Everitt
d3c749ac56
Code cleanup & fix frontend searching servers; closes #2100 2020-07-06 21:25:00 -07:00
Dane Everitt
f0e18ba6f7
Code cleanup 2020-07-06 20:05:42 -07:00
Matthew Penner
29876e023b
Merge branch 'develop' into feature/server-mounts 2020-07-04 15:20:01 -06:00
Dane Everitt
7b75e7a648
Support using recovery tokens during the login process to bypass 2fa; closes #479 2020-07-02 23:01:02 -07:00
Dane Everitt
a998b463e3
Generate recovery tokens when enabling 2FA on an account 2020-07-02 21:55:25 -07:00
Dane Everitt
28c5729e48
Add test coverage for creating tasks 2020-06-28 14:41:22 -07:00
Dane Everitt
b9a451b528
Add test coverage for schedules 2020-06-28 13:50:07 -07:00
Dane Everitt
63bc4080d5
Add test coverage for reinstall & server renaming 2020-06-28 10:40:41 -07:00
Dane Everitt
4cb4dfecc8
Add test coverage for generating JWTs to connect to websocket 2020-06-28 10:16:15 -07:00
Dane Everitt
4cb95d8063
Add test coverage for 2fa 2020-06-27 11:06:35 -07:00
Dane Everitt
a81f6882f7
Add test coverage for API key generation and deletion 2020-06-25 22:36:58 -07:00
Dane Everitt
7a5f7b99a7
Add integration test covering account endpoint 2020-06-25 22:12:09 -07:00
Dane Everitt
8fb21a5048
Fix error while updating user 2020-06-25 21:42:21 -07:00
Dane Everitt
4a0627d182
Don't trigger a 500 error due to unchecked data being inserted; closes #2087
This also clears up allowed values for the disk input and normalizes the messaging between edit and create screens.
2020-06-23 20:24:09 -07:00
Dane Everitt
b78aa180ea
Prevent creating a new database via the application API if server is at its limit; closes #2129 2020-06-23 20:07:37 -07:00
Dane Everitt
693b9eab0c
Fix handling of backup tasks; closes #2067 2020-06-18 21:00:04 -07:00
Matthew Penner
0bec5b8581 Merge branch 'develop' into feature/server-mounts 2020-06-06 11:41:18 -06:00
Matthew Penner
f255399171 Fix StyleCI issues 2020-05-21 15:16:16 -06:00
Matthew Penner
65393914c3 Send mounts when wings fetches server information, fix issue with mount fields not being updated 2020-05-21 15:14:09 -06:00
Matthew Penner
e601b35f2f Fix even more StyleCI issues 2020-05-21 14:27:23 -06:00
Matthew Penner
0eb29dac9c Add mount_server table, fix wrong field type on other many to many tables, add routes for mounting and unmounting mounts on a server, finish server admin mounts page 2020-05-21 14:23:12 -06:00
Matthew Penner
a0900b8b94 Fix StyleCI issues 2020-05-21 13:22:32 -06:00
Matthew Penner
fa902cc074 Add mounts page to server admin view 2020-05-21 13:19:59 -06:00
Matthew Penner
34f718a8b1 Finish mount admin view page, add unique index to migration 2020-05-20 20:50:56 -06:00
Matthew Penner
0db7debb46 Add mount update and deletion services, add MountController@update and MountController@delete 2020-05-20 19:35:30 -06:00
Matthew Penner
77150b2551 Add increment id to mount, add basic mount view page 2020-05-20 19:17:35 -06:00
Matthew Penner
976b669059 Make StyleCI happy 2020-05-20 18:57:30 -06:00
Matthew Penner
a4af8ec977 Add the ability to create mounts 2020-05-20 18:55:59 -06:00
Matthew Penner
a750362e5a Move MountController.php 2020-05-20 18:45:00 -06:00
Matthew Penner
00d1b5861a Properly setup Mount model, add database migration, get mount admin page added 2020-05-20 18:07:56 -06:00
Matthew Penner
59a150148a feature/server-mounts initial commit 2020-05-20 17:29:03 -06:00
Charles Morgan
4ab32498d4
Save request to DB
Fixes #2047
2020-05-19 04:14:36 -04:00
Dane Everitt
225ef2917a
Support downloading and deleting S3 backups 2020-05-09 19:43:58 -07:00
Dane Everitt
f1c3762f4d
Add base support for definining the number of backups that can be created for a server 2020-04-26 12:12:29 -07:00
Dane Everitt
9eb31a16d9
Fix 2FA handling; closes #1962 2020-04-25 13:01:16 -07:00
Dane Everitt
2cf1c7f712
Fix handling of SFTP authorization; closes #1972 2020-04-25 11:48:49 -07:00
Dane Everitt
973591d86e
Add basic support for backups via the scheduled tasks system 2020-04-19 19:43:41 -07:00
Dane Everitt
a1c3730861
Update frontend to only allow selection of valid permissions for subusers 2020-04-19 11:58:26 -07:00