Commit Graph

197 Commits

Author SHA1 Message Date
Benjamin Edwards
fd4c90eddf
terraform reference arch (#1761)
* terraform initial architecture
* added ecs autoscaling and https alb listener
* add r53 hosted zone, dns cert verification, http -> https redirect
* fleet dogfood env dogfood.fleetdm.com now configured, added license key, added readreplica settings, enabled vuln processing
* add comment about using RDS serverless option
2021-09-21 14:19:19 -04:00
Martin Angers
4f4185372d
Add support for context in datastore/mysql layer (#1962)
This is just to pass down the context to the datastore layer, it doesn't
use it just yet - this will be in a follow-up PR.
2021-09-14 08:11:07 -04:00
Zach Wasserman
86044eb036
Prepare for v4.3.0 release (#2040) 2021-09-13 15:03:42 -07:00
Tomas Touceda
6d2ae02efd
Rename core->free and basic->premium (#1870)
* Rename core->free and basic->premium

* Fix lint js

* Comment out portion of test that seems to timeout

* Rename tier  to premium if basic is still loaded
2021-09-03 13:05:23 -03:00
Tomas Touceda
df135f57a9
Update changelog and versions to 4.2.4 (#1921)
* Update changelog and versions to 4.2.4

* Update CHANGELOG.md

Co-authored-by: noahtalerman <47070608+noahtalerman@users.noreply.github.com>

* Update CHANGELOG.md

Co-authored-by: noahtalerman <47070608+noahtalerman@users.noreply.github.com>

* Update CHANGELOG.md

Co-authored-by: noahtalerman <47070608+noahtalerman@users.noreply.github.com>

Co-authored-by: noahtalerman <47070608+noahtalerman@users.noreply.github.com>
2021-09-02 16:50:11 -03:00
Martin Angers
9a0871a2f1
Address issues related to Redis Cluster support (#1885)
Closes #1847 .
2021-09-01 16:32:57 -04:00
Zach Wasserman
801f44da86
Update changelog for Fleet 4.2.3 (#1811) 2021-08-25 20:11:45 -07:00
Tomas Touceda
a8642493ad
Add global policies (#1750)
* Add global policies

* Update documentation and add extra parameter to config

* Fix failing tests

* Store historic policy records

* Address review comments

And also remove other inmem references I saw by chance

* Add documentation for get by id request

* Add parameter doc

* Move schema generation to a cmd instead of a test

Otherwise it messes up running all tests sometimes depending on how parallel it does

* Remove brain dump for another task

* Make migration tests a separate beast

* Make schema generation idempotent and move dbutils cmd to tools

* Allow all filters and add counts to Policy

* Add test for Policy
2021-08-24 17:24:52 -03:00
Zach Wasserman
de98d7fb9c
Prepare for 4.2.2 release (#1729) 2021-08-18 18:46:36 -07:00
Zach Wasserman
64145c5633
Prepare for 4.2.1 release (#1675) 2021-08-14 09:26:47 -07:00
Zach Wasserman
450e15b346
Update fleetctl for compatibility with new monorepo tags (#1654) 2021-08-14 09:22:07 -07:00
noahtalerman
2df7c71749
Prepare for Fleet 4.2.0 (#1645) 2021-08-11 17:14:32 -07:00
noahtalerman
cb10659277
Prepare for 4.1.0 (#1483) 2021-07-26 16:09:18 -04:00
Zach Wasserman
28627f9a71
Delete unused tools directories (#1403)
This tooling has been unused and unmaintained for years now.
2021-07-20 16:53:14 -07:00
Zach Wasserman
ce79c6afa0
Update development docker-compose.yml to use osquery 4.9.0 (#1410)
Also:
- Add Debian hosts.
- Use container images from osquery/osquery.
- Set platform to linux/x86_64.
2021-07-17 12:40:56 -07:00
Zach Wasserman
5865fa8cb6
Fix fleetctl NPM install with NPM 6 (#1389)
Fixes #1335
2021-07-14 15:01:05 -07:00
Zach Wasserman
fed68fcb62
Prepare for v4.0.1 release (#1283) 2021-07-01 16:25:18 -07:00
noahtalerman
b9dfbf0a7c
Prepare for 4.0.0 (#1258)
- Update CHANGELOG
- Edit Fleet version for Helm and NPM
- Add permalinks to Fleet product (links have been double checked)
2021-06-29 14:35:21 -04:00
Zach Wasserman
df2c45fee2
Fix NPM fleetctl with new release archive formats (#1238)
- Wrap extracted archives in directory.
- Adjust naming of archives and directories.
2021-06-28 11:10:46 -07:00
Zach Wasserman
b2390be608
Prepare for v4.0.0-rc3 (#1223) 2021-06-25 21:12:12 -07:00
Zach Wasserman
5e26af701b Merge branch 'main' into teams 2021-06-25 18:48:20 -07:00
Zach Wasserman
07b89c4cbd
Implement release automation (#1215)
- Use goreleaser to automate release process.
- Add new dockerfiles for fleet (with fleetctl) and fleetctl (only).
- Add GitHub Action Workflow to run goreleaser on new tag.
- Update NPM to match new archive naming.
2021-06-25 18:40:26 -07:00
RachelElysia
aeb852e168
Remove username from UI (#1168)
* Remove username from UI code
* Remove username from tests
* Remove username from database
* Modify server endpoints for removing username
* Implement backend aspects of removing username
* Update API docs
* Add name to fleetctl
2021-06-24 13:42:29 -07:00
RachelElysia
8900d1bea3
E2e test: Fleet basic observers - global and team only (#1118)
* Oliver flow with some stubbed code
* Create team observer only test user and stub test (Toni)
2021-06-21 21:29:59 -04:00
noahtalerman
e02b88d010
Update links to documentation so that they use main branch (#1151)
* Update to main branch

* Update link to releasing Fleet
2021-06-21 16:40:15 -05:00
noahtalerman
17a6c21224
Restructure documentation in preparation for docs living on fleetdm.com (#1143)
* Remove Orbit top level folder and rename folders to Deploying and Contributing

* Update link in doc README
2021-06-18 15:58:21 -05:00
noahtalerman
62e7c1699a
Add v to versioning for NPM package and Helm chart (#1145) 2021-06-18 16:40:51 -04:00
noahtalerman
d58986494b
Prepare for 4.0.0 RC2 (#1138) 2021-06-18 16:34:53 -04:00
Zach Wasserman
663641d521
Add commands for enrolling hosts in E2E tests (#1089)
- Add `addDockerHost` and `stopDockerHost` commands.
- Example usage in test.
2021-06-15 10:14:57 -07:00
noahtalerman
b78ab0e9ba
Update CHANGELOG and bump versioning for prerelease (#1051) 2021-06-10 12:15:38 -04:00
Zach Wasserman
8c97b36764
Set up Cypress testing for Teams/Tiers (#1005)
- Update names/roles of users in `make e2e-setup`.
- Update test SSO user info.
- Add Cypress commands for seeding users/Teams.
- Stub Cypress tests for team/tier matrix.
2021-06-09 11:56:59 -07:00
Zach Wasserman
f75a2fc739
Fix up test osquery tooling (#996)
- Update certificate paths.
- Update documentation to point to the appropriate docs.
2021-06-07 13:34:17 -07:00
Zach Wasserman
50ecb0aa2a
Change default database values in k8s yaml (#984) 2021-06-06 19:26:35 -07:00
Zach Wasserman
229a9afed2
Change name of localstorage auth token (#980) 2021-06-06 18:28:37 -07:00
Zach Wasserman
0356115b03
Remove JWT in Fleet session management (#979)
See #978 for motivations for this change.

Closes #978.
2021-06-06 18:10:58 -07:00
Zach Wasserman
7ff72f7ac1
Rename main frontend directory (#977) 2021-06-06 17:30:54 -07:00
Zach Wasserman
fb32f0cf40
Remove kolide types and packages from backend (#974)
Generally renamed `kolide` -> `fleet`
2021-06-06 15:07:29 -07:00
Zach Wasserman
fa01df79d5 Merge branch 'master' into teams 2021-06-05 06:27:38 -07:00
noahtalerman
7fd439f812
Prepare for Fleet 3.13.0 (#944)
- Add to CHANGELOG
- Bump versioning
2021-06-03 14:07:33 -04:00
Zach Wasserman
5c09f3e5e1
Make create_figma script executable (#927) 2021-06-02 11:49:57 -07:00
noahtalerman
2dca66c33d
Add Fleet Core and Fleet Basic user/team creation scripts for manual QA (#919)
- Add `teams/create_core` script
- Add `teams/create_basic` script
- Rename existing script to `teams/create_figma`
2021-06-01 14:50:07 -04:00
Zach Wasserman
a5bd03e5d7 Merge branch 'master' into teams 2021-05-31 10:56:50 -07:00
noahtalerman
4cca4e7e7f
Remove @fleetdm.com emails from fleetdm/fleet repo (#882)
- In tests and documentation, replace `@fleetdm.com` with `@example.com`
- In documentation, replace `hello@fleetdm.com` with `fleetdm.com/contact`
- In documentation, replace `security@fleetdm.com` with `fleetdm.com/contact`
- In Dockerfiles, replace `engineering@fleetdm.com` with `hello@fleetdm.com`. These two files are the only remaining files with a `@fleetdm.com` email.
2021-05-27 17:19:14 -04:00
Zach Wasserman
15b81824f5
Filter query page API responses based on team membership (#850)
- Include only hosts that the user has access to in search targets API.
- Add parameter to specify whether `observer` hosts should be included.
- Generate counts based on which hosts user can access.
- Update API doc.
2021-05-24 21:34:08 -07:00
Noah Talerman
72882e8f9f Merge branch 'master' into teams 2021-05-19 13:16:54 -04:00
noahtalerman
b072fd5fe5
Update CHANGELOG and bump versioning (#806) 2021-05-19 12:09:23 -04:00
noahtalerman
e18ab29906
Add bash script that creates 3 teams and 12 users to /tools/api (#779)
- Add a bash script that populates the Fleet UI with 3 teams and 12 users. 
- Rename the `/tools/api/kolide` directory to `/tools/api/fleet`
2021-05-17 19:11:11 -04:00
noahtalerman
9fb9da31f5
Bring Orbit docs into Fleet docs and add FAQ section (#717)
- Add new `2-Orbit-osquery/` directory to the top-level `docs/` directory.
- Rename `2-Deployment/` -> `3-Deployment/` to accommodate new Orbit directory.
- Rename `3-Contribution/` ->  `4-Contribution/` to accommodate new Orbit directory.
- Add FAQ section to Orbit documentation.
2021-05-04 15:50:18 -04:00
noahtalerman
b479adf0f4
Prepare for 3.11.0 (#690) 2021-04-28 12:11:02 -04:00
noahtalerman
f5e862a00d
Prepare 3.10.1 (#608) 2021-04-06 16:07:15 -07:00
noahtalerman
c46cedcfea
Prepare for 3.10.0 (#568) 2021-03-31 10:17:19 -07:00
Zach Wasserman
9ec122c249
Backup and restore for development database (#480)
Tooling to make backup and restore of the development database easy.
2021-03-16 08:33:42 -07:00
noahtalerman
b93b2c5b6a
Prepare for 3.9.0 (#428) 2021-03-09 11:17:42 -08:00
Zach Wasserman
499cd1d7dc
Prepare for 3.8.0 release (#352)
Update changelog, NPM package.json, Helm chart.
2021-02-25 09:14:29 -08:00
Zach Wasserman
a91a24bb58
Update fleetctl NPM package to 3.7.4 (#316)
This corresponds with the published 3.7.4 fleetctl release.
2021-02-15 10:44:57 -08:00
Zach Wasserman
da0bba7fe4
Use rimraf for rm -rf in fleetctl NPM install (#310)
Ubuntu 20.04 uses an older version of Node by default that does not
support the rmSync method we were using previously. This should extend
compatibility.
2021-02-14 16:40:22 -08:00
Zach Wasserman
4054959674
Update fleetctl NPM package to not use postinstall (#308)
We found in some environments users run `sudo npm install -g fleetctl`
to install via NPM, and NPM does not execute postinstall scripts when
run as root.

This new approach should be compatible with more environments as the
download of fleetctl is done as necessary when the script is invoked.
2021-02-14 15:54:13 -08:00
Zach Wasserman
d624e099fb
Deprecate environment variable prefix (#301)
- Support both `FLEET_` and `KOLIDE_` prefixes.
- Add logging about deprecated `KOLIDE_` prefix.
- Update documentation and sample configs.
2021-02-11 15:36:58 -08:00
Zach Wasserman
7a68e3de65
Deprecate /api/v1/kolide routes (#297)
- Support both /api/v1/fleet and /api/v1/kolide routes in server.
- Add logging for use of deprecated routes.
- Rename routes in frontend JS.
- Rename routes and add notes in documentation.
2021-02-10 12:13:11 -08:00
Zach Wasserman
413695b463
Prepare for 3.7.1 release (#272)
- Update changelog
- Bump fleetctl npm version
2021-02-03 11:55:15 -08:00
noahtalerman
e2504f247c
3.7.0 version for fleetctl 2021-02-03 09:48:50 -08:00
Zach Wasserman
c78209dd51
Clean up development files (#259)
Remove unused files and update with new developer defaults
2021-02-01 19:21:17 -08:00
James Alseth
3d328db000
Add Helm chart (#250)
Providing a Helm chart makes it easier for users to deploy to Kubernetes.

I think this is good to go, and I've tested deploying to Kind and GKE using the GKE ingress, sql proxy, and managed certificate, but I haven't tested anything AWS related.
2021-02-01 15:46:01 -08:00
Zach Wasserman
c0b8348174
Upgrade osquery version in docker-compose to 4.5.1 (#210) 2021-01-19 20:09:39 -08:00
Zach Wasserman
deaf8880f3
Expose live query error messages via API (#205)
Somewhere around osquery 4.4.0 these messages were added to query
responses. We can now expose them to the API clients rather than using
the placeholder text.

Required for #192
2021-01-19 14:52:29 -08:00
Zach Wasserman
1cc795d06f
Upgrade axios in npm installer (#204)
Updates the binary-install package to get a new version of Axios with
security fixes.
2021-01-19 12:52:37 -08:00
noahtalerman
74a3aee5e1
Change fleetctl version number (#184) 2021-01-07 17:51:32 -08:00
noahtalerman
72637d649b
Update links to new documentation locations. (#164)
- Add correct links to the new docs locations for links within the Fleet UI and Fleet documentation.
Fixes #157.
2021-01-04 08:53:23 -08:00
Zach Wasserman
81df308346
Update npm package name to fleetctl (#156)
This is an update from the prior name osquery-fleetctl now that we got
the fleetctl name.
2020-12-30 15:19:43 -08:00
Zach Wasserman
b77c8883d6
Update npm for 3.5.1 release (#133) 2020-12-14 19:22:07 -08:00
noahtalerman
3a44da034c
Update fleetctl version number. Fix spelling error in changelog. (#122) 2020-12-10 16:09:25 -08:00
Zach Wasserman
416235f4b8
Clean up unused test/demo SQL data (#117) 2020-12-10 11:44:02 -08:00
Zach Wasserman
9279e59628
Default to --host_identifier=instance in docs (#103)
This may be a better default for folks to use as it will prevent the
issues caused by duplicate UUIDs in #102.
2020-12-07 15:43:08 -08:00
Zach Wasserman
45dbcebeb4
Upgrade NPM package to 3.4.0 (#54) 2020-11-19 15:58:54 -08:00
Zach Wasserman
d89523c830
Add fleetctl installer for NPM (#52)
This PR adds all the necessary configuration to install fleetctl via NPM.

Binaries are downloaded from the GitHub release page.
2020-11-18 13:20:08 -08:00
Zach Wasserman
6cbd10965c
Add dev infrastructure and docs for Prometheus monitoring (#33)
- Set up a simple example of Prometheus monitoring in the development
  docker-compose.yml.
- Add documentation for configuring Prometheus.
2020-11-12 19:06:56 -08:00
Mike Arpaia
af96e52a00
Update the Go import paths to new repo name (#27) 2020-11-11 09:59:12 -08:00
Zachary Wasserman
e452cc6a8a
Add file carving support (#15)
- Add endpoints for osquery to register and continue a carve.
- Implement client functionality for retrieving carve details and contents in fleetctl.
- Add documentation on using file carving with Fleet.

Addresses kolide/fleet#1714
2020-11-04 20:45:16 -08:00
Zachary Wasserman
a36bef6c16
Improve "Add New Host" dialog (#8)
- Allow download of enroll secret, server certificate, and flagfile.
- Hosts can now be added following instructions directly.
2020-11-04 17:07:58 -08:00
Brendan Shaklovitz
c6b285c56e
Remove soft-deletion pattern (#2327)
* Perform migration to delete any entries with `deleted` set, and
subsequently drop columns `deleted` and `deleted_at`.
* Remove `deleted` and `deleted_at` references.

Closes #2146
2020-10-22 10:51:26 -07:00
Brendan Shaklovitz
87137252de
docker-compose QoL improvements (#2319)
* Use YAML anchors to avoid repeating config blocks
* Use docker volumes to persist data for mysql
* Allow setting `FLEET_SERVER` (fixes #2127) when using the docker-compose file to spin up multiple osquery clients
2020-10-09 10:10:33 -07:00
seph
c2d8dccb8d
Remove old package stuff (#2284)
Remove references to the long unused dl.kolide.co distribution site.
2020-08-11 18:14:59 -07:00
Zachary Wasserman
863ae14ab8
Default osquery container version to latest in test docker-compose (#2152)
Now only the enroll secret needs to be configured when running osquery
containers for testing.
2019-11-17 14:10:11 -08:00
Zachary Wasserman
eb4770f730 Use host.docker.internal to connect test osqueryd instances (#2019)
Newer versions of Docker support this hostname, which allows test
osquery instances to be started with less configuration.
2019-04-02 08:31:09 -04:00
Joseph Henrich
878879faa3 Update uses of config_tls_refresh to config_refresh in docs (#2009) 2019-03-09 13:48:19 -08:00
Zachary Wasserman
c8229cc0d6
Replace uses of the term "Kolide" with "Fleet" (#1999)
Almost two years ago, we began referring to the project as Fleet, but there are
many occurences of the term "Kolide" throughout the UI and documentation. This
PR attempts to clear up those uses where it is easily achievable.

The term "Kolide" is used throughout the code as well, but modifying this would
be more likely to introduce bugs.
2019-01-24 09:39:32 -08:00
Allen Golbig
cf84bd9d8e Added KeepAlive and ThrottleInterval (#1916) 2018-09-05 16:18:51 +00:00
Victor Vrantchan
95c3113632 examples: use curl and jq to work with the API (#1737) 2018-04-23 09:21:59 -06:00
Zachary Eddy
6a20ae91c5 Create kubernetes manifest for minikube (#1671) 2017-12-28 11:18:16 -08:00
ferhat elmas
d2a7e38c85 Fix documentation typos (#1682) 2017-12-21 18:37:32 -08:00
Mike Arpaia
8425fe2214 Use dep instead of glide (#1564) 2017-10-13 09:00:58 -06:00
Mike Arpaia
90c623d27d Remove license linting (#1563) 2017-10-12 11:06:29 -06:00
Victor Vrantchan
61866aa680 move to 2.0 (#1562) 2017-10-12 12:14:03 -04:00
Mike Arpaia
5cbef6270b Updating docs to reference new binary and package (#1557) 2017-10-05 19:33:41 -06:00
Mike Arpaia
80b082ea26 Renaming CI/Packaging things to Fleet (#1556) 2017-10-04 15:28:11 -06:00
Victor Vrantchan
b4e9ced1d9 add documentation for building a release (#1523) 2017-09-01 13:21:04 -06:00
John Murphy
1e92f8fcfd gRPC Server for Launcher (#1544)
Add a gRPC server that will interact with osquery through Launcher. This endpoint will expose the osquery configuration suitable for use via the Launcher plugin, and collect log and query results.
2017-08-17 16:43:02 -05:00
Zachary Wasserman
68522c3c09 Add agent-api and appropriate changes to builder image (#1546)
- Add SSH configuration to allow checkout of Kolide private repos in CI
- Add kolide/agent-api repo to glide.yaml
- Update testify version to fix broken test build

Closes #1545
2017-08-10 12:45:55 -07:00
Mike Arpaia
018b91ab2c Rename project to Kolide Fleet (#1529) 2017-06-22 15:50:45 -04:00
John Murphy
368b9d774c Server Side SSO Support (#1498)
This PR partially addresses #1456, providing SSO SAML support. The flow of the code is as follows.

A Kolide user attempts to access a protected resource and is directed to log in.
If SSO identity providers (IDP) have been configured by an admin, the user is presented with SSO log in.
The user selects SSO, which invokes a call the InitiateSSO passing the URL of the protected resource that the user was originally trying access. Kolide server loads the IDP metadata and caches it along with the URL. We then build an auth request URL for the IDP which is returned to the front end.
The IDP calls the server, invoking CallbackSSO with the auth response.
We extract the original request id from the response and use it to fetch the cached metadata and the URL. We check the signature of the response, and validate the timestamps. If everything passes we get the user id from the IDP response and use it to create a login session. We then build a page which executes some javascript that will write the token to web local storage, and redirect to the original URL.
I've created a test web page in tools/app/authtest.html that can be used to test and debug new IDP's which also illustrates how a front end would interact with the IDP and the server. This page can be loaded by starting Kolide with the environment variable KOLIDE_TEST_PAGE_PATH to the full path of the page and then accessed at https://localhost:8080/test
2017-05-08 19:43:48 -05:00