Commit Graph

436 Commits

Author SHA1 Message Date
Dane Everitt b774622faa
Add base support for AWS/Wings backup adapters 2020-04-26 16:07:36 -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 72ecac5236
Merge pull request #1963 from Sir3lit/maxconn
Add Max Concurrent Connections for database users
2020-04-25 11:01:01 -07:00
Dane Everitt 0385d2a05c
Merge pull request #1939 from Sir3lit/optionaldesc
Allow description fields to be optional
2020-04-23 20:37:02 -07:00
Charles Morgan e3303f7a60 Change validation rule
Change validation rule to
2020-04-23 14:59:47 -04:00
Charles Morgan 82dd7dc8e3 Allow Null = 0
Allow Value to be nullable, will autofill 0 if value is null or 0, to facilitate "unlimited" connections.
2020-04-23 10:45:44 -04:00
AreYouScared f0e4764a11 Add Max Concurrent Connections for database users
Closes #1849

Allows database users to be limited to a number of concurrent connections to prevent one user from connecting hundreds of time and bottlenecking the MySQL server.
2020-04-22 06:00:04 -04:00
Dane Everitt 00b0d30c60
Fix handling for backups; correctly send along ignored files & directories 2020-04-18 23:26:59 -07:00
AreYouScared 21491e3aaa Allow descrition field to be optional
Allows for Nest, Node, Location and Egg description fields to be blank / nullable.
Removed "required" wording next to them aswell
2020-04-17 20:52:40 -04:00
Dane Everitt e969344f3b
Fix display of navbar links to admins, closes #1920 2020-04-17 10:21:15 -07:00
Dane Everitt 7557dddf49
Store node daemon tokens in an encrypted manner 2020-04-10 15:15:38 -07:00
Jakob Schrettenbrunner a1f4baa800 re-enable auto-deploy daemon endpoint 2020-04-10 17:38:20 +02:00
Matthew Penner 2f506d564b
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 20:56:37 -06:00
Dane Everitt be05d2df81
Add support for generating a signed URL for downloading a file from the daemon 2020-04-04 19:54:59 -07:00
Matthew Penner fd4de9168a
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 16:28:02 -06:00
Matthew Penner 142bf16aae Fix StyleCI issues 2020-04-04 16:24:58 -06:00
Matthew Penner 454ce6ce45 Add successful column to server_transfers table, get server transfers working properly :) 2020-04-04 16:16:18 -06:00
Matthew Penner 6ba6c34252 Add ServerTransfer relation in Models/Server.php, notify the new daemon about the incoming server transfer 2020-04-04 14:10:18 -06:00
Dane Everitt 25b0e86730
backup names don't actually matter all that much, they don't get used as file names 2020-04-04 12:30:29 -07:00
Dane Everitt d27f0c6f2a
Basic backend support to at least store a backup model in the DB 2020-04-04 12:26:39 -07:00
Dane Everitt 6d426e45d9
Whoops, remove this too 2020-04-04 11:57:50 -07:00
Dane Everitt 5f42325284
Don't trigger a recursive nesting call 2020-04-04 11:37:10 -07:00
Dane Everitt 9991989f89
Very basic implemention of frontend logic required to display backups and create a new one 2020-04-04 10:59:25 -07:00
Matthew Penner 86b7b6ecc3 Add Models/ServerTransfer.php 2020-04-04 11:37:44 -06:00
Matthew Penner 5007ce0b1c Get to the point where we can start notifying the other daemon, remove TransferJob.php, add DaemonTransferRepository.php 2020-04-04 00:50:12 -06:00
Dane Everitt 17ec4efd3b
Add base migration and model for server backups 2020-04-03 23:40:20 -07:00
Dane Everitt f51d65229b
Add support for immutable carbon dates in models 2020-04-03 23:22:35 -07:00
Matthew Penner a2eab3ca43 Add ui elements for handling server transfers, add TransferJob.php and TransferService.php 2020-04-03 21:45:37 -06:00
Matthew Penner 49f0421e90 Fix issue with regex rule on 'threads' column, fix StyleCI issues on migration 2020-04-03 18:59:47 -06:00
Matthew Penner 829f05a2c7 Add migration for 'threads' column, fix errors on some admin pages, add validation rule for 'threads' column 2020-04-03 18:50:07 -06:00
Dane Everitt 7d45379f31
Add back support for reinstalling a server 2020-04-03 13:46:45 -07:00
Dane Everitt 171b21e7ee
Add permissions handling to the console; remove kill permission (wrapped in with stop) 2020-03-29 22:12:50 -07:00
Dane Everitt 5717a705a8
Fix authorization checking for subusers 2020-03-28 16:18:56 -07:00
Dane Everitt e4e5dea6b8
Fix API key creation logic 2020-03-28 16:06:36 -07:00
Dane Everitt a6f46d36ba
Implement basic code for creating/updating a subuser 2020-03-27 14:23:13 -07:00
Dane Everitt 51c5cf4dbb
Get basic modal view for editing/creating a new subuser working 2020-03-25 21:58:37 -07:00
Dane Everitt 933a4733e8
Add base support for creating a new API key for an account 2020-03-22 18:15:38 -07:00
Dane Everitt 32f25170f1
Pass at removing extraneous permissions table and using native MySQL JSON 2020-03-22 16:56:00 -07:00
Dane Everitt 23d594f655
Update all of the permissions checking to be constant based 2020-03-22 15:31:25 -07:00
Dane Everitt cf7f36c950
Always include the tasks with a schedule 2020-03-22 13:57:31 -07:00
Dane Everitt ef38a51d6d
Add base support for editing an existing task 2020-03-18 22:28:32 -07:00
Dane Everitt 78ed343a34
Support deleting a task from a schedule 2020-03-18 21:08:32 -07:00
Dane Everitt b3fb658511
Merge branch '0.7-develop' into develop 2020-03-15 17:30:28 -07:00
Dane Everitt 41cbdb8d59
Dont require an IP address for hostnames; closes #1728 2020-03-15 16:29:05 -07:00
Dane Everitt 32e9fb0346
Add basic listing of server schedules 2020-02-08 15:23:08 -08:00
Dane Everitt 3b11ba9fca
Basic support for installation process 2020-01-18 15:26:15 -08:00
Dane Everitt 5f13531c69
Fix up subuser API response for clients 2019-12-28 12:03:19 -08:00
Dane Everitt 51defae917
Merge branch 'master' into develop 2019-12-28 11:49:08 -08:00
Dane Everitt 66ead2f682
Update subuser API output to work correctly 2019-12-28 11:39:44 -08:00
Dane Everitt 63918cb549
Use the correct certificate key in the config 2019-12-24 16:48:50 -08:00
Dane Everitt 979bdc1f9f
Use YAML for configuration file 2019-12-08 11:29:46 -08:00
Dane Everitt c087f6429f
Temporary patch to get user management pages displaying correctly 2019-12-08 11:02:59 -08:00
Dane Everitt 06e5a05f22
Don't cause an endless loop 2019-12-08 10:44:58 -08:00
Dane Everitt 547e8840e2
Untested code to perform an update of server build settings 2019-11-24 15:08:54 -08:00
Dane Everitt c17f9ba8a9
Move server view management parts to new controller and clean up code 2019-11-24 12:50:16 -08:00
Dane Everitt 8f0044575f
Update server creation data logic 2019-11-16 13:33:01 -08:00
Dane Everitt 867dbf3bd2
Update all the client API endpoints to use new permissions codes 2019-11-03 17:13:47 -08:00
Dane Everitt 543884876f
Add basic subuser listing for servers 2019-11-03 12:20:11 -08:00
Dane Everitt c66d2cd123
A few adjustments for chunking the new file edit page 2019-09-28 14:59:05 -07:00
Lance Pioch 513965dac7 Update syntax for styleci (#1700) 2019-09-23 12:30:51 -07:00
Dane Everitt 67ff67a1bd
Add endpoints to return a server's egg configuration 2019-09-22 15:30:53 -07:00
Dane Everitt 54339c1344
Add property information to common models 2019-09-05 21:53:33 -07:00
Dane Everitt 7543ef085d
Format files 2019-09-05 21:32:57 -07:00
Dane Everitt 0d6cf54314
[L6] Update even more areas of codebase using custom model validation logic 2019-09-04 22:26:28 -07:00
Dane Everitt c586157dc4
[L6] Add support for custom model validation logic 2019-09-04 22:19:57 -07:00
Dane Everitt 5b4a65a60c
[L6] Break search functionality without breaking the entire app 2019-09-04 21:21:07 -07:00
Dane Everitt 08bdc9705f
[L6] Update composer dependencies to support L6
Drops all of the eloquence requirements, this is going to break a shit load of code, needs to happen tired of this package always holding us back.

Quite confident in my ability to write custom code to do the basic validation we need.

Searching should be a fun nightmare to deal with later...
2019-09-04 21:00:34 -07:00
Dane Everitt fb9c106448
Update server listing and associated logic to pull from the panel dynamiacally 2019-08-17 16:03:10 -07:00
Dane Everitt 81143e231a
Merge branch 'master' into develop 2019-08-04 13:49:26 -07:00
Dane Everitt 81409947cf
Default to OOM killer being disabled, add back configuration option per-server 2019-08-03 13:41:24 -07:00
Dane Everitt 58796e7441
Fix Server model to use correct relationship when returning subusers, closes #1589 2019-08-03 12:56:32 -07:00
Dane Everitt 5c99cae779
Merge branch 'develop' into feature/vuejs 2019-05-01 20:57:49 -07:00
Isaac A 38cd8f2962
Allow nodes to be created on privileged ports 2019-03-16 21:18:46 -04:00
Dane Everitt a66d7a3417
Merge branch 'develop' into feature/vuejs 2019-03-09 11:19:07 -08:00
Dane Everitt f15449f17b
Fix servers not being marked as install failed 2019-03-03 13:44:28 -08:00
Dane Everitt a4d7985e51
[#1500] Fix allocation limit being required even though it isn't used. 2019-03-02 14:27:01 -08:00
Dane Everitt 5ca13839cf
Merge branch 'develop' into feature/vue-serverview 2018-09-05 21:34:59 -07:00
Dane Everitt 7ed9c7cb93
Correctly store changes to upload size limit, closes #1237 2018-09-03 14:53:58 -07:00
Dane Everitt 0999ec93c3
More logic for deleting databases 2018-08-25 15:07:42 -07:00
Dane Everitt 8db9d9bbee
Very rough go at connecting to socket and rendering console data for server 2018-07-20 23:45:07 -07:00
Dane Everitt 6336e5191f
Strip out JWT usage and use cookies to track the currently logged in user 2018-07-14 22:42:58 -07:00
stanjg 013dde75ae
Renamed the field and made some improvements 2018-05-31 16:34:35 +02:00
Dane Everitt e3bbd85f3f
Merge branch 'develop' into pr/1129 2018-05-26 10:34:29 -07:00
Dane Everitt 00df0b66a6
Merge pull request #1148 from pterodactyl/feature/doc-block-improvements
@throws docblock improvements
2018-05-20 16:25:59 -07:00
Lance Pioch f82b419d47 Update php doc blocks 2018-05-13 12:42:11 -04:00
Lance Pioch e2dc0638d9 Fix app/ spelling errors 2018-05-13 11:12:41 -04:00
stanjg 86c8ecdcdf
Added the actual logic 2018-05-04 15:02:51 +02:00
Lance Pioch ceff5acb85 Public is just the boolean (#1101) 2018-04-08 15:36:40 -05:00
Stan f1a76ec7fd Add description field to nodes (#1065) 2018-03-26 13:57:24 -05:00
Stan 56478d81da Added cast for 'public' field (#1085)
The missing cast was resulting in the API to send a 0 or 1 instead of true or false for the public field
2018-03-26 13:56:58 -05:00
Dane Everitt dfb002fb33
Change config value for daemon 2018-03-08 23:35:36 -06:00
Dane Everitt 5839034e8f
Fix egg copy from, closes #995 2018-03-06 23:07:00 -06:00
Dane Everitt 6d217869e0
Don't load daemon key on server models automatically. 2018-03-03 18:09:49 -06:00
Dane Everitt bcb69603ad
Add support for user management of databases 2018-03-02 19:03:55 -06:00
Dane Everitt 87b96bdfc8
Add core logic to allow for limited databases and allocations 2018-03-01 20:08:27 -06:00
Dane Everitt 4cfb8941d5
Fix broken users table in database causing validation errors. 2018-02-25 16:08:01 -06:00
Dane Everitt bdbed7706d
Set much higher throttle limits by default 2018-02-24 16:00:53 -06:00
Dane Everitt 5c4200dc0c
Make external_id fillable 2018-02-24 14:47:53 -06:00
Dane Everitt 633bba6d6e
Add support for external_id on servers, closes #975 2018-02-24 11:57:12 -06:00
Dane Everitt e7e50bc45d
Add a few new internal configs to the node config 2018-02-18 20:39:43 -06:00
Dane Everitt e9680fc29c
Fix for StyleCI 2018-02-17 16:21:37 -06:00
ShadowKitten d8be167a9c Add support for allowing subusers to access SFTP. (#918) 2018-02-17 16:10:44 -06:00
Dane Everitt d86c35d80f
Prevent duplicate allocations for servers 2018-02-17 13:53:38 -06:00
Dane Everitt 241f7d0125
Fix some data integrity issues 2018-02-17 13:37:53 -06:00
Dane Everitt bf537922a3
Fix username validation and auto-generation, closes #927 2018-02-11 16:39:50 -06:00
Dane Everitt a9c1946319
Add support for finding a user by external ID. 2018-02-07 21:56:11 -06:00
Dane Everitt 7a19019980
Fix suspension/installed handling for servers
closes Pterodactyl/Panel#891
2018-01-30 22:40:21 -06:00
Dane Everitt 5ed164e13e
Implement server creation though the API.
Also implements auto-deployment to specific locations and ports.
2018-01-28 17:14:14 -06:00
Dane Everitt 2bd691efad
Add database list endpoint, add more resource name magic 2018-01-25 21:26:06 -06:00
Dane Everitt 17f6f3eeb6
Add server details modification endpoint to API. 2018-01-20 16:03:23 -06:00
Dane Everitt a497a3d153
Make server listing and single server view API endpoints work 2018-01-19 21:47:06 -06:00
Dane Everitt f9fc3f4370
Update interface to begin change to seperate account API keys and application keys
Main difference is permissions, cleaner UI for normal users, and account keys use permissions assigned to servers and subusers while application keys use R/W ACLs stored in the key table.
2018-01-14 13:30:55 -06:00
Dane Everitt 14f9e1ad43
More permission removal cleanup 2018-01-14 12:11:04 -06:00
Dane Everitt ad3a954256
Rename APIKey to ApiKey 2018-01-14 12:06:15 -06:00
Dane Everitt 7aa540b895
Remove api permissions table 2018-01-14 12:05:18 -06:00
Dane Everitt e3df0738da
Change the way API keys are stored and validated; clarify API namespacing
Previously, a single key was used to access the API, this has not changed in terms of what the user sees. However, API keys now use an identifier and token internally. The identifier is the first 16 characters of the key, and the token is the remaining 32. The token is stored encrypted at rest in the database and the identifier is used by the API middleware to grab that record and make a timing attack safe comparison.
2018-01-13 16:06:19 -06:00
Dane Everitt d644a53951
Update users & locations to use new permissions format 2018-01-12 20:39:15 -06:00
Dane Everitt a31e5875dc
First round of changes to API to support simpler permissions. 2018-01-11 22:49:46 -06:00
Dane Everitt cf21fd5a4b
More API updates, better support for node config edits 2018-01-10 23:19:03 -06:00
Dane Everitt 800e2df6b2
Merge branch 'develop' into feature/api-v1
# Conflicts:
#	app/Contracts/Repository/RepositoryInterface.php
#	app/Repositories/Eloquent/EloquentRepository.php
#	app/Services/Nodes/NodeUpdateService.php
#	tests/Unit/Services/Nodes/NodeUpdateServiceTest.php
2018-01-10 20:55:22 -06:00
Dane Everitt b3d7c6f1af
Fix search weighting for servers 2018-01-05 18:49:00 -06:00
Dane Everitt d2afc29a80
Refactor how repositories for the daemon work. 2018-01-05 18:27:47 -06:00
Dane Everitt 60eb60013c
Update repository base code to be cleaner and make use of PHP 7 features 2018-01-04 22:49:50 -06:00
Dane Everitt 15289b76a7
Finish first round of User/Node API additions
Will still need some tweaking and improvements to allow everything to be used.
2018-01-01 15:11:44 -06:00
Dane Everitt d21f70c04b
Merge branch 'develop' into feature/api-v1 2018-01-01 13:33:06 -06:00
Dane Everitt 958c29cfbf
Fix empty server descriptions throwing SQL errors, closes #842 2018-01-01 12:23:45 -06:00
Dane Everitt 4457634127
Fix user creation to use UUIDs correctly
Also updates the notification send method to be cleaner and more maintainable
2018-01-01 12:13:08 -06:00
Dane Everitt 46d7ba7585
Merge branch 'develop' into feature/api-v1 2017-12-31 10:32:28 -06:00
Dane Everitt 5efee34378
close #840 2017-12-30 20:25:04 -06:00
Dane Everitt b9d67459b2
Update to Laravel 5.5 (#814) 2017-12-17 13:07:38 -06:00
Dane Everitt f30f4b45ba
Merge branch 'feature/laravel-55-update' into feature/api-v1 2017-12-16 17:19:35 -06:00
Dane Everitt 3c48947f9d
Fix known issues from the upgrade guide 2017-12-16 13:15:09 -06:00
Dane Everitt a1da8a3c9d
Merge branch 'develop' into feature/api-v1 2017-12-14 21:12:17 -06:00
Dane Everitt f9df463d32
Implement a better management interface for Settings (#809) 2017-12-14 21:05:26 -06:00
Dane Everitt 285485d7b0
Change how API keys are validated (#771) 2017-12-03 14:29:14 -06:00
Dane Everitt 4c57b5e8ee Merge branch 'develop' into feature/api-v1 2017-11-26 13:22:25 -06:00
Dane Everitt a710bdf457 Make a todo a todid, closes #774 2017-11-25 13:45:47 -06:00
Dane Everitt 698c121e11
First round of API additions 2017-11-19 16:30:00 -06:00
Dane Everitt 47e14ccaae
API key UI changes and backend storage of the keys 2017-11-19 13:32:17 -06:00
Dane Everitt c7c2c1a45e
Implement changes to 2FA system (#761) 2017-11-18 13:35:33 -05:00
Dane Everitt 81869bd5f2
Fix allocation alias setting 2017-11-10 21:47:43 -06:00
Dane Everitt e0d03513e4
Cleanup frontend controllers and middleware 2017-10-27 21:42:53 -05:00
Dane Everitt fa62a0982e
Refactor startup modification and environment variable services
Better setup, more flexibility, more tests.
2017-10-26 23:49:54 -05:00
Dane Everitt 058e490ec4 Implement Panel changes to support internal SFTP subsystem on Daemon (#703) 2017-10-25 00:35:25 -04:00
Dane Everitt d50ea18598
Add support for changing the server default allocation as a normal user 2017-10-20 21:32:57 -05:00
Dane Everitt aaf96669d4
Misc fixes 2017-10-08 21:36:22 -05:00
Dane Everitt c19c423568
More fixes 2017-10-07 18:08:19 -05:00
Dane Everitt 17642bffe7
More code updates 2017-10-07 17:21:41 -05:00
Dane Everitt 6b8464ea3a
Nest & Egg management working through the ACP now. 2017-10-07 16:16:51 -05:00
Dane Everitt df87ea0867
This breaks literally the entire panel. 2017-10-06 23:57:53 -05:00