Demo page

This page demonstrates how placeholders can be used. You can view the relevant files on GitHub:

  • docs/demo.md: the page's markdown with the placeholders and the input fields.
  • placeholder-plugin.yaml: Defines the page's placeholders. The relevant values are named DEMO_* and are at/near the top of the file.

Inputs

Expand to show general placeholder settings

Enter the values for your variables here:

Variable Value
Server IP
Server port
Binding to port requires sudo
File name to transfer
Netcat binary
HTTP client

These are your variables. They are also set for all other page (like the test page). However after changing them, you need to may need to reload the page to show the new values (depends on the configuration, here it should not be required).

Below you can see the placeholders in action.

Transfer files

You can transfer various files on linux systems using common command line tools. This assumes, that you want to transfer the file "xDEMO_FILENAMEx" to/from the server with the IP address xDEMO_SERVER_IPx. To successfully transfer the files, you need shell access (for example via SSH) to both systems (the server and the client).

netcat

upload (client -> server)

On the server run:

xDEMO_SUDOxxDEMO_NETCATx -lnp xDEMO_SERVER_PORTx | tee xDEMO_FILENAMEx

Then run the following on the client:

cat xDEMO_FILENAMEx | xDEMO_NETCATx xDEMO_SERVER_IPx xDEMO_SERVER_PORTx

download (server -> client)

On the server run:

cat xDEMO_FILENAMEx | xDEMO_SUDOxxDEMO_NETCATx -lnp xDEMO_SERVER_PORTx

Then run the following on the client:

xDEMO_NETCATx xDEMO_SERVER_IPx xDEMO_SERVER_PORTx | tee xDEMO_FILENAMEx

download with curl & python (server -> client)

This can be used to transfer files from the server to the client. Start a HTTP server on the server. Do not start it in your home directory, since all files in the directory will be made available:

mkdir public
cd public
cp ../xDEMO_FILENAMEx .
xDEMO_SUDOxpython -m http.server xDEMO_SERVER_PORTx

On the client run:

xDEMO_HTTP_CLIENT_COMMANDx