Compare commits

..

2 commits

4 changed files with 13 additions and 40 deletions

4
.gitignore vendored
View file

@ -32,3 +32,7 @@ report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json
# Finder (MacOS) folder config # Finder (MacOS) folder config
.DS_Store .DS_Store
# Hostkeys
host.key
host.key.pub

View file

@ -1,38 +0,0 @@
-----BEGIN OPENSSH PRIVATE KEY-----
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
-----END OPENSSH PRIVATE KEY-----

View file

@ -1 +0,0 @@
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDPXG3OLEYlb53XPbL5cqPpGby+2XIgKc1eIbi/o1XOfAKLvxO7Kwl86s/Uqz4bZwXGqK3N3/QytjXtyg8fsYNasBjAZos3BwX0VkUpdmOkh62jeKG8au6ftX0QC/5DHF4jv6/tFaH3tyLdhAVj2J4XnY2O2u6f3MVWJb8lFxDfhqzED9wggAP96RRwXpnbBV82JGcXhs1i8NPlJuTYMrYAEqwlayMZ7L48rTL7JMRHqryGVf5DZft+4B43f5r/9JUei+qSeJzgyCeM1rK9jT9DukDjFaUA/xS3HeRSj1slyd8iMrbYid8Mu4XR6rYWeZTxjz7D/FXtVyO81/EvVLpVoWINbdeelWo9KiyaCjPsO7PR+mOncfkewxOmau7iCXXdR13eQSJIJ+7DAK4ZF6IUltzjotRrRaMNKPNrthgYoEBE7GYrzsjpCaMqxcj4i2e4P1U495a3t9umv4BW7k12Uu2lsneAYP0xyYxYx4/d81/uyu0+f5/iYKdkZ32MX9c= feror@MBP-de-Feror.local

View file

@ -1,5 +1,6 @@
import { Server, type ServerChannel } from "ssh2"; import { Server, type ServerChannel } from "ssh2";
import Front, { newLine } from "./front"; import Front, { newLine } from "./front";
import { $ } from "bun";
import { eraseScreen, cursorTo, cursorHide, cursorShow, clearTerminal } from "ansi-escapes"; import { eraseScreen, cursorTo, cursorHide, cursorShow, clearTerminal } from "ansi-escapes";
import ContactForm from "./contact/ContactForm"; import ContactForm from "./contact/ContactForm";
@ -27,9 +28,16 @@ const inputCodes = {
}, },
}; };
// If ./host.key doesn't exist, generate a new one
try {
await Bun.file("./host.key").stat();
} catch {
await $`ssh-keygen -t rsa -b 4096 -f host.key -N "password"`;
}
const server = new Server( const server = new Server(
{ {
hostKeys: [await Bun.file("./host.key").text()], hostKeys: [{ key: await Bun.file("./host.key").text(), passphrase: "password" }],
ident: "portfolio.sh", ident: "portfolio.sh",
}, },
(client) => { (client) => {