Skip to content

Installing on host

Bifröst runs as a host service on port 22. Sign in with an existing local user; the same configuration works on all three platforms.

Port 22 must be free: stop the existing SSH server first, and keep another way to access the machine.

SSH may warn that the server key changed; verify the change before continuing.

Use the archive from the same release as this page. These examples use AMD64 for Linux and Windows, ARM64 for macOS, and assume a fresh installation; for other systems see distributions, for upgrades see the upgrade notes.

Linux

Use the Linux extended edition and an existing local user:

1
2
3
4
5
6
7
curl -fLsS -o bifroest-linux-amd64-extended.tgz 'https://github.com/engity-com/bifroest/releases/download/v1.0.0-beta1/bifroest-linux-amd64-extended.tgz'
sudo tar -xzf bifroest-linux-amd64-extended.tgz -C /usr/bin bifroest
sudo install -d -m 0750 /etc/engity/bifroest
sudo curl -fLsS -o /etc/engity/bifroest/configuration.yaml 'https://raw.githubusercontent.com/engity-com/bifroest/v1.0.0-beta1/contrib/configurations/on-host.yaml'
sudo curl -fLsS -o /etc/systemd/system/bifroest.service 'https://raw.githubusercontent.com/engity-com/bifroest/v1.0.0-beta1/contrib/systemd/bifroest.service'
sudo systemctl daemon-reload
sudo systemctl enable --now bifroest.service

Log in with that user's SSH key or password:

1
ssh "$USER@localhost"

If login fails, check sudo journalctl -u bifroest.service. To revert, run sudo systemctl disable --now bifroest.service and restart the previous SSH server.

Windows

Use the Windows generic edition and an existing local user (not a domain account).

1
2
3
4
5
6
7
8
# Do the following commands in an elevated PowerShell window
$archive = Join-Path $env:TEMP 'bifroest-windows-amd64-generic.zip'
Invoke-WebRequest -Uri 'https://github.com/engity-com/bifroest/releases/download/v1.0.0-beta1/bifroest-windows-amd64-generic.zip' -OutFile $archive
New-Item -ItemType Directory -Force 'C:\Program Files\Engity\Bifroest' | Out-Null
Expand-Archive -LiteralPath $archive -DestinationPath 'C:\Program Files\Engity\Bifroest'
New-Item -ItemType Directory -Force 'C:\ProgramData\Engity\Bifroest' | Out-Null
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/engity-com/bifroest/v1.0.0-beta1/contrib/configurations/on-host.yaml' -OutFile 'C:\ProgramData\Engity\Bifroest\configuration.yaml'
& 'C:\Program Files\Engity\Bifroest\bifroest.exe' service install --configuration 'C:\ProgramData\Engity\Bifroest\configuration.yaml'

Log in with that user's SSH key or password:

1
ssh "$env:USERNAME@localhost"

If login fails, check Windows Event Viewer. To revert, stop Bifröst with & 'C:\Program Files\Engity\Bifroest\bifroest.exe' service remove and restart the previous SSH server.

macOS

Use the macOS generic edition and an existing local user:

1
2
3
4
5
6
7
8
curl -fLsS -o bifroest-darwin-arm64-generic.tgz 'https://github.com/engity-com/bifroest/releases/download/v1.0.0-beta1/bifroest-darwin-arm64-generic.tgz'
sudo install -d /usr/local/bin
sudo tar -xzf bifroest-darwin-arm64-generic.tgz -C /usr/local/bin bifroest
sudo install -d -o root -g wheel -m 0750 '/Library/Application Support/Engity/Bifroest'
sudo curl -fLsS -o '/Library/Application Support/Engity/Bifroest/configuration.yaml' 'https://raw.githubusercontent.com/engity-com/bifroest/v1.0.0-beta1/contrib/configurations/on-host.yaml'
sudo chown root:wheel '/Library/Application Support/Engity/Bifroest/configuration.yaml'
sudo chmod 0640 '/Library/Application Support/Engity/Bifroest/configuration.yaml'
sudo /usr/local/bin/bifroest service install

Log in with that user's SSH key or password:

1
ssh "$USER@localhost"

If login fails, check the logs in /Library/Logs/Engity/Bifroest. To revert, run sudo /Library/PrivilegedHelperTools/com.engity.bifroest service remove and re-enable Remote Login.

Next steps