Simple golang webserver that listens for basic auth or post requests and sends a notification when a user enters a password.
You need to add your custom templates and post the username
and password
parameter to /login
when using the post mode.
its-a-trap/custom
├── assets
│ └── styles.css
└── templates
├── finish.html
└── index.html
This will serve index.html
and show finish.html
upon sending a post request. You can use the asset_folder
to store your custom assets needed for the templates. In basic auth mode only finish.html
is shown.
{
"server": {
"listen": "127.0.0.1",
"port": 8000
},
"method": "basic",
"cloudflare": false,
"timeout": "5s",
"basic": {
"realm": "restricted",
},
"template": {
"folder": "./custom/templates",
"index_template": "index.html",
"finish_template": "finish.html",
"asset_folder": "./custom/assets"
}
}
{
"server": {
"listen": "127.0.0.1",
"port": 8000
},
"method": "post",
"cloudflare": false,
"timeout": "5s",
"template": {
"folder": "./custom/templates",
"index_template": "index.html",
"finish_template": "finish.html",
"asset_folder": "./custom/assets"
}
}
In POST mode you have access to the following variables inside the template:
{{ .LoginURL }}
– The URL to post to{{ .UsernameParameter }}
– the username parameter name{{ .PasswordParameter }}
– the password parameter nameExample:
<form action="{{ .LoginURL }}" method="post">
<label for="fname">Username:</label>
<input type="text" id="fname" name="{{ .UsernameParameter }}"><br><br>
<label for="fpass">Password:</label>
<input type="password" id="fpass" name="{{ .PasswordParameter }}"><br><br>
<input type="submit" value="Submit">
</form>
Introduction to the Model Context Protocol (MCP) The Model Context Protocol (MCP) is an open…
While file extensions in Linux are optional and often misleading, the file command helps decode what a…
The touch command is one of the quickest ways to create new empty files or update timestamps…
Handling large numbers of files is routine for Linux users, and that’s where the find command shines.…
Managing files and directories is foundational for Linux workflows, and the mv (“move”) command makes it easy…
Creating directories is one of the earliest skills you'll use on a Linux system. The mkdir (make…