Commit Graph

1393 Commits

Author SHA1 Message Date
Mike McNeil
ca63c060e9
Update new teammate onboarding template (#185) 2021-01-11 18:20:31 -06:00
noahtalerman
74a3aee5e1
Change fleetctl version number (#184) 2021-01-07 17:51:32 -08:00
noahtalerman
68718c183f
CHANGELOG for 3.6.0 (#183) 2021-01-07 14:26:29 -08:00
Zach Wasserman
d13aadb5f1
Fix empty enroll secret before setup. (#182)
On new installations we unintentionally set the enroll secret to empty
string during database migrations. The enroll secret would be reset
during the setup process. This fixes the migration to not create any
enroll secret until the setup process.
2021-01-07 14:12:51 -08:00
noahtalerman
8b1c6dd7eb
Complete front end QA (#181)
- Conduct complete visual QA for recent icon changes merged in #128
- Edit styles to vertically align the "copy" and "reveal" icons in EnrollSecretTable
- Clean up unused <KolideIcon /> properties in <SelectTargetsDropdown />
- Add min-height to left side navigation. At window heights under 500px, the user can now vertically scroll to reveal the remainder of the nav options.
- Edit 500 page styles by moving the "Show error" button above the link to "File an issue"
2021-01-07 12:35:45 -08:00
Zach Wasserman
8e589d9cfb
Update osquery schema to 4.6.0 (#180)
Closes #178
2021-01-07 12:13:53 -08:00
noahtalerman
6196859bc5
Add allow insecure local host flag instructions to contributor docs. (#179)
In contributor docs, mention chrome://flags/#allow-insecure-localhost.
2021-01-07 12:04:41 -08:00
Kyle Knight
bb5b84659f
Update 3-Adding-hosts.md (#174)
Updating some verbiage, correcting link to Kolide's launcher docs, and fixing typo in code snippet
2021-01-05 12:13:29 -08:00
noahtalerman
0c921fe032
Fix missing image assets in SelectTargetsDropdown. (#172)
- Add back <KolideIcon /> to SelectTargetsDropdown. <KolideIcon /> was prematurely replaced.
- Edit styles to allow SelectTargetsDropdown to vertically scroll on overflow.
Fixes #168
2021-01-04 17:22:02 -08:00
Zach Wasserman
d52f850702
Complete setup with fleetctl preview (#167)
- Run the `fleetctl setup` command to set up the Fleet server with
  default username ('admin') and password ('admin123#').
- Configures fleetctl if it has not yet been configured.

Closes #152
2021-01-04 17:11:10 -08:00
noahtalerman
cf9146eea2
Add additional documentation on how the osquery configuration overrides option works. (#163)
- Quick attempt to alleviate potential confusion for how the osquery configuration overrides option works
- Leave in the commented explanation in the sample yaml file
2021-01-04 13:55:43 -08:00
noahtalerman
715d7b44e2
Fix markdown link check CI action. (#169)
- Split the array of objects to separate objects for each pattern in ignorePatterns. Rename the key in each object to "pattern." The documentation for the example config file is poor.
- Add hello@fleetdm.com and /server/datastore/mysql/migrations/ to ignorePatterns
- Add 999 to aliveStatucCodes (Seems to be a LinkedIn edge case)
- Fix all broken markdown links
2021-01-04 13:55:05 -08:00
Mike McNeil
04300860e1
Until Papercups integrates status with working hours, this removes the availability indicator (it currently always shows offline since we respond from Slack instead of the dashboard) (#171) 2021-01-04 15:20:17 -06: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
8527f27c3f
Updgrade webpack-notifier and node-notifier (#160)
Resolves a GitHub security alert about node-notifier (https://github.com/advisories/GHSA-5fw9-fq32-wv5p). This was unlikely
to be relevant in the case of Fleet where this was used only as a
development dependency.
2021-01-04 08:01:35 -08:00
CptOfEvilMinions
626429c38e
Added support to read jwt and mysql password from a file (#141)
The current implementation of FleetDM doesn't support Docker secrets for supplying the MySQL password and JWT key. This PR provides the ability for a file path to read in secrets. The goal of this PR is to avoid storing secrets in a static config or in an environment variable. 

Example config for Docker:
```yaml
mysql:
  address: mysql:3306
  database: fleet
  username: fleet
  password_path: /run/secrets/mysql-fleetdm-password
redis:
  address: redis:6379
server:
  address: 0.0.0.0:8080
  cert: /run/secrets/fleetdm-tls-cert
  key: /run/secrets/fleetdm-tls-key
auth:
  jwt_key_path: /run/secrets/fleetdm-jwt-key
filesystem:
  status_log_file: /var/log/osquery/status.log
  result_log_file: /var/log/osquery/result.log
  enable_log_rotation: true
logging:
  json: true
```
2021-01-04 07:58:43 -08:00
Mike McNeil
522bff0b82
update copyright year (#166) 2020-12-31 20:51:17 -06:00
Mike McNeil
024fbd1c2d
Add chat to website (#165)
* prevent eslintrc conflicts

* Pricing + chat for website (#124)

* Update manage users styles. Implement table (list) view. (#104)

The goal of this PR is to change the layout of the manage users to a table (list view).

Move the user actions into the table view.
Move EditUserForm into a Modal
Update styles for InviteUserForm
Edit copy for the configuring SMTP warning.

* Update query page (edit, new, manage) and packs page (edit, new, manage) styles. (#106)

The goal of this PR is to update the style across the query and packs pages so they are consistent with the latest global styles (colors, buttons, and fonts).

* Update app settings page and osquery options page styles. (#107)

The goal of this PR is to implement the new global styling (colors, buttons, and fonts) to the "App settings" and "Osquery options" pages. These pages are only visible to users granted an admin role.

* Fix and clarify API auth documentation (#109)

- Fix header name.
- Add note about SSO auth.

* New styles for 404, 500, Login, User settings, and Confirm invite pages. (#108)

- Kolide404 and Kolide500 components renamed to Fleet404 and Fleet500
- Styling for Login and Confirm invite pages are consistent with the recent changes to the Setup page.
- Add "*" character to the 404 <Route />'s path property. Now the 404 page renders when there is no exact path match.

* Fix JSON in rest-endpoints.md (#110)

* Add host enrollment cooldown period (#112)

This addresses an issue some users experienced in which performance
problems were encountered when hosts were "competing" for enrollment
using the same osquery host identifier. The issue is addressed by adding
a cooldown period for host enrollment, preventing the same (as judged by
osquery host identifier) host from enrolling more than once per minute.

When users end up in the problematic scenario, they will see quite a bit
of error logs due to this issue. For now that's probably a good thing as
users need to be aware of the lack of visibility. We can explore rate
limiting the logging if that becomes an issue for someone.

Fixes #102

* Improve MySQL transaction error logging (#113)

Clarify what exactly happened when logging these errors.

* Migrate remaining URLs to fleetdm.com (#116)

* Clean up unused test/demo SQL data (#117)

* Add style fixes caught during QA. Add favicon. (#119)

Changes include style fixes that were caught during a QA pass.

* Make password reset styles consistent with new global styles. (#120)

The changes include adding sentence casing and updating the styles of the and components.

* CHANGELOG for 3.5.0 (#121)

* Update fleetctl version number. Fix spelling error in changelog. (#122)

* Fix alt tag

* Set up pricing cards

* Match footer to bottom of gradient

* Set up FAQ and stub out chat button click

* Add chat, plus some other tweaks.

* fiddling with Papercups to hopefully get it to recognize who's responding from the Fleet side

* This isn't really a solution but it's the best we've got til Papercups is hacked to allow programmatic opening (or til we switch to something else, or just bring in the traditional contact form)

* trivial

* Temporary workaround using an undocumented API in papercups


Co-authored-by: Rachael Shaw <rachaelshaw@users.noreply.github.com>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>

Co-authored-by: Rachael McNeil <r@rachael.wtf>
Co-authored-by: Rachael Shaw <rachaelshaw@users.noreply.github.com>
2020-12-31 20:28:18 -06:00
Mike McNeil
1e0186b820
Add template for roadmap projects / working groups (#161)
* add template for projects / working groups

* Update z-new-project

* Update z-new-project
2020-12-31 01:10:20 -06:00
Zach Wasserman
6a3c511eca
Update developer docs (#159)
- Separate migration documentation from build.
- Add link to server on localhost after setup.
2020-12-30 15:20:02 -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
Mike McNeil
c8a7756296
Update README.md (#153)
* Update README.md

* Edit link to osquery directory

* Update README.md

* Update README.md

Co-authored-by: noahtalerman <47070608+noahtalerman@users.noreply.github.com>
2020-12-29 13:00:36 -06:00
noahtalerman
5b67e7e551
Add a walkthrough for previewing Fleet (fleetctl preview) to top level README. (#151)
- Move the transition announcement below the banner image.
- Remove the old documentation section and add a link to the updated docs.
2020-12-29 08:59:09 -08:00
noahtalerman
5ae69fdb43
Capitalize Fleet in "Using Fleet" folder name. (#150)
"Fleet" is now capitalized in the folder name for 1-Using-Fleet.md.
2020-12-24 14:45:43 -08:00
noahtalerman
d5f3a70152
Part 3 of documentation restructure. Contribution section. (#149)
This PR includes the Contribution section of the documentation restructure #144.
2020-12-24 14:33:03 -08:00
noahtalerman
f9eae5e747
Part 2 of documentation restructure. Using Fleet section. (#148)
This PR includes the Using Fleet section of the documentation restructure #144.
It shouldn't be merged until changes are approved for the entire restructuring (part 1, part 2, and part 3).

Update the naming convention for the files to number prefixes.
2020-12-24 14:12:44 -08:00
noahtalerman
fa6ac424ca
Part 1 of documentation restructure. Deployment section. (#147)
This PR includes the Deployment section of the documentation restructure #144.

- Changes include the addition of 3 overarching folders/sections named Deployment, Using fleet, and Contribution guide. Each folder includes new files for the subsections.
- Move the copy from the appropriate files into the new files in the Deployment folder. Removed old files. A detailed outline of the exact old files can be found in the linked issue above.
- Add navigation to the top of each file via links to anchors in the markdown.

The naming convention for each folder and file is up for discussion. I chose to use number prefixes (1, 2, 3) to order the folders and files. This way we have control over the order when viewing on GitHub.
2020-12-24 14:00:22 -08:00
Zach Wasserman
48a2ddbb2c
Create SECURITY.md (#146) 2020-12-22 08:26:39 -08:00
CptOfEvilMinions
f735317f07
Updated .dockerignore and added non-root user to Dockerfile (#143)
Running applications as root (default Docker user) is not a good security practice. The goal of this PR is to run the Fleet application as a non-root user. 

For development you can still access the container as root with the following command: `docker run -it --user=0 <fleetdm container ID> bash`
2020-12-22 08:23:17 -08:00
noahtalerman
19816cee1a
Add help text within user actions dropdown menu. Update copy in API documentation. (#142)
- Add help text within dropdown in smaller font size underneath "Require password reset" saying "This will revoke all active Fleet API tokens for this user."
- Update API docs to use "API token" parlance instead of "Auth token"
2020-12-21 15:47:35 -08:00
noahtalerman
573097c2a3
Close UI Refresh. Update button styles. Edit status labels for hosts list and users list. (#139)
The final PR for the UI Refresh #38.

- Complete UI issues caught during the Dec. 09 QA pass.
- Update button and color styles, including hover and active states, to align with the mockups.
- Update status labels in the hosts list and users list. The status label now includes a colored circle along with a text description.
- Fixes #138.
2020-12-18 17:36:39 -08:00
noahtalerman
510c7c0f45
Fix query editor rendering strangely in Safari. Edit query side panel styles. (#140)
Fixes #65 by bringing in new regular and bold Source Code Pro monospaced fonts.

- Remove old Source Code Pro font files
- Add new platform icons to <QuerySidePanel />
- Edit styles in <EditPackForm />
2020-12-18 09:04:43 -08:00
Mike McNeil
550698154c
typofix (#134) 2020-12-17 14:25:41 -06:00
noahtalerman
e9a77cc64a
Add information on datastore options in Fleet to FAQ. (#136) 2020-12-16 16:20:38 -08:00
noahtalerman
d4780770e0
Update question on fleet performance in FAQ. (#135)
Add copy to Fleet stress test question in infrastructure FAQ.
2020-12-16 16:14:40 -08:00
Matteo Piano
c89cd370d5
Add AWS S3 as file carving backend (#126)
This adds the option to set up an S3 bucket as the storage backend for file carving (partially solving #111).

It works by using the multipart upload capabilities of S3 to maintain compatibility with the "upload in blocks" protocol that osquery uses. It does this basically replacing the carve_blocks table while still maintaining the metadata in the original place (it would probably be possible to rely completely on S3 by using object tagging at the cost of listing performance). To make this pluggable, I created a new field in the service struct dedicated to the CarveStore which, if no configuration for S3 is set up will be just a reference to the standard datastore, otherwise it will point to the S3 one (effectively this separation will allow in the future to add more backends).
2020-12-16 09:16:55 -08:00
Zach Wasserman
b77c8883d6
Update npm for 3.5.1 release (#133) 2020-12-14 19:22:07 -08:00
Zach Wasserman
55a2aa2c95
Fix logging for query creation on error (#132) 2020-12-14 18:45:03 -08:00
Zach Wasserman
c1cc0e45f6
Update changelog for 3.5.1 release (#131) 2020-12-14 18:28:35 -08:00
noahtalerman
49e71e4ed6
Add new icons for Hosts page. Fix hosts list width on wide screens. (#128)
- Add new PNG files for the new icons in the left side navigation and the right side labels on the Hosts page.
- Rename the old `<Icon />` component to `<KolideIcon />` and create a new `<Icon />` component. The ultimate goal is to get rid of the `<KolideIcon />` and `<PlatformIcon />` components and use the encompassing `<Icon />` component for all icons. The full transition will be made when we have icon assets to replace all the kolide icons and platform icons. Currently, we don't.
- Rename the `icon_name_for_label.js` utility to `icon_name.js` because the utility now includes `iconNameForLabel()` and `iconNameForPlatform()` functions.
- Fixes issue #127.
2020-12-14 18:24:16 -08:00
Zach Wasserman
92d5ecf71a
Update Go version for CircleCI (#130) 2020-12-14 18:23:49 -08:00
Zach Wasserman
57812a532e
Merge pull request from GHSA-w3wf-cfx3-6gcx
* Update github.com/russellhaering/goxmldsig

* Update signature validation to include Mattermost XML validator
2020-12-14 18:14:14 -08:00
Zach Wasserman
5b432cccee
Prevent SQLite ATTACH from being used in queries (#129)
Mitigate
[CVE-2020-26273](https://github.com/osquery/osquery/security/advisories/GHSA-4g56-2482-x7q8)
by attempting to prevent users from executing or saving queries that use
the SQLite `ATTACH` command.

Users must still update to osquery 4.6.0 to ensure the functionality is
fully disabled in osquery.
2020-12-14 18:13:34 -08:00
Ahmed Musaad
dc2befaa87
Add documentation for user API endpoints (#114)
@ahmedmusaad added documentation for the following API endpoints:

/api/v1/kolide/users GET
/api/v1/kolide/users POST
/api/v1/kolide/users/admin POST
/api/v1/kolide/users/{id} GET
2020-12-14 08:55:15 -08:00
Mike McNeil
96f24dead5
Update README with a screenshot of Fleet (#123) 2020-12-11 12:23:05 -06:00
noahtalerman
3a44da034c
Update fleetctl version number. Fix spelling error in changelog. (#122) 2020-12-10 16:09:25 -08:00
noahtalerman
4c27a6786a
CHANGELOG for 3.5.0 (#121) 2020-12-10 15:02:51 -08:00
noahtalerman
e3edcc0ed7
Make password reset styles consistent with new global styles. (#120)
The changes include adding sentence casing and updating the styles of the and components.
2020-12-10 14:34:17 -08:00
noahtalerman
1b23b7b74f
Add style fixes caught during QA. Add favicon. (#119)
Changes include style fixes that were caught during a QA pass.
2020-12-10 13:09:05 -08:00
Zach Wasserman
416235f4b8
Clean up unused test/demo SQL data (#117) 2020-12-10 11:44:02 -08:00