Skip to content

scionproto-contrib/caddy-scion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Caddy-SCION plugins

SCION plugins for the Caddy web server.

This includes:

User/admin setup

If you are looking for installing and configuring the SCION-HTTP proxy as a user or network administrator, please refer to the HTTP Proxy Documentation.

Developer setup

If you are looking for setting up a developer environment, you can directly refer to the Development Setup section.

E2E tests

You can run the E2E test as long as a SCION daemon is enabled for both the client and the server (which may even be the same daemon within the same AS). In practice this means that you can run the E2E test on a SCION enabled endhost or using the test environment. Additionally, add an entry to /etc/hosts of the form:

<target ISD-AS>,[<IP address used to reach SCION services>] scion.local

Where the <target ISD-AS> is the ISD-AS number the server is running on and <IP address used to reach SCION services> is the local address that your host uses to reach the SCION services, i.e. SCION border router and SCION Control service.

On a SCION enabled endhost, you can find out this address by inspecting the etc/scion/topology.json file:

"control_service": {
  "cs-1": {
    "addr": "<IP address used to reach SCION services>"
  },
  }

and then issuing:

$ sudo ip route get <IP address used to reach SCION services>

On the local development test environment, one can use 127.0.0.1.

To run the test, issue the following command, indicating the environment.json for your setup (used for the server):

SCION_ENV_FILE="/tmp/environment.json" go test \
  -timeout 30s \
  -tags=e2e \
  -v \
  -run .\* github.com/scionproto-contrib/caddy-scion/test \
  -sciond-address 127.0.0.1:30255

Additionally, if you do not have your SCION environment configuration on the default path, please specify it by setting the SCION_ENV_FILE environment variable. Note that for this test we only expect one AS to be indicated for the server, the format may be similar to:

{
  "ases": {
    "1-ff00:0:112": {
       "<target ISD-AS>": "<SCIOND-IP:SCIOND-PORT>"
    }
  }
}

Also modify the -sciond-address to point to the SCION Daemon that the client will use.