Liminal enables you to deploy MPC infrastructure on your servers, giving you full control over your keys and assets. Assign a DevOps specialist from your organisation to help with deploying MPC infrastructure on AWS. Or else, delegate this task to someone with an intermediate familiarity with AWS.
Prerequisites
- Provide AWS account ID of your organization to Liminal for whitelisting.
- Provide the AWS region in which you want to deploy the MPC infrastructure.
- Ensure that you have IAM users with administrative access to AWS, who can perform MPC deployment.
- Networking- Select existing VPC with IGW + 2+ public subnets (different AZs) for ALB HA.
- Ensure that your elastic IP has an available quota for your region. In the EC2 Dashboard, go to EC2 Dashboard > Elastic IPs in the left panel and check whether the quota is fully used or not.
- Prepare TAR Password and Ubuntu Password (8-32 alphanumeric characters each, entered twice during deployment); stored securely in AWS Secrets Manager.
- From CIDR (e.g., 10.0.0.0/8 for ports 8081/443)—avoid 0.0.0.0/0.
- If you plan to use an HTTPS SDK endpoint , create an ACM certificate in the deployment region for your domain (e.g., mpc-api.yourcompany.com) via AWS Certificate Manager > Request public certificate > DNS validation; copy ARN once "Issued". Enable via stack parameter and provide this ARN.
Refer here for more details. - Domain example: mpc-api.company.com (status must be "Issued")
- Post-deployment: Create CNAME record mapping your domain to the ALB DNS name.
Deploy MPC on AWS
Take the following steps to deploy MPC on your AWS server.
-
Log into your AWS account and go to your EC2 Dashboard.
-
Select your region using the dropdown on top of the screen.
-
Select Images > AMIs in the left panel.
-
Select the Owned by me dropdown and then select Private images.
-
Search for the private image of MPC shared by Liminal in the search bar. This is the AMI which will be used in the CloudFormation script shared by Liminal.
-
Download the following
cloudformationyaml file depending on your requirement:- Testing environment (Dev)
- Production environment (Prod)
-
Open CloudFormation. Select Create stack and then select New resources.
-
Click on Choose an existing template and then select Upload a template file and then upload the yaml that was downloaded in step 6 .
-
Select Next to go to the next screen.
-
Under Provide a stack name, in the stack name field, enter the name of the stack (without spaces).
-
Under VPC configuration, select the VPCid and then select 2 public subnets from the dropdown belonging to the selected VPC.
-
Under RDS Configuration, in the RDSInstanceType field, select the database instance type from the dropdown, rest all fields can be left default. It is advised to select t3.large to avoid the risk of failure.
-
Under EC2 Configuration, in the InstanceType field, select the instance from the dropdown. It is advised to select m5.large to avoid the risk of failure.
-
In the KeyName field, select a key pair from the dropdown.
-
In the SSHLocation field, enter the IP address in CIDR format, for example 3.1.5.67/32, which is where you will log into your new EC2 instance.
-
In the AllowAPIAccessFrom field, enter the IP address of your application server in CIDR format, such as 3.1.5.67/32, which is where you will connect to Liminal SDK APIs.
-
Under Passwords, in the TarPassword field, enter a strong alphanumeric password. You will require this password to open a password-protected zip file in your S3 bucket.
-
Under Passwords, in the UbuntuPasswordInput field, enter a strong alphanumeric password. You will require this password to use ubuntu user in EC2 machine.
-
Review your changes, tick the acknowledgement box and then select Submit to submit your changes.
-
Wait until all 18 resources are generated and the stack creation is completed.
Important
Ensure you prevent the accidental deletion of your stack by:- Navigate to the Stack actions dropdown to the top right of the screen.
- Select Edit termination protection > Activated.
- Save it.
-
Once the stack creation is completed, go to the S3 bucket which is created by the Stack.
-
Wait until the zip file is populated in the S3 bucket under Objects, containing all the important modules and components required for MPC.
-
Download this file to store a copy of it in the vault or password manager. This file can be opened using the TarPassword you created earlier.
-
Go to your EC2 Dashboard. Select Instances > Instances in the left panel. Select the instance that is created.
-
Log into it. And run the command
docker psto check if both the containers are running as shown in the following screenshot.
-
Run the following commands to verify the installation.
curl [http://localhost:8000/version](http://localhost:8000/version)
curl [http://localhost:8081/info](http://localhost:8081/info)Note
Here is a version number of the screenshot for reference. Your actual version may differ.

-
Run the following command to verify that your MPC server is running successfully.
curl [http://elasticip:8081/info](http://elasticip:8081/info)
