Files created in the on-premises labs¶
Directories created on your Ubuntu KVM guest¶
Directory | Purpose |
---|---|
x509Work | High-level directory for doing x509 work |
x509Work/GREP11Client | Directory for creating certificate for your GREP11 Client code |
x509Work/rsyslog | High-level directory for x509 work related to rsyslog service on your Ubuntu KVM guest |
x509Work/rsyslog/CA | Directory that holds a Certificate Authority certificate for your rsyslog service |
x509Work/rsyslog/clients | For each lab you send a CSR to this directory from your host RHEL userid |
x509Work/rsyslog/server | You use this as a working directory to create the rsyslog service's certificate |
hpcs-grep11-go | From the GREP11 lab, this is where the GitHub repo is cloned so that you can modify and run the sample GREP11 code |
paynow-website | From the PayNow lab, this is where the GitHub repo is cloned so that you can build and run the OCI image |
Directories created in your host RHEL studentxx userid's home directory¶
Directory | Purpose |
---|---|
grep11Lab | High-level directory for Grep11 Lab |
grep11Lab/contract | High-level directory for creating the contract used by the HPVS KVM guest for the GREP11 Server |
grep11Lab/contract/environment | Directory used by the "workload deployer" persona to create the environment section of the contract |
grep11Lab/contract/environment/rsyslog | Directory to contain the x509 material needed to establish a mutual TLS connection with the rsyslog service that you set up on your Ubuntu KVM guest |
grep11Lab/contract/workload | Directory used by the "workload provider" persona to create the workload section of the contract |
grep11Lab/contract/workload/compose | Directory containing the Docker Compose file and files referenced by the Docker Compose file |
grep11Lab/x509Work | High-level directory for x509 work |
grep11Lab/x509Work/CENA4SEEClient | Directory used for creating client certificate for access to the CENA4SEE server. Your HPVS GREP11 Server is a client to the CENA4SEE server. |
grep11Lab/x509Work/GREP11Server | High-level directory for x509 work related to the GREP11 Server and mutual authentication with its clients (the sample GREP11 client code in this lab) |
grep11Lab/x509Work/GREP11Server/CA | Directory that holds a Certificate Authority certificate for the GREP11 Server |
grep11Lab/x509Work/GREP11Server/clients | You send a CSR to this directory from your Ubuntu guest on behalf of your GREP11 Client code which runs in your Ubuntu guest |
grep11Lab/x509Work/GREP11Server/server | You use this as a working directory to create the GREP11 server's certificate |
grep11Lab/x509Work/rsyslogClient | work directory used for creating the client certificate that will allow your HPVS GREP11 Server to send log messages to your rsyslog service running on your Ubuntu guest |
paynowLab | High-level directory for the PayNow Lab |
paynowLab/contract | High-level directory for creating the contract used by the HPVS KVM guest for the PayNow app |
paynowLab/contract/environment/rsyslog | Directory to contain the x509 material needed to establish a mutual TLS connection with the rsyslog service that you set up on your Ubuntu KVM guest |
paynowLab/contract/workload | Directory used by the "workload provider" persona to create the workload section of the contract |
paynowLab/contract/workload/play | Directory containing the pod descriptor file which specifies the OCI image to run |
paynowLab/x509Work | High-level directory for x509 work |
paynowLab/x509Work/rsyslogClient | work directory used for creating the client certificate that will allow your HPVS PayNow app to send log messages to your rsyslog service running on your Ubuntu guest |
Files in your Ubuntu guest's x509work/GREP11Client/ directory¶
File | Comments |
---|---|
client.cnf | Configuration file used so that openssl command does not ask interactive questions |
client.csr | Certificate signing request you create and then send to the "GREP11 CA" registrar on your host RHEL account |
client.key | Private key associated with your GREP11 client certificate |
client.pem | GREP11 client certificate that your "GREP11 CA" registrar on your host RHEL account sends to you |
Files in your Ubuntu guests's x509Work/rsyslog/CA/ directory¶
File | Comments |
---|---|
ca-key.pem | Private key you create for your CA certificate for rsyslog |
ca-req.csr | CSR request you create which you use to create the CA certificate for rsyslog |
ca.cnf | Configuration file used so that openssl command does not ask interactive questions |
ca.crt | Self-signed CA certificate for the CA used by the rsyslog service and its clients. In our labs the client to rsyslog is the HPVS guest you create in each lab |
Files in your Ubuntu guests's x509Work/rsyslog/clients/ directory¶
File | Comments |
---|---|
grep11Lab-client-req.csr | CSR sent to you from your host RHEL userid so that the HPVS GREP11 Server can authenticate with rsyslog |
grep11Lab-client.crt | Certificate you create on your Ubuntu guest and then send to your host RHEL userid |
paynowLab-client-req.csr | CSR sent to you from your host RHEL userid so that the HPVS PayNow app can authenticate with rsyslog |
paynowLab-client.crt | Certificate you create on your Ubuntu guest and then send to your host RHEL userid |
Files in your Ubuntu guest's x509Work/rsyslog/server/ directory¶
File | Comments |
---|---|
server-key.pem | private key you create which is used with your rsyslog service's certificate |
server-req.csr | CSR you create so that your "rsyslog CA" registrar can create your rsyslog service's certificate |
server.cnf | Configuration file used so that openssl command does not ask interactive questions |
server.crt | rsyslog service's certificate that your "rsyslog CA" registrar creates from your CSR |
Files in your host RHEL studentxx's grep11Lab/contract/environment/rsyslog/ directory¶
File | Comments |
---|---|
ca.crt | The self-signed CA certificate used by the rsyslog service and its clients. You copy it from your Ubuntu KVM host, which is where the rsyslog service and its CA reside. |
client-key-pkcs8.pem | This is your HPVS GREP11 Server's private key used for authentication with the rsyslog service, after it has been converted to PKCS #8 format |
grep11Lab-client.crt | This is your HPVS GREP11 Server's client certificte used for authentication with the rsyslog service. It is created by your "rsyslog CA" registrar on your Ubuntu guest, sent to you in your working directory, and from there you copy it into this directory so that it can be included in the workload section of the contract |
Files in your host RHEL studentxx's grep11Lab/contract/environment/ directory¶
File | Comments |
---|---|
env.yaml.plaintext | This file is created by the flow.env convenience script and is in plaintext. It is used within the flow.env script as input to produce an encrypted environment section of the contract. In this lab we've left the script intact for educational purposes. In a production environment you would either delete this plaintext file or restrict access to it as it contains sensitive information. |
flow.env | This is a convenience script that encompasses many of the manual commands that are listed in the product documentation. Careful study of this script will be worthwhile for those who want a deep understanding of how an environment section of the contract is created and encrypted. |
pubSigningKey.yaml | This is the public key corresponding to the private key that is used to sign the contract. It is created by the flow.prepare convenience script and then added to the environment section of the contract. The HPCR runtime uses this to verify the signature on the contract. |
Files in your host RHEL studentxx's grep11Lab/contract/workload/compose/ directory¶
File | Comments |
---|---|
c16client.yaml | Configuration file for the connection between your HPVS GREP11 Server and the Crypto Express Network API for Secure Execution Enclaves (CENA4SEE) appliance |
c16server-ca.pem | The self-signed CA certificate used by the CENA4SEE appliance and its clients. It is created by the instructors and copied into this directory by you during the lab. All students share a single CENA4SEE appliance, so control of this appliance's CA is in the hands of the instructors. |
c16server-client.key | Private key you create used for authentication between your HPVS GREP11 Server and the CENA4SEE appliance. |
c16server-client.pem | Certificate created for you by the instructors and used for authentication between your HPVS GREP11 Server and the CENA4SEE appliance. All students share a single CENA4SEE appliance, so control of this appliance's CA is in the hands of the instructors, which is why the instructors have to create this certificate for you. |
c16server-restricted-server.pem | This is the CENA4SEE appliance's server certificate. It is specified in the c16client.yaml file which prevents the GREP11 Server from communicating with the CENA4SEE appliance if it does not present this certficiate. |
docker-compose.yml | This file specifies the OCI image for the application worklaod (the GREP11 Server in this case), as well as references to several files that the GREP11 Server needs. |
grep11-ca.pem | The self-signed CA certificate for the "GREP11 Server" CA. It is required for mutual TLS authentication with clients to the GREP11 Server. |
grep11-server.key | The private key used by the GREP11 Server's server certificate. It is required for mutual TLS authentication with clients to the GREP11 Server. |
grep11-server.pem | The GREP11 Server's server certificate. It is required for mutual TLS authentication with clients to the GREP11 Server. |
grep11server.yaml | Configuration file that governs communication with GREP11 clients and also specifies with crypto card domain on the CENA4SEE appliance LPAR this GREP11 Server is associated with. |
Files in your host RHEL studentxx's grep11Lab/contract/workload/ directory¶
File | Comments |
---|---|
flow.workload | This is a convenience script that encompasses many of the manual commands that are listed in the product documentation. Careful study of this script will be worthwhile for those who want a deep understanding of how a workload section of the contract is created and encrypted. |
workload.yaml.plaintext | This file is created by the flow.workload convenience script and is in plaintext. It is used within the flow.workload script as input to produce an encrypted workload section of the contract. In this lab we've left the script intact for educational purposes. In a production environment you would either delete this plaintext file or restrict access to it as it contains sensitive information. In some use cases the workload deployer persona would never even have access to the plaintext workload section because the workload provider persona would provide the workload section that is already encrypted by the Hyper Protect Container Runtime image's public key. |
Files in your host RHEL studentxx's grep11Lab/contract/ directory¶
File | Comments |
---|---|
contract.yaml | This is an intermediate file created by the flow.signature script. It is the concatenation of the encrypted workload and the encrypted environment sections of the contract. It is then signed in the flow.signature script and the signature is then appended to ths file to product the final contract that is passed to the HPVS instance |
env.yaml | Intermediate file created by the flow.env script. It is the encrypted environment section of the contract. |
flow.clear | Convenience script that deletes some of the intermediate files created by the convenience scripts. |
flow.prepare | Convenience script that creates an RSA key pair which will be used to sign the encrypted environment and workload sections of the contract. |
flow.signature | Convenience script that signs the encrypted environment and workload sections of the contract using the RSA key pair created by flow.prepare. flow.signature then appends the signature to the encrypted sections that it just signed. |
makeContract | High-level, or "wrapper", script that runs all of the "flow.*" scripts in the proper order in order to create the contract |
meta-data | Input file used in created the ISO image. It contains the hostname that will be assigned to the HPVS instance. |
private.pem | Private key created in flow.prepare that is used to create the signature over the contract. |
public.pem | Public key created in flow.prepare. It is passed to the contract so that the HPCR can verify the signature on the contract. |
signature.yaml | The signature over the contract, created in flow.signature and then added to the contract as the 'envWorkloadSignature' key. |
user-data | Output of the makeContract script, it is the signed and encrypted contract. |
user_data.yaml | A copy of user-data that is then used as input to the genisoimage command that generates the ISO image that contains the contract |
vendor-data | Input to the command that generates the ISO image. Not much of interest in it for these labs. |
workoad.yaml | Intermediate file created by the flow.workload script. It is the encrypted workload section of the contract. |
Files in your host RHEL studentxx's grep11Lab/x509Work/CENA4SEEClient/ directory¶
File | Comments |
---|---|
c16server-client.csr | CSR for your GREP11 Server, which will be used by the instructors to create your GREP11 Server's certificate that will allow it to authenticate with the CENA4SEE Server. |
c16server-client.key | Private key associated with your GREP11 Server's certificate that will allow it to authenticate with the CENA4SEE Server. |
c16server-client.pem | Certificate created by the instructors that will allow your HPVS GREP11 Server to communicate with the CENA4SEE Serer. |
csr.cfg | Configuration file used in created the CSR that will prevent interactive questions during the CSR creation. |
Files in your host RHEL studentxx's grep11Lab/x509Work/GREP11Server/CA/ directory¶
File | Comments |
---|---|
ca.cnf | Configuration file used to avoid interactive questions while creating the CSR |
grep11-ca-key.pem | Private key associated with the self-signed CA root certificate used for authentication between the GREP11 Server and its clients. |
grep11-ca.pem | Self-signed CA root certificate used for authentication between the GREP11 Server and its clients. |
grep11-ca.srl | File created during the creation of the self-signed CA root certificate |
grep11-server.csr | Copy of the GREP11 Server CSR request that you create in the '../server' directory and then copy into this directory. Think of the '../server' directory as belonging to a "GREP11 Server administrator" persona and the directory in this table as belong to a "GREP11 CA Registrar" persona. |
grep11-server.pem | The GREP11 Server certificate that the "GREP11 CA Registrar" persona creates in this directory and then copies to the "../server" directory. |
server.cnf | Configuration file to avoid interactive questions |
Files in your host RHEL studentxx's grep11Lab/x509Work/GREP11Server/clients/ directory¶
File | Comments |
---|---|
client.csr | CSR sent from your Ubuntu KVM guest |
client.pem | Certificate that you create on behalf of your GREP11 Client code. You send this certificate back to your Ubuntu KVM guest so that your GREP11 Client code that runs there can authenticate with your HPVS GREP11 Server. |
Files in your host RHEL studentxx's grep11Lab/x509Work/GREP11Server/server/ directory¶
File | Comments |
---|---|
grep11-ca.pem | A copy of the "GREP11 CA" Registrar's self-signed public CA certificate. Copying it from the "../CA" directory to this directory is simply a simulation of a real-world scenario where the "GREP11 Server administrator" persona would obtain this certificate by some means. |
grep11-server.csr | The CSR that the "GREP11 Server administraro" creates and then copies to the "../CA" directory as s simulation of a real-world scenario where the "GREP11 Server administrator" would send a CSR to the "GREP11 CA Registrar". |
grep11-server.pem | The "GREP11 CA Registrar" creates this in the "../CA" directory and then copies it here in a simulation of a real-world scenario where the "GREP11 CA Registrar" creates the certificate and then delivers it to the "GREP11 Server administrator" by some means. |
serverCSR.cnf | Configuration file used to avoid interactive questions. |
Files in your host RHEL studentxx's grep11Lab/x509Work/rsyslogClient/ directory¶
File | Comments |
---|---|
client.cnf | Configuration file used to avoid interactive questions. |
client-key.pem | Private key associated with the CSR you create (and the certificate created from the CSR) that is used in authenticating your HPVS GREP11 Server to the rsyslog service that you set up on your Ubuntu KVM guest. |
grep11Lab-client.crt | Certificate created on your Ubuntu KVM guest by your "Rsyslog CA Registrar" persona and then sent to you here by that persona. |
grep11Lab-client-req.csr | CSR that you create here and then send to your Ubuntu KVM guest, where the "Rsyslog CA Registrar" persona creates the certificate. |
Last update:
December 11, 2023
Created: December 11, 2023
Created: December 11, 2023