How to install the Arionum Node in CentOS 7
Posted: Thu Feb 01, 2018 12:45 pm
This guide aims to provide a quick way to create your own Arionum node.
Arionum does not pay for hosting nodes, but you can help the network by hosting one.
Also, if you would like to solo-mine, you will need to setup your own node (preferably with SSL, if you're mining on a different machine).
We start from the assumption that you have a fresh OS installation, without any other data.
First, we install the epel and remi repositories:
Next, we install php 7.2 from the remi repository.
Afterwards, we will add the MariaDB 10.1 repository, install MariaDB and start the apache/mariadb processes.
Allow apache through the firewall:
Set MariaDB to listen only on localhost and delete test/remote users.
Generate a new password, create a database called arionum and an user called arionum.
Clone the git repository and move all data to the apache root
Update the Arionum config:
Disable selinux:
Access your node from the public IP. If you're behind a router, you'll have to forward port 80.
If you plan to use a domain or a subdomain, it's best to use it since the beginning, otherwise it will propagate to the other peers with the IP.
Refresh the website 2 times and the system should start peering with the other nodes automatically. After 5-10 minutes, it will start syncing the blocks.
Arionum does not pay for hosting nodes, but you can help the network by hosting one.
Also, if you would like to solo-mine, you will need to setup your own node (preferably with SSL, if you're mining on a different machine).
We start from the assumption that you have a fresh OS installation, without any other data.
First, we install the epel and remi repositories:
Code: Select all
yum -y install epel-release yum-utils screen git
yum -y update
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y update
Code: Select all
yum-config-manager --enable remi-php72
yum -y install php php-gmp php-mysql php-mbstring php-bcmath
Code: Select all
rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB;
echo "[mariadb]" > /etc/yum.repos.d/MariaDB.repo;
echo "name = MariaDB" >> /etc/yum.repos.d/MariaDB.repo;
echo "baseurl = http://yum.mariadb.org/10.1/centos7-amd64" >> /etc/yum.repos.d/MariaDB.repo;
echo "gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB" >> /etc/yum.repos.d/MariaDB.repo;
echo "gpgcheck=1" >> /etc/yum.repos.d/MariaDB.repo;
yum -y update
yum -y install MariaDB-server MariaDB-client;
systemctl start mariadb
systemctl enable mariadb
systemctl start httpd
systemctl enable httpd
Code: Select all
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
Set MariaDB to listen only on localhost and delete test/remote users.
Code: Select all
echo "[mysqld]">/etc/my.cnf
echo "bind-address = 127.0.0.1">/etc/my.cnf
echo "[client-server]">/etc/my.cnf
echo "!includedir /etc/my.cnf.d">/etc/my.cnf
echo "DELETE FROM mysql.user WHERE User=''"|mysql;
echo "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');"|mysql;
echo "DROP DATABASE IF EXISTS test;"|mysql;
echo "DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'"|mysql;
Code: Select all
pass=$(head -c 16 /dev/random | md5sum | cut -f 1 -d\ )
echo "The db password is $pass"
echo "CREATE DATABASE arionum;"|mysql
echo "CREATE USER 'arionum'@'localhost' IDENTIFIED BY '$pass';"|mysql
echo "GRANT ALL PRIVILEGES ON arionum . * TO 'arionum'@'localhost';"|mysql
echo "FLUSH PRIVILEGES;"|mysql
Code: Select all
git clone https://github.com/arionum/node
rm -rf /var/www/html
mv node /var/www/html
chmod 777 /var/www/html/tmp
chown apache:apache /var/www/html -R
Code: Select all
sed -i s/ENTER-DB-NAME/arionum/g /var/www/html/include/config.inc.php
sed -i s/ENTER-DB-USER/arionum/g /var/www/html/include/config.inc.php
sed -i s/ENTER-DB-PASS/$pass/g /var/www/html/include/config.inc.php
Code: Select all
setenforce 0
sed -i s/SELINUX=enforcing/SELINUX=permissive/g /etc/selinux/config
If you plan to use a domain or a subdomain, it's best to use it since the beginning, otherwise it will propagate to the other peers with the IP.
Refresh the website 2 times and the system should start peering with the other nodes automatically. After 5-10 minutes, it will start syncing the blocks.