Compare commits

..

80 Commits

Author SHA1 Message Date
46ee60cbc9 fix: set latest tag 2023-09-23 22:31:27 +00:00
bca9ec3df7 fix: 401 2023-09-23 21:49:35 +00:00
5cd683cb7a fix: remove tag to hopefully fix digest pushing 2023-09-23 21:44:42 +00:00
8d550748cd fix: push by digest again 2023-09-23 21:39:53 +00:00
f8d73263fd fix: re-setup buildx 2023-09-23 21:33:13 +00:00
2c987a3bbe fix: push by digest is breaking things 2023-09-23 21:30:17 +00:00
be55349cef fix: correct deps 2023-09-23 21:28:42 +00:00
593036c8ad fix: correct multiplatform builds
because apparently manifests are too difficult
2023-09-23 21:27:47 +00:00
Conventional Changelog Action
74c33dff3e chore 🤖: Release v1.1.0 [skip ci] 2023-09-23 21:07:49 +00:00
aab5c079dc feat: multi-platform builds 2023-09-23 21:06:25 +00:00
Conventional Changelog Action
344e30a1f0 chore 🤖: Release v1.0.13 [skip ci] 2023-09-22 21:10:45 +00:00
d3f10891c8 sec: lower vuln threshold 2023-09-22 21:09:20 +00:00
Conventional Changelog Action
7eb72f78f3 chore 🤖: Release v1.0.12 [skip ci] 2023-09-22 21:04:55 +00:00
6e3c2690fc fix: correct double message 2023-09-22 21:03:32 +00:00
Conventional Changelog Action
b651c5f8e9 chore 🤖: Release v1.0.11 [skip ci] [skip ci] 2023-09-22 20:59:18 +00:00
9908f656e7 Merge pull request #21 from dangeroustech/biodrone/issue20
Biodrone/issue20
2023-09-22 21:57:40 +01:00
977df48644 fix: only alert on CVEs that have a fix 2023-09-22 20:54:49 +00:00
fed1c28602 fix: pull correct deb package 2023-09-22 20:50:14 +00:00
b5e79ae24d Fix Grype Detected Security Problemos
Fixes #20
2023-09-22 20:49:29 +00:00
Conventional Changelog Action
09370a89a7 chore 🤖: Release v1.0.10 [skip ci] [skip ci] 2023-09-22 20:46:03 +00:00
1c41eb9e1b Merge pull request #19 from dangeroustech/biodrone/issue11
Integrate Grype for Scanning
2023-09-22 21:44:42 +01:00
89e29531f0 fix: upload sarif file 2023-09-22 20:37:00 +00:00
ec84d91bc3 Integrate Grype for Scanning
Fixes #11
2023-09-22 20:31:11 +00:00
Conventional Changelog Action
9cc7d36434 chore 🤖: Release v1.0.9 [skip ci] [skip ci] 2023-09-22 20:27:17 +00:00
ab9c1c4816 ci: remove duplicate artifact upload 2023-09-22 20:26:27 +00:00
Conventional Changelog Action
f94f69a8f7 chore 🤖: Release v1.0.8 [skip ci] [skip ci] 2023-09-22 20:25:23 +00:00
24c26bea0d ci: specify file output 2023-09-22 20:24:38 +00:00
Conventional Changelog Action
3b4b067420 chore 🤖: Release v1.0.7 [skip ci] [skip ci] 2023-09-22 20:22:45 +00:00
8e6724ef25 ci: simplify sbom 2023-09-22 20:21:51 +00:00
Conventional Changelog Action
dfc86697e4 chore 🤖: Release v1.0.6 [skip ci] [skip ci] 2023-09-22 20:12:09 +00:00
3a0be9b7dd ci: running on published instead of just created 2023-09-22 20:11:06 +00:00
Conventional Changelog Action
e9b9340604 chore 🤖: Release v1.0.5 [skip ci] [skip ci] 2023-09-22 20:08:08 +00:00
c47edea183 ci: move sbom into it's own file 2023-09-22 20:07:21 +00:00
Conventional Changelog Action
ffb7b6f1db chore 🤖: Release v1.0.4 [skip ci] [skip ci] 2023-09-22 20:02:19 +00:00
44e70e01be ci: test shifting sbom around 2023-09-22 20:01:20 +00:00
Conventional Changelog Action
c35e2e6641 chore 🤖: Release v1.0.3 [skip ci] [skip ci] 2023-09-22 19:48:20 +00:00
22a62a4c6f Merge pull request #18 from dangeroustech/biodrone/issue12
Integrate syft for SBOM
2023-09-22 20:47:13 +01:00
ad8063651d Integrate syft for SBOM
Fixes #12
2023-09-22 19:41:17 +00:00
Conventional Changelog Action
8537d1c215 chore 🤖: Release v1.0.2 [skip ci] [skip ci] 2023-09-22 19:35:17 +00:00
c34324b998 fix: quick filter to not release on PRs 2023-09-22 19:34:26 +00:00
Conventional Changelog Action
278abf43b9 chore 🤖: Release v1.0.1 [skip ci] [skip ci] 2023-09-22 19:25:03 +00:00
bc56fb09ad ci: update workflow name 2023-09-22 19:23:33 +00:00
Conventional Changelog Action
9794058682 chore 🤖: Release v1.0.0 [skip ci] [skip ci] 2023-09-22 19:21:37 +00:00
48318331c8 Merge pull request #17 from dangeroustech/biodrone/issue16
Add a CI Release Process
2023-09-22 20:20:29 +01:00
ab80272f60 Add a CI Release Process
Fixes #16
2023-09-22 19:18:19 +00:00
d25c3a6c78 Merge pull request #15 from dangeroustech/biodrone/issue10
Update Actions Workflow to Push to registry.dangerous.tech
2023-09-22 16:19:55 +01:00
3a5eb50b13 fix: ci: use full registry name 2023-09-22 13:13:59 +00:00
f461592cbf chore: update dep versions 2023-09-22 13:11:59 +00:00
fc24b78d4a fix: ci: lowercase tag names 2023-09-22 13:03:36 +00:00
3b29bee4c6 fix: ci: use correct registry 2023-09-22 13:00:14 +00:00
7755601a81 Update Actions Workflow to Push to registry.dangerous.tech
Fixes #10
2023-09-22 12:58:31 +00:00
2fd87a92bd Merge pull request #14 from dangeroustech/add_pr_workflow
ci: run workflow on PR
2023-09-22 13:41:07 +01:00
b147b64d47 ci: run workflow on PR 2023-09-22 13:39:53 +01:00
b68f0a7027 Merge pull request #13 from dangeroustech/biodrone/issue9
Update ZeroTier Default Version
2023-09-22 13:25:57 +01:00
1298cea4fa fix: add openssl dep and remove pinning
will re-add pinning as a future task once the container works again
2023-09-22 12:23:33 +00:00
7f56fec689 fix: set proper workdir 2023-09-22 12:18:33 +00:00
dd0e88bbcf Update to latest ZT version
Fixes #9
2023-09-22 12:17:02 +00:00
c9f0407e8e Merge pull request #7 from dangeroustech/docs/formatting
docs📚 : spaces aren't spaces sometimes...
2021-10-27 11:35:12 +01:00
josh.jacobs
8e628a0c0d docs📚 : spaces aren't spaces sometimes... 2021-10-27 11:34:37 +01:00
8c691ddae6 Merge pull request #6 from dangeroustech/docs/add-prerequisites
docs 📚: add prerequisites
2021-10-27 10:53:27 +01:00
7f3784df9a docs 📚: add prerequisites 2021-10-27 10:52:30 +01:00
672005dfc7 Merge pull request #5 from dangeroustech/chore/1.6.6-bump
chore 🤖: bump binary version to 1.6.6
2021-10-27 10:47:51 +01:00
3cd18b4324 chore 🤖: bump binary version to 1.6.6 2021-10-27 10:46:47 +01:00
90cf5b1684 fix: allow bi-directional traffic initiation 2021-10-21 19:05:36 +01:00
5c7a14da17 ci: cleanup 2021-10-21 18:03:53 +01:00
a9fb0015ff ci: im tired forgive me 2021-08-17 16:26:01 +01:00
a72e845fc7 ci: sigh 2 electric boogaloo 2021-08-17 16:24:27 +01:00
0122360312 ci: sigh 2021-08-17 16:23:27 +01:00
2fc784c0ae ci: fix ci 2021-08-17 16:22:19 +01:00
97a4179d8e ci: add github action to push image 2021-08-17 16:14:14 +01:00
7d16c2b66d Merge pull request #4 from dangeroustech/feature/multiple_networks
feat: support multiple zt network joins
2021-08-13 12:44:41 +01:00
09424b35b4 docs: update readme to reflect changes 2021-08-13 12:44:19 +01:00
556195cd64 feat: support multiple zt network joins
feat: add ZT_BRIDGE to control bridge functionality
2021-08-13 12:31:24 +01:00
64e4a473e7 docs: TODO cleanup 2021-08-13 11:30:08 +01:00
3e65156a3c fix: standardise network env again 2021-08-13 11:28:16 +01:00
c3876c3251 Merge pull request #1 from dangeroustech/add-compose
add docker-compose.yml
2021-08-13 11:26:24 +01:00
f902dcc0c4 feat: add docker-compose.yml 2021-08-13 11:24:20 +01:00
0745296487 docs: comment formatting 2021-08-13 11:24:08 +01:00
6c4a1a6c1c style: cleaned up some useless debug info 2021-08-13 11:23:12 +01:00
6d4e2031cd Update README.md 2021-08-12 19:28:53 +01:00
9 changed files with 100021 additions and 33 deletions

157
.github/workflows/docker-build.yml vendored Normal file
View File

@@ -0,0 +1,157 @@
name: Publish Docker Image
on:
pull_request:
push:
branches:
- "main"
env:
REGISTRY_IMAGE: registry.dangerous.tech/dangeroustech/zerotierbridge
jobs:
Docker_Build:
name: "Docker Build And Release"
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
arch: ["amd64", "arm64"]
version: ["1.12.2"]
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Registry
id: login
uses: docker/login-action@v3
with:
registry: registry.dangerous.tech
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Build
id: docker_build
uses: docker/build-push-action@v5
with:
context: .
build-args: |
ARCH=${{ matrix.arch }}
VERSION=${{ matrix.version }}
push: true
platforms: linux/${{ matrix.arch }}
# tags: registry.dangerous.tech/dangeroustech/zerotierbridge:latest
outputs: type=image,name=${{ env.REGISTRY_IMAGE }},push-by-digest=true,name-canonical=true
- name: Export Digests
run: |
mkdir -p /tmp/digests
digest="${{ steps.docker_build.outputs.digest }}"
touch "/tmp/digests/${digest#sha256:}"
- name: Upload digest
uses: actions/upload-artifact@v3
with:
name: digests
path: /tmp/digests/*
if-no-files-found: error
retention-days: 1
MergeRefs:
name: "Do The Horrible Merge Thing"
runs-on: ubuntu-latest
needs:
- Docker_Build
steps:
- name: Download digests
uses: actions/download-artifact@v3
with:
name: digests
path: /tmp/digests
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Registry
id: login
uses: docker/login-action@v3
with:
registry: registry.dangerous.tech
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY_IMAGE }}
tags: |
# set latest tag for default branch
# https://github.com/docker/metadata-action#latest-tag
type=raw,value=latest,enable={{is_default_branch}}
- name: Create manifest list and push
working-directory: /tmp/digests
run: |
docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf '${{ env.REGISTRY_IMAGE }}@sha256:%s ' *)
- name: Inspect image
run: |
docker buildx imagetools inspect ${{ env.REGISTRY_IMAGE }}:${{ steps.meta.outputs.version }}
- name: Generate SBOM
uses: anchore/sbom-action@v0
id: sbom
with:
image: registry.dangerous.tech/dangeroustech/zerotierbridge:latest
registry-username: ${{ secrets.REGISTRY_USERNAME }}
registry-password: ${{ secrets.REGISTRY_PASSWORD }}
format: spdx-json
output-file: ./sbom.spdx.json
- name: Scan SBOM
uses: anchore/scan-action@v3
id: scan
with:
sbom: sbom.spdx.json
severity-cutoff: medium
fail-build: false
only-fixed: true
by-cve: true
- name: upload Anchore scan SARIF report
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: ${{ steps.scan.outputs.sarif }}
- name: Changelog
uses: TriPSs/conventional-changelog-action@v3
id: changelog
if: ${{ github.event_name != 'pull_request' }}
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
git-message: "chore 🤖: Release {version}"
output-file: "CHANGELOG.md"
tag-prefix: "v"
fallback-version: "1.0.0"
release-count: 0 # preserve all versions in changelog
skip-on-empty: false # otherwise we don't publish fixes
- name: Create Release
uses: softprops/action-gh-release@v1
id: release
if: ${{ steps.changelog.outputs.skipped == 'false' }}
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
with:
tag_name: ${{ steps.changelog.outputs.tag }}
name: ${{ steps.changelog.outputs.tag }}
body: ${{ steps.changelog.outputs.clean_changelog }}
files: |
sbom.spdx.json

103
CHANGELOG.md Normal file
View File

@@ -0,0 +1,103 @@
# [1.1.0](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.13...v1.1.0) (2023-09-23)
### Features
* multi-platform builds ([aab5c07](https://github.com/dangeroustech/ZeroTierBridge/commit/aab5c079dcd559b7c3123aa72d02f7691827083e))
## [1.0.13](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.12...v1.0.13) (2023-09-22)
## [1.0.12](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.11...v1.0.12) (2023-09-22)
### Bug Fixes
* correct double message ([6e3c269](https://github.com/dangeroustech/ZeroTierBridge/commit/6e3c2690fc612e42c1d2818cc8d4bdfb9d5e39ba))
## [1.0.11](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.10...v1.0.11) (2023-09-22)
### Bug Fixes
* only alert on CVEs that have a fix ([977df48](https://github.com/dangeroustech/ZeroTierBridge/commit/977df48644e0a7112dc25f9f04afa6d84ce87db9))
* pull correct deb package ([fed1c28](https://github.com/dangeroustech/ZeroTierBridge/commit/fed1c2860230d39aeb80178c79697c1c41fed23d))
## [1.0.10](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.9...v1.0.10) (2023-09-22)
### Bug Fixes
* upload sarif file ([89e2953](https://github.com/dangeroustech/ZeroTierBridge/commit/89e29531f070539935a93b6f55d791170ea42e72))
## [1.0.9](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.8...v1.0.9) (2023-09-22)
## [1.0.8](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.7...v1.0.8) (2023-09-22)
## [1.0.7](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.6...v1.0.7) (2023-09-22)
## [1.0.6](https://github.com/dangeroustech/ZeroTierBridge/compare/v0.0.1...v1.0.6) (2023-09-22)
## [1.0.5](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.4...v1.0.5) (2023-09-22)
## [1.0.4](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.3...v1.0.4) (2023-09-22)
## [1.0.3](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.2...v1.0.3) (2023-09-22)
## [1.0.2](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.1...v1.0.2) (2023-09-22)
### Bug Fixes
* quick filter to not release on PRs ([c34324b](https://github.com/dangeroustech/ZeroTierBridge/commit/c34324b998690edeadd3d680987587c0fe93c525))
## [1.0.1](https://github.com/dangeroustech/ZeroTierBridge/compare/v1.0.0...v1.0.1) (2023-09-22)
# [1.0.0](https://github.com/dangeroustech/ZeroTierBridge/compare/f902dcc0c4615801fb65e6c90342efe96789319f...v1.0.0) (2023-09-22)
### Bug Fixes
* add openssl dep and remove pinning ([1298cea](https://github.com/dangeroustech/ZeroTierBridge/commit/1298cea4fa1bad3141754e5218f449ec15e8469a))
* allow bi-directional traffic initiation ([90cf5b1](https://github.com/dangeroustech/ZeroTierBridge/commit/90cf5b1684b6221797b39af306c3fee9ce5bdb9e))
* ci: lowercase tag names ([fc24b78](https://github.com/dangeroustech/ZeroTierBridge/commit/fc24b78d4a1046ebc2b01560ed4b67e33418c30e))
* ci: use correct registry ([3b29bee](https://github.com/dangeroustech/ZeroTierBridge/commit/3b29bee4c642cf04c3af89a7c16f004531f83622))
* ci: use full registry name ([3a5eb50](https://github.com/dangeroustech/ZeroTierBridge/commit/3a5eb50b13cf7cab7939c4b49c14093189aae330))
* set proper workdir ([7f56fec](https://github.com/dangeroustech/ZeroTierBridge/commit/7f56fec6897635e37b3e5aa13e7c3bbfddbce5da))
* standardise network env again ([3e65156](https://github.com/dangeroustech/ZeroTierBridge/commit/3e65156a3c955fa6c6715a7d9e15a799c6f3f735))
### Features
* add docker-compose.yml ([f902dcc](https://github.com/dangeroustech/ZeroTierBridge/commit/f902dcc0c4615801fb65e6c90342efe96789319f))
* support multiple zt network joins ([556195c](https://github.com/dangeroustech/ZeroTierBridge/commit/556195cd64f33fbbc9244022c8a99af5284ffbb9))

View File

@@ -1,17 +1,19 @@
FROM debian:buster as stage FROM debian:bookworm as stage
ARG PACKAGE_BASEURL=https://download.zerotier.com/debian/buster/pool/main/z/zerotier-one ARG PACKAGE_BASEURL=https://download.zerotier.com/debian/bookworm/pool/main/z/zerotier-one
ARG ARCH=amd64 ARG ARCH=amd64
ARG VERSION=1.6.5 ARG VERSION=1.12.2
RUN apt-get update -qq && apt-get install -qq --no-install-recommends -y ca-certificates=20200601~deb10u2 curl=7.64.0-4+deb10u2 RUN apt-get update -qq && apt-get install -qq --no-install-recommends -y ca-certificates curl
RUN curl -sSL -o zerotier-one.deb "${PACKAGE_BASEURL}/zerotier-one_${VERSION}_${ARCH}.deb" RUN curl -sSL -o zerotier-one.deb "${PACKAGE_BASEURL}/zerotier-one_${VERSION}_${ARCH}.deb"
FROM debian:buster FROM debian:bookworm
RUN mkdir /app
WORKDIR /app
COPY --from=stage zerotier-one.deb . COPY --from=stage zerotier-one.deb .
RUN apt-get update -qq && apt-get install -qq --no-install-recommends -y procps=2:3.3.15-2 iptables=1.8.2-4 \ RUN apt-get update -qq && apt-get install -qq --no-install-recommends -y procps iptables openssl \
&& apt-get clean \ && apt-get clean \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
RUN dpkg -i zerotier-one.deb && rm -f zerotier-one.deb RUN dpkg -i zerotier-one.deb && rm -f zerotier-one.deb
RUN echo "${VERSION}" >/etc/zerotier-version RUN echo "${VERSION}" >/etc/zerotier-version
COPY entrypoint.sh /entrypoint.sh COPY entrypoint.sh entrypoint.sh
RUN chmod 755 /entrypoint.sh RUN chmod 755 entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"] ENTRYPOINT ["/app/entrypoint.sh"]

View File

@@ -4,9 +4,11 @@ A container to provide out-of-the-box bridging functionality to a ZeroTier netwo
## Running ## Running
`docker build -t zerotierbridge .` ### Prerequisites
`docker run --privileged -e ZT_NETWORK=NETWORK_ID_HERE zerotierbridge:latest` - Docker running as your logged in user (i.e. not having to run `sudo docker-compose xyz`) - [Linux instructions here](https://docs.docker.com/engine/install/linux-postinstall/)
### ZeroTier UI Changes
Once running, log into your ZeroTier interface and approve the new device. Click the wrench next to the name and select 'Allow Ethernet Bridging.' Once running, log into your ZeroTier interface and approve the new device. Click the wrench next to the name and select 'Allow Ethernet Bridging.'
@@ -16,13 +18,34 @@ You also need to add a static route into ZeroTier so that the traffic is routed
![brave_4wHd9zo193](https://user-images.githubusercontent.com/1135584/129230132-11bcfb72-7d9b-4b40-a4e5-72130c583077.png) ![brave_4wHd9zo193](https://user-images.githubusercontent.com/1135584/129230132-11bcfb72-7d9b-4b40-a4e5-72130c583077.png)
### Caveat: Architecture ### Docker Compose
**You need to edit the `ZT_NETWORKS` and `ARCH` variable in the `docker-compose.yml` file first to add your networks and make sure your acrhitecture is correct (see [this page](http://download.zerotier.com/debian/buster/pool/main/z/zerotier-one/) for examples, usually either amd64 or arm64)**
Easy one-liner for Docker Compose:
`docker-compose build && docker-compose up -d`
If you want to disable bridging, set `ZT_BRIDGE=false`. This can be done after the initial networks have been joined (just rebuild the container), as the ZeroTier config persists but IPTables forwarding is done on each container startup.
### OG Docker
`docker build -t zerotierbridge .`
`docker run --privileged -e ZT_NETWORKS=NETWORK_ID_HERE -e ZT_BRIDGE=true zerotierbridge:latest`
Add your network ID(s) into the `ZT_NETWORKS` argument, space separated.
Disable bridging by passing `ZT_BRIDGE=false`. This can be done after the initial networks have been joined (just rebuild the container), as the ZeroTier config persists but IPTables forwarding is done on each container startup.
#### Persistent Storage
If you would like the container to retain the same ZeroTier client ID on reboot, attach a volume as per the below.
`docker run --privileged -e ZT_NETWORKS=NETWORK_ID_HERE ZT_BRIDGE=true --volume zt_config:/var/lib/zerotier-one/ zerotierbridge:latest`
#### Caveat: Architecture
If you need to run this on a device with different architecture (a raspberry pi, for instance), then just edit line 3 of the Dockerfile. If you need to run this on a device with different architecture (a raspberry pi, for instance), then just edit line 3 of the Dockerfile.
If you were using a Raspberry Pi 4, you would change this to `ARCH=arm64` and the container will pull the correct ZeroTier installer. If you were using a Raspberry Pi 4, you would change this to `ARCH=arm64` and the container will pull the correct ZeroTier installer.
## TODO
- Add docker-compose.yml
- Add kubernetes deployment YAML

View File

@@ -0,0 +1,15 @@
version: "3"
services:
zerotierbridge:
container_name: zerotierbridge
image: registry.dangerous.tech/dangeroustech/zerotierbridge
restart: always
privileged: true
volumes:
- zt_config:/var/lib/zerotier-one
environment:
- ZT_NETWORKS=NETWORK_ID_1 NETWORK_ID_2 NETWORK_ID_3
- ZT_BRIDGE=true
volumes:
zt_config:

View File

@@ -14,27 +14,37 @@ do
sleep 1 sleep 1
done done
echo "joining networks: $ZT_NETWORK" # Set IPTables to allow NATting
sysctl -w net.ipv4.ip_forward=1 > /dev/null
echo "joining $ZT_NETWORK" echo "joining networks: $ZT_NETWORKS"
while ! zerotier-cli join "$ZT_NETWORK" for n in $ZT_NETWORKS
do do
echo "joining $ZT_NETWORK failed; trying again in 1s" echo "joining $n"
while ! zerotier-cli join "$n"
do
echo "joining $n failed; trying again in 1s"
sleep 1 sleep 1
done
if [ "$ZT_BRIDGE" = "true" ]
then
echo "Configuring iptables on $(zerotier-cli get $n portDeviceName)"
PHY_IFACE=eth0; ZT_IFACE=$(zerotier-cli get $n portDeviceName)
iptables -t nat -A POSTROUTING -o $PHY_IFACE -j MASQUERADE
iptables -t nat -A POSTROUTING -o $ZT_IFACE -j MASQUERADE
iptables -A FORWARD -i $PHY_IFACE -o $ZT_IFACE -j ACCEPT
iptables -A FORWARD -i $ZT_IFACE -o $PHY_IFACE -j ACCEPT
fi
done done
# Give ZT a second realise it's online
sleep 10
### Set IPTables to allow NATting # Print Client Info
echo "setting up NATting" echo "$(zerotier-cli info)"
sysctl -w net.ipv4.ip_forward=1
PHY_IFACE=eth0; ZT_IFACE=$(ls /sys/class/net | grep ^zt)
iptables -t nat -A POSTROUTING -o $PHY_IFACE -j MASQUERADE
iptables -A FORWARD -i $PHY_IFACE -o $ZT_IFACE -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i $ZT_IFACE -o $PHY_IFACE -j ACCEPT
echo "iptables --list-rules"
echo "$(ip a)"
sleep infinity sleep infinity

3
package.json Normal file
View File

@@ -0,0 +1,3 @@
{
"version": "1.1.0"
}

16
results.sarif Normal file
View File

@@ -0,0 +1,16 @@
{
"version": "2.1.0",
"$schema": "https://json.schemastore.org/sarif-2.1.0-rtm.5.json",
"runs": [
{
"tool": {
"driver": {
"name": "Grype",
"version": "0.63.0",
"informationUri": "https://github.com/anchore/grype"
}
},
"results": []
}
]
}

99659
sbom.spdx.json Normal file

File diff suppressed because it is too large Load Diff