Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
141976b
Merge pull request #1369 from DefGuard/release/1.5-alpha
t-aleksander Aug 4, 2025
b589d42
Merge branch 'main' into release_1.5_merger
wojcik91 Sep 15, 2025
1d7b18c
Merge pull request #1577 from DefGuard/release_1.5_merger
wojcik91 Sep 15, 2025
e2a1f19
fix password reset grpc sending unparsed user agent (#1546)
j-chmielewski Sep 16, 2025
bdc6cab
Fixes pentest issue DG25-10 from 2025-09-02 (#1579)
j-chmielewski Sep 17, 2025
8f96c05
Do not display sensitive data from protos (#1580)
moubctez Sep 17, 2025
99e451e
Don't send empty strings when phone number is not provided (#1583)
j-chmielewski Sep 17, 2025
0910c8c
Fixes pentest issue DG25-17 from 2025-09-02 (#1581)
j-chmielewski Sep 18, 2025
bf0db2b
ensure openid client names don't contain HTML (#1587)
j-chmielewski Sep 18, 2025
56040c2
ensure login responses don't allow login enumeration (#1588)
j-chmielewski Sep 18, 2025
cd6e40c
Fixes pentest issue DG25-24 from 2025-09-02 (#1585)
moubctez Sep 18, 2025
858a17e
put mail handler into a separate crate (#1590)
wojcik91 Sep 19, 2025
ab48854
Cleanup and revive OpenID login test (#1591)
moubctez Sep 19, 2025
5045ba1
use default subject as fallback (#1593)
wojcik91 Sep 19, 2025
e351296
Fixes pentest issue DG25-25 and DG25-20 from 2025-09-02 (#1574)
t-aleksander Sep 19, 2025
5c54594
Fixes pentest issue DG25-32 from 2025-09-02 (#1597)
j-chmielewski Sep 22, 2025
63ed61b
fix document links (#1599)
wojcik91 Sep 22, 2025
3687ebd
Merge branch 'main' into main-1.5.1-merger
j-chmielewski Sep 26, 2025
6b82273
Merge pull request #1619 from DefGuard/main-1.5.1-merger
j-chmielewski Sep 26, 2025
7f339c0
Create SBOM files (#1620)
j-chmielewski Sep 26, 2025
fcb137a
CI: scan code with trivy (#1622)
j-chmielewski Sep 26, 2025
9d175b7
Return NotFound to proxy for missing OpenID provider (#1626)
moubctez Sep 29, 2025
e8754c5
Periodic sbom regeneration (#1627)
j-chmielewski Sep 29, 2025
8be6d9d
Switch to non-Alpine node:24 (#1628)
moubctez Sep 30, 2025
29a2f75
add missing error log messages (#1616)
wojcik91 Sep 30, 2025
8b9c242
verify audit log events in API integration tests (#1624)
wojcik91 Sep 30, 2025
d8b70a2
Upgrade Debian packages to get latest security fixes (#1648)
moubctez Oct 9, 2025
6083d31
APT uploading/signing workflow (#1655)
jakub-tldr Oct 20, 2025
2834e11
List whole directory (#1664)
jakub-tldr Oct 22, 2025
5cb6920
Properly validate IP address of endpoint in network wizard (#1667)
jakub-tldr Oct 23, 2025
68fe539
Service locations (Pre-logon, Always-on) (#1666)
t-aleksander Oct 26, 2025
e3a3b09
User enrollment pending (#1675)
j-chmielewski Oct 31, 2025
ce42a55
Merge branch 'main' into merger-pre-1.6
j-chmielewski Oct 31, 2025
cc477fd
Merge pull request #1680 from DefGuard/merger-pre-1.6
j-chmielewski Oct 31, 2025
dcfe3ed
allow "Apache-2.0 WITH LLVM-exception"
j-chmielewski Nov 3, 2025
9e83248
bump version to 1.6.0, bump dependencies
j-chmielewski Nov 3, 2025
37b76a6
remove unnecessary cargo-deny ignores
j-chmielewski Nov 3, 2025
4c97cce
pnpm update
j-chmielewski Nov 3, 2025
5c9c893
allow use of deprecated generic_array imports - used by sha1 dependency
j-chmielewski Nov 3, 2025
fa273a4
use aws docker repository for e2e
j-chmielewski Nov 3, 2025
45496e4
Basic client version reporting (#1688)
t-aleksander Nov 7, 2025
e6a13da
add option to pre-fetch OpenID directory users during sync (#1689)
wojcik91 Nov 7, 2025
53eccb8
add option to configure enrollment token duration (#1698)
wojcik91 Nov 12, 2025
465e5ae
fix(gRPC): improve handling device pubkey change (#1703)
wojcik91 Nov 13, 2025
48a672d
add invalid location address validation (#1707)
wojcik91 Nov 17, 2025
4b7d523
Attempt to add depends to FreeBSD package (#1709)
moubctez Nov 18, 2025
ac35f5b
remove ami (#1710)
t-aleksander Nov 18, 2025
b338cc8
Merge pull request #1706 from DefGuard/all-traffic-only
j-chmielewski Nov 20, 2025
0659ae1
Filter MFA locations on network devices modal, block creating devices…
jakub-tldr Nov 21, 2025
da226a8
Fix traffic policy settings styling (#1720)
j-chmielewski Nov 24, 2025
5aa68b2
Fix validator for ipv4 with port (#1723)
jakub-tldr Nov 25, 2025
3b3dc27
fix ipv4 validator (#1726)
j-chmielewski Nov 26, 2025
2f1af6b
RPM config fix (#1730)
jakub-tldr Nov 27, 2025
283ba12
Validator fix, Frontend unit testing (#1733)
jakub-tldr Dec 5, 2025
c15367f
Fix e2e test (#1742)
t-aleksander Dec 5, 2025
94a6e2a
update protos submodule
wojcik91 Dec 9, 2025
a9cf75c
Potential fix for code scanning alert no. 60: Workflow does not conta…
wojcik91 Dec 9, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .fpm
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
-s dir
--name defguard
--description "defguard core service"
--description "Defguard Core service"
--url "https://defguard.net/"
--maintainer "teonite"
--maintainer "Defguard"
--config-files /etc/defguard/core.conf
73 changes: 50 additions & 23 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,6 @@ jobs:

build-binaries:
needs: [create-release]

runs-on:
- self-hosted
- Linux
Expand Down Expand Up @@ -108,7 +107,7 @@ jobs:
- name: Install Rust stable
uses: actions-rs/toolchain@v1
with:
toolchain: 1.89.0
toolchain: 1.89.0 # "stable" causes rust-lld: error on aarch64-linux
target: ${{ matrix.target }}
override: true

Expand Down Expand Up @@ -173,26 +172,6 @@ jobs:
fpm_args: "defguard-${{ github.ref_name }}-${{ matrix.target }}=/usr/bin/defguard defguard.service=/usr/lib/systemd/system/defguard.service .env-template=/etc/defguard/core.conf"
fpm_opts: "--architecture ${{ matrix.arch }} --debug --output-type deb --version ${{ env.VERSION }} --package defguard-${{ env.VERSION }}-${{ matrix.target }}.deb"

- name: Run `packer init`
if: matrix.build == 'linux' && matrix.arch == 'amd64'
id: init
run: "packer init ./images/ami/core.pkr.hcl"

- name: Build AMI images for multiple regions
if: matrix.build == 'linux' && matrix.arch == 'amd64'
run: |
regions=(us-east-1 eu-west-1 ap-northeast-1 eu-central-1)
for region in "${regions[@]}"; do
echo "Building AMI for region: $region"
echo "Running packer validate for $region..."
packer validate --var "package_version=${{ env.VERSION }}" --var "region=$region" ./images/ami/core.pkr.hcl
echo "Building AMI image for $region..."
packer build -color=false -on-error=abort --var "package_version=${{ env.VERSION }}" --var "region=$region" ./images/ami/core.pkr.hcl
done
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

- name: Upload DEB
if: matrix.build == 'linux'
uses: actions/upload-release-asset@v1.0.2
Expand All @@ -204,6 +183,20 @@ jobs:
asset_name: defguard-${{ env.VERSION }}-${{ matrix.target }}.deb
asset_content_type: application/octet-stream

- name: Install ruby with deb-s3
if: matrix.build == 'linux'
run: |
sudo apt-get install -y ruby
gem install deb-s3
echo "$(ruby -r rubygems -e 'puts Gem.user_dir')/bin" >> $GITHUB_PATH

- name: Upload DEB to apt repository
if: matrix.build == 'linux'
run: |
COMPONENT=$([[ "${{ github.ref_name }}" == *"-"* ]] && echo "pre-release" || echo "release") # if tag contain "-" assume it's pre-release.

deb-s3 upload -l --bucket=apt.defguard.net --access-key-id=${{ secrets.AWS_ACCESS_KEY_APT }} --secret-access-key=${{ secrets.AWS_SECRET_KEY_APT }} --s3-region=eu-north-1 --no-fail-if-exists --codename=trixie --component="$COMPONENT" defguard-${{ env.VERSION }}-${{ matrix.target }}.deb

- name: Build RPM package
if: matrix.build == 'linux'
uses: defGuard/fpm-action@main
Expand All @@ -227,7 +220,7 @@ jobs:
uses: defGuard/fpm-action@main
with:
fpm_args: "defguard-${{ github.ref_name }}-${{ matrix.target }}=/usr/local/bin/defguard defguard.service.freebsd=/usr/local/etc/rc.d/defguard"
fpm_opts: "--architecture ${{ matrix.arch }} --debug --output-type freebsd --version ${{ env.VERSION }} --package defguard-${{ env.VERSION }}_${{ matrix.target }}.pkg --freebsd-osversion '*'"
fpm_opts: "--architecture ${{ matrix.arch }} --debug --output-type freebsd --version ${{ env.VERSION }} --package defguard-${{ env.VERSION }}_${{ matrix.target }}.pkg --freebsd-osversion '*' --depends openssl"

- name: Upload FreeBSD
if: matrix.build == 'freebsd'
Expand All @@ -239,3 +232,37 @@ jobs:
asset_path: defguard-${{ env.VERSION }}_${{ matrix.target }}.pkg
asset_name: defguard-${{ env.VERSION }}_${{ matrix.target }}.pkg
asset_content_type: application/octet-stream

apt-sign:
needs:
- build-binaries
runs-on:
- self-hosted
- Linux
- X64
steps:
- name: Sign APT repository
run: |
export AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_APT }}
export AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_KEY_APT }}
export AWS_REGION=eu-north-1
sudo apt update -y
sudo apt install -y awscli curl jq

for DIST in trixie; do
aws s3 cp s3://apt.defguard.net/dists/${DIST}/Release .

curl -X POST "${{ secrets.DEFGUARD_SIGNING_URL }}?signature_type=both" \
-H "Authorization: Bearer ${{ secrets.DEFGUARD_SIGNING_API_KEY }}" \
-F "file=@Release" \
-o response.json

cat response.json | jq -r '.files["Release.gpg"].content' | base64 --decode > Release.gpg
cat response.json | jq -r '.files.Release.content' | base64 --decode > InRelease

aws s3 cp Release.gpg s3://apt.defguard.net/dists/${DIST}/ --acl public-read
aws s3 cp InRelease s3://apt.defguard.net/dists/${DIST}/ --acl public-read

done
(aws s3 ls s3://apt.defguard.net/dists/ --recursive; aws s3 ls s3://apt.defguard.net/pool/ --recursive) | awk '{print "<a href=\""$4"\">"$4"</a><br>"}' > index.html
aws s3 cp index.html s3://apt.defguard.net/ --acl public-read
39 changes: 39 additions & 0 deletions .github/workflows/test-web.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
on:
push:
branches:
- main
- dev
- "release/**"
paths-ignore:
- "*.md"
- "LICENSE"
pull_request:
branches:
- main
- dev
- "release/**"
paths-ignore:
- "*.md"
- "LICENSE"

permissions:
contents: read
jobs:
test-web:
runs-on:
- codebuild-defguard-core-runner-${{ github.run_id }}-${{ github.run_attempt }}
steps:
- uses: actions/checkout@v4
with:
submodules: "recursive"
- uses: actions/setup-node@v4
with:
node-version: 24
- name: install deps
working-directory: ./web
run: |
npm i -g npm pnpm
pnpm i --frozen-lockfile
- name: Run tests
working-directory: ./web
run: pnpm run test
Comment thread Fixed

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

This file was deleted.

Loading
Loading