Become a SCPrime storage provider
45 min read
Affiliate disclosure: This page contains affiliate links. Meaning, we get a commission if you purchase through our links, at no cost to you. (Read the full disclosure here.)
Become a DIY ScPrime storage provider and earn crypto coins.
Requirements:
Synology NAS that can run Docker
A Cryptocurrency wallet like Kraken or Coinbase
An Altcoin trading account like Southexchange
Collateral (Amount depends on the storage capacity you have)
A computer (Mac, PC, Linux) to access the NAS
It is helpful if you have some knowledge of Linux and using the Terminal (Commandline) and you will need about 6-8 hours to set everything up.
If you need help with the setup or a consulting session to get started, we offer the following sessions:
ScPrime is a decentralized cloud storage solution. Everyone can become a storage provider to expand the ScPrime cloud storage network and earn SCP crypto coins. ScPrime offers two network-attached storage (NAS) that you can buy and setup to become a storage provider. We covered one of the devices in our article on how to mine crypto in your living room (https://www.barcdigital.com/blog/mine-crypto-in-your-livingroom).
As of the time of writing this article, these NAS from ScPrime are not yet available, you can only sign up for the waiting list so far. But you can setup your own NAS to become a storage provider.
In this article, we show you the step-by-step instructions to become a DIY storage provider for the ScPrime storage network and earn SCP crypto coins.
You will need a Synology NAS, a computer, a Crypto currency wallet, a Altcoin trading account and a collateral.
The collateral is an amount between 25 - 300 SCP depending on how much storage you are planning on renting out. One SCP is on average around 1 USD or 1.2 CAD. You can check the live price for SCP here:
https://coinmarketcap.com/currencies/scprime/
More on the collateral and how to get SCP coins later.
For this article we will be using a Synology NAS but you can use any brand of NAS as long as it can run Docker. You could even use any Mac, Windows PC or Linux computer, since you can install Docker on any of those computers, but we highly recommend using a NAS since they have storage redundancy, meaning several harddisks redundant so that if one fails the storage you are providing is still safe.
You can get a Synology NAS at BestBuy or order it online from Amazon (see links below). Make sure it meets the following requirements:
NAS requirements:
2-4 CPU cores
4 GB of RAM
64-bit OS
500+ GB spare storage capacity
We recommend a model with at least 4 bays (meaning it can hold 4 harddisks) that are accessible from the front, so you can replace them easily. You can either buy a diskless NAS, where you will have to buy the hard disk separately or one with the harddisks included like the one below (Synology DS420 with 16 TB Storage for 1569.77 CAD):
We also recommend getting more than just the minimal required hard disk space of 500 GB, since this amount of storage space will not generate a lot of earnings unless you just wanna try it out for fun. You can check on the website below how much the estimated earnings will be for what amount of storage you provide and also how much collateral is needed:
For example; a total storage of 1 TB and half of it used (500 GB) you would approximately make 55 SCP per month in March 2022. With 16 TB of total storage and 7.6 TB used you would make approx. 836 SCP per month. Assuming you would buy the Synology DS420 with 16 TB at around 1600 CAD you would reach the return on investment (ROI) in four months since one SCP is worth 0.5 CAD as of the time of writing.
The collateral for a 16 TB Storage is 480 SCP - but you only need the full amount if all the storage space is used, for 7.6 TB used storage the collateral is 228 SCP. That means you can start with smaller collateral and then top it later if necessary.
Docker and NAS Setup
The setup of a Synology NAS is pretty simple and usually done in less than 30min. You can find a 6min Youtube video on how to set up the Synology DS420 here: https://www.youtube.com/watch?v=PrVAehzT8Yk. Make sure to connect the Synology NAS to your network router and your local network so you can reach it with your computer and it has a stable internet connection.
Now that your Synology NAS is ready you have to install Docker. Docker allows you to run containers with programms inside to run on your NAS. We need Docker so we can install the ScPrime container which has all the necessary software pre-installed.
Log in as the administrator and open the Package Center
Search for Docker in the search field and click on the install button.
Install the ScPrime Docker container
3. Open Docker and in the Image tab (on the left-hand side) click on the pulldown menu “Add” and pick “Add From URL”. Enter the following URL into the field “Hub Page or Repository”:
https://hub.docker.com/r/scprime/scprime/
4. Pick the latest image.
With those steps completed, you have the scprime docker container installed on your NAS. Well done!
Create the shared Volume/s
Now we have to create at least one shared volume on the NAS. This step depends on the total storage you have and want to rent out. If you have 2 TB of total storage you only need one shared volume, but if you have anything larger than 2 TB then you will have to divide the total storage space into 2 TB volumes. That means with 16 TB total storage you have to create 8 shared volumes (16 TB / 2 TB = 8).
5. Create at least one shared Volume (recommended is one volume for each 2 TB) naming it for example “/scp1_1” or “/vol_1” with a quota (not bigger than 2 TB) and repeat the step for every volume you need counting up the numbers behind the name “/scp1_2”, “/scp1_3” etc.
Go to the Control Panel and there under the “Create” dropdown pick “Create Shared Folder”.
6. Create a data folder in the pre-existing docker folder (eg scp-data) for storing the metadata.
Port Forwarding
To make sure that storage customers can reach the volumes on the docker container we have to enable Port forwarding on three ports on your network router and on the docker container:
7. Port forwarding:
Each provider requires the use of three ports, which are by default: 4282, 4283, and 4285 on TCP.
The Ports must be open on your network router and on the docker container
The opening of the ports on your network router depends on your internet provider. Check with your internet provider if necessary on how to open the three ports mentioned above.
With those steps completed, you have everything ready on the network side and on the NAS. Now we need to create an instance of a container, configure it, create a wallet so we can transfer some money for the collateral on it, and then we can announce the storage to the network.
8. Launch the container, give it a name and enable auto restart.
9. Add the Volumes (docker/scp-data with mount point /scp-data, and all the above created shared volumes)
10. Edit the Port settings and at the matching port numbers into the local port fields. If you have more than one NAS you will have to increase the Port numbers for example to 4292, 4293, 4295. Note: Port 4281 is optional.
11. Edit the Environment Settings - add “-M gctwh” in the Command field (Execution Command) and if you did not use the default ports you have to add those here in the command (eg --host-addr :4292 --siamux-addr :4293 --host-api-addr :4295). Once you have created the wallet we will come back to this setting to enter the wallet password, but for now, click on “Apply” and then “Next”, then you will see a summary - and when you click “Done” the container will start for the first time.
Under “Container” you can see the name of the container you just created in the list. Click on the entry in the list and then on “Details”. Here you can see the uptime, CPU and RAM usage as well as port settings and volumes. When you go to the log tab you can see the log information, if something went wrong this is a good place to go and check first to see if there are any hints on what went wrong.
Now with the scprime container running we can enable the secure shell access, initialize a wallet, add some funding and do the rest of the configuration needed to get the storage up and running.
Enable the Secure Shell access (ssh) so you can access the container on your NAS from your computer.
12. Enable the Secure Shell access (ssh) - go to the Control Panel and under the tab “Terminal & SNMP” enable the checkbox for “SSH service”. We will need this to send commands to the NAS directly from any Terminal. Be aware that this opens port 22 on your NAS which is a potential security risk. Make sure that port 22 is not open on your network router so that attackers cannot reach your NAS from the internet on port 22. We also recommend that you change the default port number from 22 to something between port 49152 and 65535.
13. Log in to your NAS from your computer using a terminal and enter the following command (enter your admin name and the IP address of the NAS and remove the brackets):
$ ssh <admin name>@<ip address here>
For example:
$ ssh admin@192.0.0.92
Tutorial on how to connect to the NAS with a Windows PC: https://www.youtube.com/watch?v=BCCIMRbAUp8
Tutorial on how to connect to the NAS with a Mac:
https://www.youtube.com/watch?v=cYQqXpO559g
14. Check if your container is running with the following command:
$ sudo docker ps
You will see a list of all the containers running on your NAS including the names of the containers.
15. Now you can send commands to your container using the following command (you have to replace your container name in the square brackets and remove the brackets):
$ sudo docker exec <container name> spc
For example:
$ sudo docker exec scprime1 spc
This will output the blockchain status height and if it is synced as well as the wallet and renter status;
It will take a while to sync the container with the network - you can check here what the current blockchain height is: https://scprime.info. Your container needs to sync up to the same number, which can take several hours. But we can continue with the setup of the wallet in the meantime.
Setup a wallet
16. create a wallet by entering the following command:
$ sudo docker exec <container name> spc wallet init
This will output the recovery seed which you must store and protect very well, since this is the only way to access your wallet or recover it. Count the number of words in the seed, it should be 28 or 29 words.
17. Now we can go back to the container settings and enter the wallet password. Go to “Docker” and stop the container either with the slider or the action pulldown menu. Then click on “Edit”, go to the “Environment” tab and enter the wallet password (seed) you just created and enter the words into the value field. Click “Apply” and start the container again.
18. With the following command you can unlock the wallet:
$ sudo docker exec -it <container name> spc wallet unlock
Check if the wallet is unlocked by entering the command:
$ sudo docker exec <container name> spc
Under “Wallet” it should show status unlocked and with a Scprime coin balance of 0.
Before we can add some funds (collateral) and announce the host to the network we need to configure the folders we added earlier.
Configure the storage folder/s
19. Configure storage folders (create a host folder for each shared volume you created before with the following command - and leave a buffer. If you created a shared volume with a quota of 500 GB assign a size of 450 GB to the folder to make sure you have some extra space as a buffer (50-100 GB at least).
Enter the following command, replacing the container and folder name accordingly as well as the size (values in brackets).
$ sudo docker exec <container name> spc host folder add /<scp1_1> <1800gb>
Repeat this step for all the shared volumes you created.
Check the storage folders with the following command:
$ sudo docker exec <container name> spc host.
It will output the host info and the storage folders. Here you can see the capacity and how much is actually used by renters.
Now we can create a wallet address and transfer some funds to the wallet as collateral.
20. Create a wallet address to transfer some funds (SCP Coins) to cover the transaction fee for announcing and collateral for initial contracts.
$ sudo docker exec <container name> spc wallet address
This will output your wallet address. This address you will need to send SCP Coins to it (see instructions below - Transfer SCP).
Before you start transferring funds to your wallet check out the following website:
Here you can set the total storage and the used storage to see what collateral you will need for your own storage space. You should transfer at least half of the collateral needed for covering your total storage to start out and then extend it as you go, but renters will not sign up if there is not enough collateral for the amount of storage they need.
21. Transfer some SCP coins to the generated address (see instructions below - Transfer SCP)
You can check the balance of the wallet with the following command:
# sudo docker exec <container name> spc wallet balance
22. Before you can announce your service to the public you should make sure that it can be accessed from the outside. Use the following tool to verify that the access from the outside world to your storage container works: https://www.ipfingerprints.com/portscan.php
Enter the port numbers you used above (eg 4282 as the start port and 4285 as the end port) into the tool - your IP address will be entered automatically - and click on scan. The ports you entered should show up with the state open. If this is not the case you have to check your gateway and firewall settings. Only proceed to the next step when the ports are open and connections from the outside to these ports are possible.
Before we can announce the storage to the network we should configure the price and collateral. Here are some example values from the ScPrime website (https://docs.scpri.me/storageproviderindex/synology-docker-setup). Keep in mind that setting the price too high could mean you don’t get any contracts.
You can set the values with the following commands:
$ sudo docker exec scprovider spc host config maxduration 9w
$ sudo docker exec scprovider spc host config collateral 5SCP
$ sudo docker exec scprovider spc host config minstorageprice 5SCP
$ sudo docker exec scprovider spc host config mindownloadbandwidthprice 1SCP
$ sudo docker exec scprovider spc host config minuploadbandwidthprice 1SCP
$ sudo docker exec scprovider spc host config collateralbudget 500SCP
$ sudo docker exec scprovider spc host config maxcollateral 200SCP
Hello, World! --------------------
Announcing the storage to the public
23. Now it is time to announce the storage to the public with the following command:
$ sudo docker exec <container name> spc host announce
You should get the following response:
Host announcement submitted to network.
The host has also been configured to accept contracts.
To revert this command, run:
$ spc host config acceptingcontracts false
Check if your host Infos are updated with the command:
$ sudo docker exec <container name> spc host
or for a more detailed output enter:
$ sudo docker exec <container name> spc host -v
24. The next step is to check if your container (IP address) appears on the ScPrime block explorer. It could take some time until your IP address appears on the explorer, expect to wait up to 30min. To check if your IP address is listed on the network go to the following website and search for your IP address:
https://scpri.me/network/
Finally, everything is set up and now you can relax and wait for the first contracts. When I set up my first storage it took about 2 days until the first contract was locked. But don’t expect any miracles, it can take a while until contracts show up and it may take even longer until your storage gets filled up to a point where you are making some coins. After about 3 weeks my first storage was only gone up 3%.
We will keep you posted on the progress and how our storage is doing - make sure to come back every week for the latest updates and subscribe to our newsletter so you don’t miss anything.
Transfer SCP coins to your wallet address on your NAS
In order to transfer SCP coins to your generated wallet address on your NAS, you need a Bitcoin Wallet (like Coinbase, Kraken…). I can recommend Kraken since it is fairly easy to get started online or with the app. If you already have a Bitcoin wallet you can skip the first step.
You also need an Altcoin Account to trade SCP coins, I recommend https://www.southxchange.com. Before we can start you have to create those two accounts (or a similar account for a BTC wallet and an exchange where you can trade BTC for SCP).
You first need to buy Bitcoins (BTC) and then trade them for SCP coins and the last step is to send the SCP coins to the wallet address you created on your NAS.
Go to https://www.kraken.com (i recommend you activate the two-factor authentication to secure your account) and buy Bitcoins (BTC) for the amount you need as collateral.
Go to https://www.southxchange.com. In the wallets tab search for BTC and then choose “Deposit” to get your wallet address. - copy it to the clipboard and then switch back to your bitcoin wallet and withdraw BTC to the address you just copied. This transfers BTC from your wallet to your Southxchange wallet. This transaction might take a couple of minutes. Under the funding tab in Kraken, you can see the status of the transaction.
Once the amount appears in your wallet in Southxchange under BTC you can buy SCP. You can select “Quickly exchange ALL BTC for SCP” from the dropdown. This will transfer all your BTC coins into SCP. Now you can send the SCP coins to the wallet address you created earlier.
Go to SCP where you should see your total amount from the exchange. Under Withdrawal enter the wallet address you created before on your NAS, enter the SCP amount, and click on “Withdraw”. You will receive an email to confirm the withdrawal - once confirmed the transaction starts. You can see the status of the transaction under “Withdrawals”, as soon as it changes from “Pending” to “Confirmed” it is on its way.
Check the Amount transferred to your wallet on the NAS with the following command:
$ sudo docker exec <container name> spc wallet balance
The transfer might take several hours to complete. First, when you check the balance, you might just see the amount appear under “Unconfirmed Delta”. Once the transaction is complete the amount will appear under “Confirmed Balance”.
Pros:
Initial investment moderate (especially if you already have a NAS with some extra space on it)
Passive income which requires little to no work after the setup is complete
You become part of a big data storage network and help others to keep their data safe - and get paid for it
Cons:
Some technical knowledge is required for setting up the network connections and the docker container configuration
Initial hardware costs, if you don’t already have a NAS
A fast a stable internet connection is required