Commit Graph

238 Commits

Author SHA1 Message Date
George Karr
c739ed2472
Update Releasing-Fleet.md (#16725)
Updating broken link

---------

Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2024-03-26 12:02:09 -05:00
Dante Catalfamo
bd3e775e67
Windows MDM Fix Manual Detection (#17721)
#15565 

Replace the use of the isFederated registry key with a keys that check
for AAD (Azure Active Directory, now Entra ID)

Federated enrollment (`isFederated`) seems to be when windows uses a
Discovery MDM endpoint to get its policy and management endpoint
configuration. This is always the case when a client is enrolled with
fleet, so installations always show up as automatic.

It's being replaced by a different key, `AADResourceID`, which appears
to identify the resource that controls the automated deployment. In my
tests it only appears to be populated when the computer is enrolled
through automated deployments. This key appears on both Windows 10 and
11.

There is a similar key, `AADTenantID`, which appears to identify the
client (tenant) to the Azure cloud. I haven't seen this ID in our
systems, so it is likely exclusively used in Azure. Both this key and
`AADResourceID` seem to always be set at the same time, so we only
check for the `AADResourceID`.

I've also added documentation on the registry keys I've analyzed for future reference.
2024-03-21 15:09:05 -04:00
Martin Angers
813a831a08
Add mention of the environment variable to disable logs in integration tests (#17524) 2024-03-18 09:24:02 -04:00
Eric
29e66efc19
Website: Add required meta tag to page in contributing documentation (#17668)
Changes:
- Added a `pageOrderInSection` `<meta>` tag to the
`windows-mdm-glossary-and-protocol.md`
2024-03-15 13:19:54 -05:00
Dante Catalfamo
58dc1d4502
Create initial windows MDM glossary and diagram document (#17507)
```mermaid
sequenceDiagram
    participant windows as Windows
    participant orbit as Orbit
    participant server as fleet server
    loop every 30 seconds
        orbit->>+server: POST /api/fleet/orbit/config
        server-->>-orbit: pending notifications
    end
    note over orbit: receive enrollment notification
    orbit->>windows: mdmregistration.dll<br/>RegisterDeviceWithManagement
    windows->>+server: POST /api/mdm/microsoft/discovery
    server-->>-windows: EnrollmentServiceURL, EnrollmentPolicyServiceUrl
    windows->>+server: POST /api/mdm/microsoft/policy<br/>DeviceEnrollmentUserToken
    server-->>-windows: Policy Schema, Certificate requirements
    activate windows
    note left of windows: Generate keypair
    deactivate windows
    windows->>+server: POST /api/mdm/microsoft/enroll<br/>Self-signed CSR & cert values
    note right of server: Creates certificate signed by WSTEP ident key
    server-->>-windows: Signed certificate, management endpoint, enrollment parameters
    loop SYNCML MDM Protocol (mTLS)
        windows->>+server: POST /api/mdm/microsoft/management
        server-->>-windows: Response
    end
```
2024-03-15 10:02:47 -04:00
Dante Catalfamo
797e12983c
Add diagram to texting-and-local-development explaining internal certificate generation flow (#17396)
```mermaid
sequenceDiagram
    participant user as user email
    participant fleetctl as fleetctl
    participant server as fleet server
    participant fleetdm as fleetdm.com sails app
    participant apple as identity.apple.com
    link apple: PushCert @ https://identity.apple.com/pushcert
    note over fleetctl: fleetctl login
    fleetctl->>+server: login
    server-->>-fleetctl: token
    note over fleetctl: fleetctl generate mdm_apple
    fleetctl->>+server: generate certificates
    server->>server: generate self-signed SCEP cert & key
    server->>server: generate APNs key
    server->>server: generate APNs CSR
    server-)+fleetdm: request vendor signature on APNs CSR
    server-->>-fleetctl: SCEP cert, SCEP key, APNs key
    note over fleetdm: calls /ee/tools/mdm/cert
    fleetdm--)-user: vendor-signed APNs CSR
    user->>+apple: vendor-signed APNs CSR
    note right of apple: managed through web ui
    apple-->>-user: Apple-signed APNs certificate
```
2024-03-15 10:01:51 -04:00
Sam Pfluger
7e4964385c
DRIs (#17614)
...
2024-03-14 10:24:53 -05:00
Luke Heath
3217e4ccf8
Specify node version required to build Fleet (#17578) 2024-03-13 17:29:15 -05:00
Luke Heath
70d369dcf7
Update Releasing-Fleet.md (#17436) 2024-03-07 15:17:37 -06:00
Victor Lyuboslavsky
165917b492
Doc changes for running live queries with team_id=0 (No team) (#17267)
Doc changes for #16350
2024-03-07 14:23:18 -06:00
Sharon Katz
2be6a32295
Update Releasing-Fleet.md (#17233)
Swap steps 1 and 3

---------

Co-authored-by: Luke Heath <luke@fleetdm.com>
2024-03-07 15:07:00 -05:00
Eric
dcaf2d0a4c
Website: update relative link validation in markdown content (#17213)
Closes: #16797

Changes:
- Updated `build-static-content` to throw an error if an extensionless
Markdown link containing a hash link is found.
- Fixed two broken relative links in the contributing documentation
2024-03-07 13:45:41 -06:00
Dante Catalfamo
e30640d701
Add mention of distutils in Building-Fleet (#17343)
Python >= 3.12 no longer ships with the `distutils` module out of the
box. It can be installed using `pip install setuptools`.

This may be fixed when updating node packages that rely on python, but
until then it may come up during `make deps`.

Reference: https://stackoverflow.com/a/76691103
2024-03-04 14:32:32 -05:00
Noah Talerman
2a60823a93
Update Kubernetes best practice docs (#16807)
- Remove example YAML file from docs to deduplicate
- Update "Prepare a new version of Fleet" handbook instructions to point
to the best practice YAML
- Add README to point to docs
- Move tools for deploying Fleet on Kubernetes to `Deploy/` folder.
- Add @dherder as CODEOWNER so that Dave gets pinged every time a
contributor wants to make a change to the Kubernetes

---------

Co-authored-by: Dave Herder <27025660+dherder@users.noreply.github.com>
Co-authored-by: Luke Heath <luke@fleetdm.com>
2024-02-27 22:49:48 -06:00
Noah Talerman
4b5a84b2f1
Add page to contributor docs for custom configuration web URL (#17081)
- Move instructions for how to use custom configuration_web_url (#15633)
to contributor docs so that change to instructions go through code
review.
2024-02-27 09:06:35 -05:00
Marko Lisica
290ffd48d7
Improve fleetctl CLI docs page (#16877)
Co-authored-by: Rachael Shaw <r@rachael.wtf>
2024-02-23 13:14:47 -06:00
Marko Lisica
489b45368e
API design: enable profiles based on labels (#15117)
API changes for the following story: 
- #14715

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Rachael Shaw <r@rachael.wtf>
Co-authored-by: Roberto Dip <me@roperzh.com>
2024-02-23 12:54:18 -06:00
Marko Lisica
e8f979d7cf
Move "Troubleshooting live queries" page to contributors docs (#16775)
- Cut down on user facing doc content so first time Fleet users can find
the right information. This could be moved into an "Advanced" section in
the future.
2024-02-19 16:39:12 +01:00
Noah Talerman
7fdda53dca
API design: Upcoming activities: Run scripts on online/offline hosts (#15931)
API changes for the "Upcoming activities: Run scripts on online/offline
hosts" (#15529) story

Changes:
- Script endpoints are available in Fleet Free and Fleet Premium
- Update `POST /scripts/run` to add a script to the bottom of the
upcoming activities
- Update `POST /scripts/run/sync`
- Add `GET /hosts/:id/activities` to show past activity feed
- Add `GET /hosts/:id/activities/upcoming` to show upcoming activity
feed
- Move docs for `GET /hosts/:id/scripts` to a new "Get host's scripts
section" under "Hosts"
2024-02-05 18:37:35 -05:00
Roberto Dip
d479f93f49
add internal docs to set end user email (#16573)
for #15057
2024-02-02 18:13:07 -03:00
Marko Lisica
99163d5dfc
MDM Custom settings (profiles) - API changes (#14230)
API changes for the Windows configuration profiles story:
- #13281 

It's **ready for review**, but marked as a draft because of KPI (PR open
time)

- DONE: Remove activity types changes before merging (those will be
automatically generated)

#### `profile_id` and `profile_uuid` changes specified in following
ticket:
- #15274

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Rachael Shaw <r@rachael.wtf>
2024-01-24 11:13:56 -06:00
Luke Heath
576405b029
Typo fix (#16306) 2024-01-23 16:52:05 -06:00
Luke Heath
0f245df4fe
Clarification and typo fix in releasing Fleet docs (#16266) 2024-01-22 17:13:07 -06:00
Noah Talerman
7a0e2089c4
API design: Get email w/o relying on end user (#15445)
- API changes for Get email w/o relying on end user: #15057
2024-01-10 17:29:51 -05:00
Marko Lisica
b45737d780
Vulnerability processing docs improvement (#15306) 2023-12-15 15:54:10 -06:00
Victor Lyuboslavsky
2520fc2179
Reduce server load for fleetd upgrade (#15606)
📺 Loom:
https://www.loom.com/share/9e17848963574af3aa10d426b450bcd0?sid=f8078293-c7e1-4864-a8a3-4cec996971f5

#15476 
#15540 
#15542

After upgrading fleetd, customer-blanco saw a spike in traffic and a
spike in DB connections. These fixes attempt to reduce the traffic and
DB load when fleetd is upgraded.

On the server, added fleet/device/{token}/ping endpoint to be used by
agents to check their token.

On the agent:
- Removed call to fleet/orbit/device_token unless token needs to be
updated.
- Changed call to fleet/device/{token}/desktop with a less resource
intensive call to fleet/device/{token}/ping
- Removed call to fleet/orbit/ping

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [x] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [x] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2023-12-13 14:31:48 -06:00
Luke Heath
300d318437
Cleaning up releasing Fleet docs (#15523) 2023-12-08 15:05:07 -06:00
Luke Heath
ff45facd81
Update releasing Fleet documentation (#15506) 2023-12-08 10:29:30 -06:00
Noah Talerman
845ef393bb
Update scripts docs (#15416)
- Simplify usage instructions to make it more like a reference
- Move "Run script asynchronously" to contributor docs so that user
facing API docs have one best practice API endpoint for scripts. Call
synchronous endpoint "Run script"
2023-12-06 12:40:42 -05:00
Martin Angers
6fd06d6486
Add back Windows Profiles documentation changes (#15358) 2023-12-04 08:41:37 -05:00
Roberto Dip
9c7b740b03
disable windows profiles feature in the back-end (#15278)
per discussion in slack, reverting relevant user-facing changes for
#13281
2023-11-27 16:08:52 -03:00
Sam Pfluger
b2899c402e
Handbook/company/leadership#structure-of-departmental-handbook-pages (#14811)
- Add Isabell to team table
- reorder contact-us in leadership page
- Standardize "Contact us" on all departmental pages
- Convert all responsibilities to imperative mood verb phrase
- Untangle and deduplicate Engineering <> Product groups <> Product

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
2023-11-21 13:55:46 -06:00
Marko Lisica
669be3a53c
Enroll hosts docs improvements (#14862)
Summary:
- Enroll hosts page refinement
- Since page was too long and had a lot of content I did following:
    - Moved most important sections to the top
- Did some changes to make things more consistent, when possible having
UI and CLI sections with steps (ordered list)
- Moved `Add hosts with plain osquery` to contributor docs, since I
learned this approach is used just by couple of Fleet customers, and we
don't advise this as best practice anymore
- Added overview (table of contents) on the top to make easier to
navigate through the page
- Moved some technical (advanced) topics into separate section on the
bottom of the page

---------

Co-authored-by: Noah Talerman <noahtal@umich.edu>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Rachael Shaw <r@rachael.wtf>
2023-11-20 19:39:41 +01:00
Roberto Dip
319b64f368
allow to set mdm.windows_settings.custom_settings in configs (#15145)
for #14361 this adds the bits related to saving a slice of strings with
paths to configuration profiles.

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
Co-authored-by: Marko Lisica <83164494+marko-lisica@users.noreply.github.com>
2023-11-15 13:58:46 -03:00
Eric
97c63c6c05
Docs: Add pageOrderInSection meta tag to high-level-architecture.md (#15090)
Changes:
- Added a pageOrderInSection meta tag to the high level architecture
page in the contributing docs. The missing meta tag is currently
preventing the Fleet website from deploying and causing the website
tests to fail.
2023-11-10 11:10:28 -06:00
Sharon Katz
014ff490d0
arch docs (#13382)
Tech docs
2023-11-10 10:06:54 -05:00
George Karr
93a4e9cc2b
Update Building-Fleet.md (#14761)
Fixing build instructions for Ubuntu as the previous instructions
install an incompatible version of npm / nodejs
2023-11-03 14:53:02 -05:00
Marko Lisica
de5695659a
Batch-apply scripts: parameters documented incorrectly (#14653)
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [ ] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [ ] Documented any permissions changes (docs/Using
Fleet/manage-access.md)
- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [ ] Added/updated tests
- [ ] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2023-10-26 10:59:10 +02:00
Roberto Dip
2f589ff37c
document flags required for fleetd error reporting (#14656)
For #13189, this documents the server config flag required to report
errors.
...
2023-10-19 23:49:18 -05:00
Rachael Shaw
10ed97e570
Docs: API changes for #7766 (#13484)
Draft PR to show API changes for #7766

#13469

---------

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-10-16 23:34:32 -05:00
Roberto Dip
9ffa11c25d
Feat: saved scripts (#14409)
For #9537
2023-10-10 19:00:45 -03:00
Marcos Oviedo
f0d77ab3db
Merging Bitlocker feature branch (#14350)
This relates to #12577

---------

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: Roberto Dip <dip.jesusr@gmail.com>
2023-10-06 19:04:33 -03:00
Noah Talerman
9c7079f50c
Windows MDM docs: turn on Windows MDM (#13943)
- Add new "Windows setup" page to "Device Management" section of docs
- Rename "MDM setup"  page to "macOS setup." Update links and add redirect
- Rename existing "macOS setup" page to "macOS setup experience." Update links. Did not add redirect because of conflict with "macOS setup" page
- Remove "MDM" from all MDM doc page titles
2023-10-04 15:39:09 -04:00
Katheryn Satterlee
8852709d6e
Update messaging for contributor API (#13494)
Added additional information about what differentiates the Contributor
API routes from the public API routes.

# Checklist for submitter

Docs-only change
2023-09-29 17:03:29 -05:00
Luke Heath
1e1e28791f
Document milestone release ritual (#13932) 2023-09-25 14:35:36 -05:00
Roberto Dip
e18b6bd52b
add missing docs for org_info (#13972)
As the title says, this adds missing docs for a feature we shipped a
while ago.

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
2023-09-22 19:15:37 -03:00
Eric
1b25187453
Docs: add syntax highlighting keywords to code blocks (#13963)
Closes: #13691

Changes: 
- Added keywords for syntax highlighting to code blocks in documentation
Markdown files.

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2023-09-22 16:57:40 -05:00
Roberto Dip
c508209e11
document migration webhooks (#13900)
This documents a few migration webhooks we have built, so I'm not the
only person that can run them.
2023-09-18 19:39:00 -03:00
Tim Lee
5bc6d30aa8
Add Description text to CVE Metadata (#13856) 2023-09-15 11:24:10 -06:00
Roberto Dip
ea6b59f179
upgrade Go version to 1.21.1 (#13877)
For #13715, this:

- Upgrades the Go version to `1.21.1`, infrastructure changes are
addressed separately at https://github.com/fleetdm/fleet/pull/13878
- Upgrades the linter version, as the current version doesn't work well
after the Go upgrade
- Fixes new linting errors (we now get errors for memory aliasing in
loops! 🎉 )

After this is merged people will need to:

1. Update their Go version. I use `gvm` and I did it like:

```
$ gvm install go1.21.1
$ gvm use go1.21.1 --default
```

2. Update the local version of `golangci-lint`:

```
$ go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.54.2
```

3. (optional) depending on your setup, you might need to re-install some
packages, for example:

```
# goimports to automatically import libraries
$  go install golang.org/x/tools/cmd/goimports@latest

# gopls for the language server
$ go install golang.org/x/tools/gopls@latest

# etc...
```
2023-09-13 15:59:35 -03:00