Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.
You are using an out of date browser. It may not display this or other websites correctly. You should upgrade or use an alternative browser.
[CentOS 7/8 Repack] Full Cabal Server Installation + CentOS SQL (Database) [Updated 2023]
This tutorial will show you how to have a fully working Cabal Online Private Server on CentOS 7 VPS with a Database and overall - ready to launch officially* or not.
[This tutorial is written for CentOS 7 ONLY]
*if you have a ready files though. About repack: It's an early stage of the repack that has been planned for quite a while and it requires a bit more manual work than the usual one, but that I explain below, so hopefully, if you follow my tutorial, you will have no issues to have a server.
- Cleaned Libraries that stopped CentOS yum update and were not used at all.
- Overall clean-up of the whole repack and scripts.
- Infinite yum update [expected] without any issues (lol).
- If you will notice anything, please report here. REPACK RELATED ISSUES ONLY.
- As well as any feedback appreciated!
Links to one of the cheapest VPS's on the internet with a minimal anti-ddos:
-
You must be registered to see links
-
You must be registered to see links
- No more Windows R2
- No more Remote Desktops
- No more hassle - No more 30-120 Euros a month for Dedicated Servers with additional charges for Windows Environment
IMPORTANT NOTE: If you will follow my full tutorial, you will have it a fully working server within 2 hours time. Repack has been tested and already used by couple servers and my test server.
This repack might not suite everyones taste, as it has a different cabal_status and overall OS environment is slightly different from CentOS 6.
Tutorial has sections, so make sure you follow them.
So, without further ado, lets begin:
Section 1 [Minimal to Average Requirements]:
Minimal Requirements of User:
1. Read in english.
2. Follow tutorial accurately.
3. NO RUSHING. Patience is a virtue.
4. Double-check every step done and verify it.
5. Assure that everything has been done correctly and as tutorial says.
FOR COMPLETE BEGINNERS:
Minimal Requirements of System:
1. CentOS 7 [Not Debian, not Ubuntu, not Fedora or any of that sort]
2. 6 GB Ram [CentOS SQL requires minimum of 4 GB RAM]
3. 100 GB of space [can be either SSD or HDD]
4. 100mbps Bandwith [This is only if you won't make it public or will not go international, for public release minimum 250mbps recommended]
Section 2 [System Preparation]:
Assumingly you've got your CentOS 7 running, you have to do couple of things:
1. Check if you have a running Firewalld. Command to check it:
Code:
systemctl status firewalld
- If it is shown as: Active: active (running) then go to Step 2.
- If it is show as: Inactive then go to Step 1.1.
2. Run the following commands to install SQL Server:
Code:
sudo yum install -y mssql-server
3. Run mssql-conf setup and follow the prompts to set the SA password and choose express edition [Number 3] <- because it is a Free Edition of newest SQL:
Code:
sudo /opt/mssql/bin/mssql-conf setup
4. Check if SQL is running:
Code:
systemctl status mssql-server
5. Make backup directory to restore your backups from:
cabalmanager is NOT NEEDED. It does not have any function in EP8.
Database Restoration
Once you have done all points in Database Installation part, follow these simple to restore your database using PuTTy Terminal, which is simple copy-paste + enter.
4. Using the following line in PuTTy terminal, you will create a database and restore it at the same time, without the need to login to SSMS Management and create everything there, as show in this sample:
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [[COLOR=#ff0000][B]Account[/B][/COLOR]] FROM DISK = N'/var/opt/mssql/backup/[COLOR=#ff0000][B]Account.bak[/B][/COLOR]' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Copy paste the following lines in the spoiler below to restore full database.
*Important: after each line, you will be prompted to input database password.
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Account] FROM DISK = N'/var/opt/mssql/backup/Account.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Authentication] FROM DISK = N'/var/opt/mssql/backup/Authentication.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalCash] FROM DISK = N'/var/opt/mssql/backup/CabalCash.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalGuild] FROM DISK = N'/var/opt/mssql/backup/CabalGuild.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [EventData] FROM DISK = N'/var/opt/mssql/backup/EventData.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [NetCafeBilling] FROM DISK = N'/var/opt/mssql/backup/NetCafeBilling.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Server01] FROM DISK = N'/var/opt/mssql/backup/Server01.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Database Location and Commands:
Location: /var/opt/mssql Backups: /var/opt/mssql/backup
Command to restart database:
Code:
systemctl restart mssql-server
P.S. SQL has its own cmd, but it is not adviseable for novice user to use it, as SSMS does everything you need.
Required Ports [Default ones, change accordingly to your custom ones if you decide to change]:
- 80 - HTTP
- 443 - HTTPS
- 1433 - Database
- 38101 - LoginSvr
- 38121 - Chatnode
- 38151 - AgentShop
- 38111 - 38116 - Channels*
- 38126 - War [170-190]*
You can open a full port range by typing:
* DO NOT OPEN GLOBALMGRSVR PORT.
** The ports provided are fully sufficient for full server use.
2. After you have added all of the ports, restart firewalld:
Code:
sudo firewall-cmd --reload
3. Check if you have added all of the ports you require:
Code:
firewall-cmd --list-all
4. OPTIONAL - You can also create a new zone in firewalld, if you decide not to use public zone, as well as add blocks / drop specific connections and such:
You must be registered to see links
Section 5 [Repack Installation]:
REPACK DOWNLOAD LINK:
You must be registered to see links
1. cabal_ep8_repack.tar.gz into /root directory.
2. Run command:
Code:
tar xzvf cabal*
3. Run command:
Code:
chmod +x install.sh
4. Start instalation:
Code:
./install.sh
Installation is pretty straight forward, just let it install everything and update system and additional libraries.
5. When installation is finished, type:
Code:
cabal_config
and input required information.
6. After that is completed, type:
Code:
mkdir -p /var/log/cabal
REPACK COMMANDS:
Creation / Config:
Code:
cabal_create -s - creates Servers [World] (SAMPLE: cabal_create -s 1 [will create 1 server])
cabal_create -c - creates Channels (SAMPLE: cabal_create -c 2 1 [will create 2 channels in the 1st server])cabal_config = Server ips, database port and credentials
VERY VERY BIG ADVISE: DO NOT paste your .ini files of any config, apart of common.ini ; just recreate it on the new ones. [Advising as some people had experienced some sort of a issues in regards to changing .ini files that were not common.ini and I had no time to look into it, but anyone with knowledge and kind enough could post anything about it and I will update this tutorial]
1. Go to WorldSvr_0X_0X and change ports accordingly, as repack will recreate all channels [WorldSvr_0X_0X on port: 38111 ; so you won't see any other channels apart of Channel 1]
For beginners:
Lets say you created 5 channels, you will see only channel 1 because all of them has port 38111 set on it, so what you need to do is this:
Go to WorldSvr_01_02 and change it's port to 38112
Go to WorldSvr_01_03 and change it's port to 38113
Go to WorldSvr_01_04 and change it's port to 38114
Go to WorldSvr_01_05 and change it's port to 38115
2. Check GlobalMgrSvr_0X.ini file to setup your channels accordingly.
3. Update LoginSvr_0X.ini and Account Database-> dbo.cabal_client_version table with your client's Magic Key and Client Version.
5. Another Advise: Replace ONLY Data folder and Common.ini [Don't forget to link each of them to your Channels if you have more than one] if you start a fresh server.
5.1. CHMOD your new Data folder and Common.ini files with right permissions, using these commands:
Code:
sudo chmod -R 777 /etc/cabal/Data
*This will set all permissions to new Data folder and it's subfolders.
Noticed some issues connecting to bega or some websites, so do the following to avoid them:
1. Assumingly you restored all database, go to:
Code:
Account -> Tables -> dbo.cabal_auth_table -> right-click it and select "Design" -> go to password section and change it from: var(50) to var(256) -> click "Save" in the tools meniu line.
2. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount and change all password var(XX) to var(256) -> click run and then close it.
3. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount_web and change all password var(XX) to var(256) -> click run and then close it.
4. [B]REMINDER:[/B] go to Account -> dbo.cabal_client_version_table and update Magic Key and Version in order to connect properly into your server.
[/SPOILER]
[CENTER][COLOR=#000080][SIZE=4][B][URL="https://www.youtube.com/watch?v=1Bix44C1EzY"]Congratulations![/URL]
Now you can type: cabal_restart -d
and join your server!
[/B][/SIZE][/COLOR]
[SIZE=5][COLOR=#0000ff][B]Useful Tips & Tricks:
[/B][/COLOR][/SIZE][/CENTER]
[Spoiler]
1. [B]Lock Channel on your IP[/B]
[I]Mini tutorial:[/I]
Simply add a rule to your existing Firewalld zone, using this command:
[CODE]firewall-cmd --permanent --zone=public --add-rich-rule='
rule family="ipv4"
source address="[B][COLOR=#ff0000]YOUR_IP[/COLOR][/B]/32"
port protocol="tcp" port="[COLOR=#ff0000][B]YOUR_PORT/s[/B][/COLOR]" accept'
* In "your port" part, add channel port you want to lock on your IP, which will lead for channel to be visible for everyone, but if someone else will try to click on it, it will not allow to connect. Only user/s who's IP/s are added to this rule, can connect to the channel.
You can also insert a port range, just like in Firewalld section of this tutorial.
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
To remove your "lock" and allow everyone to connect to the channel, copy-paste this, with the details changed accordingly:
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
All credits belong to people who helped and supported the project not solely by feedback, but also financially.
Most credits: penetrator9000 (wished to remain in shadows) & Yamachi References: DeXtR and Toast2250
Re: [CentOS 7 Repack] Full Cabal Server Installation + CentOS SQL (Database)
Is anyone experiencing unable to login after 1st login? I have to restart the server again for me to login. I'm running my server in Azure with Standard D2s v3 (2 vcpus, 8 GiB memory) It's me only in this server. Is it because of low ram and cpu? or because of the WorldSvr.bin all crash fix by AzureSensei?
Re: [CentOS 7 Repack] Full Cabal Server Installation + CentOS SQL (Database)
Hello guys ! I'm totally new to cabal and jus manage to get the installation working without any issues .Know everything is set up i would like to know how do i get the client for my server and how do i get it to connect to the server .Thanks in advance .
This tutorial will show you how to have a fully working Cabal Online Private Server on CentOS 7 VPS with a Database and overall - ready to launch officially* or not.
[This tutorial is written for CentOS 7 ONLY]
*if you have a ready files though. About repack: It's an early stage of the repack that has been planned for quite a while and it requires a bit more manual work than the usual one, but that I explain below, so hopefully, if you follow my tutorial, you will have no issues to have a server.
- Cleaned Libraries that stopped CentOS yum update and were not used at all.
- Overall clean-up of the whole repack and scripts.
- Infinite yum update [expected] without any issues (lol).
- If you will notice anything, please report here. REPACK RELATED ISSUES ONLY.
- As well as any feedback appreciated!
Links to one of the cheapest VPS's on the internet with a minimal anti-ddos:
-
You must be registered to see links
-
You must be registered to see links
- No more Windows R2
- No more Remote Desktops
- No more hassle - No more 30-120 Euros a month for Dedicated Servers with additional charges for Windows Environment
IMPORTANT NOTE: If you will follow my full tutorial, you will have it a fully working server within 2 hours time. Repack has been tested and already used by couple servers and my test server.
This repack might not suite everyones taste, as it has a different cabal_status and overall OS environment is slightly different from CentOS 6.
Tutorial has sections, so make sure you follow them.
So, without further ado, lets begin:
Section 1 [Minimal to Average Requirements]:
Minimal Requirements of User:
1. Read in english.
2. Follow tutorial accurately.
3. NO RUSHING. Patience is a virtue.
4. Double-check every step done and verify it.
5. Assure that everything has been done correctly and as tutorial says.
FOR COMPLETE BEGINNERS:
Minimal Requirements of System:
1. CentOS 7 [Not Debian, not Ubuntu, not Fedora or any of that sort]
2. 6 GB Ram [CentOS SQL requires minimum of 4 GB RAM]
3. 100 GB of space [can be either SSD or HDD]
4. 100mbps Bandwith [This is only if you won't make it public or will not go international, for public release minimum 250mbps recommended]
Section 2 [System Preparation]:
Assumingly you've got your CentOS 7 running, you have to do couple of things:
1. Check if you have a running Firewalld. Command to check it:
Code:
systemctl status firewalld
- If it is shown as: Active: active (running) then go to Step 2.
- If it is show as: Inactive then go to Step 1.1.
2. Run the following commands to install SQL Server:
Code:
sudo yum install -y mssql-server
3. Run mssql-conf setup and follow the prompts to set the SA password and choose express edition [Number 3] <- because it is a Free Edition of newest SQL:
Code:
sudo /opt/mssql/bin/mssql-conf setup
4. Check if SQL is running:
Code:
systemctl status mssql-server
5. Make backup directory to restore your backups from:
cabalmanager is NOT NEEDED. It does not have any function in EP8.
Database Restoration
Once you have done all points in Database Installation part, follow these simple to restore your database using PuTTy Terminal, which is simple copy-paste + enter.
4. Using the following line in PuTTy terminal, you will create a database and restore it at the same time, without the need to login to SSMS Management and create everything there, as show in this sample:
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [[COLOR=#ff0000][B]Account[/B][/COLOR]] FROM DISK = N'/var/opt/mssql/backup/[COLOR=#ff0000][B]Account.bak[/B][/COLOR]' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Copy paste the following lines in the spoiler below to restore full database.
*Important: after each line, you will be prompted to input database password.
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Account] FROM DISK = N'/var/opt/mssql/backup/Account.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Authentication] FROM DISK = N'/var/opt/mssql/backup/Authentication.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalCash] FROM DISK = N'/var/opt/mssql/backup/CabalCash.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalGuild] FROM DISK = N'/var/opt/mssql/backup/CabalGuild.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [EventData] FROM DISK = N'/var/opt/mssql/backup/EventData.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [NetCafeBilling] FROM DISK = N'/var/opt/mssql/backup/NetCafeBilling.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Server01] FROM DISK = N'/var/opt/mssql/backup/Server01.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Database Location and Commands:
Location: /var/opt/mssql Backups: /var/opt/mssql/backup
Command to restart database:
Code:
systemctl restart mssql-server
P.S. SQL has its own cmd, but it is not adviseable for novice user to use it, as SSMS does everything you need.
Required Ports [Default ones, change accordingly to your custom ones if you decide to change]:
- 80 - HTTP
- 443 - HTTPS
- 1433 - Database
- 38101 - LoginSvr
- 38121 - Chatnode
- 38151 - AgentShop
- 38111 - 38116 - Channels*
- 38126 - War [170-190]*
You can open a full port range by typing:
* DO NOT OPEN GLOBALMGRSVR PORT.
** The ports provided are fully sufficient for full server use.
2. After you have added all of the ports, restart firewalld:
Code:
sudo firewall-cmd --reload
3. Check if you have added all of the ports you require:
Code:
firewall-cmd --list-all
4. OPTIONAL - You can also create a new zone in firewalld, if you decide not to use public zone, as well as add blocks / drop specific connections and such:
You must be registered to see links
Section 5 [Repack Installation]:
REPACK DOWNLOAD LINK:
You must be registered to see links
1. cabal_ep8_repack.tar.gz into /root directory.
2. Run command:
Code:
tar xzvf cabal*
3. Run command:
Code:
chmod +x install.sh
4. Start instalation:
Code:
./install.sh
Installation is pretty straight forward, just let it install everything and update system and additional libraries.
5. When installation is finished, type:
Code:
cabal_config
and input required information.
6. After that is completed, type:
Code:
mkdir -p /var/log/cabal
REPACK COMMANDS:
Creation / Config:
Code:
cabal_create -s - creates Servers [World] (SAMPLE: cabal_create -s 1 [will create 1 server])
cabal_create -c - creates Channels (SAMPLE: cabal_create -c 2 1 [will create 2 channels in the 1st server])cabal_config = Server ips, database port and credentials
VERY VERY BIG ADVISE: DO NOT paste your .ini files of any config, apart of common.ini ; just recreate it on the new ones. [Advising as some people had experienced some sort of a issues in regards to changing .ini files that were not common.ini and I had no time to look into it, but anyone with knowledge and kind enough could post anything about it and I will update this tutorial]
1. Go to WorldSvr_0X_0X and change ports accordingly, as repack will recreate all channels [WorldSvr_0X_0X on port: 38111 ; so you won't see any other channels apart of Channel 1]
For beginners:
Lets say you created 5 channels, you will see only channel 1 because all of them has port 38111 set on it, so what you need to do is this:
Go to WorldSvr_01_02 and change it's port to 38112
Go to WorldSvr_01_03 and change it's port to 38113
Go to WorldSvr_01_04 and change it's port to 38114
Go to WorldSvr_01_05 and change it's port to 38115
2. Check GlobalMgrSvr_0X.ini file to setup your channels accordingly.
3. Update LoginSvr_0X.ini and Account Database-> dbo.cabal_client_version table with your client's Magic Key and Client Version.
5. Another Advise: Replace ONLY Data folder and Common.ini [Don't forget to link each of them to your Channels if you have more than one] if you start a fresh server.
5.1. CHMOD your new Data folder and Common.ini files with right permissions, using these commands:
Code:
sudo chmod -R 777 /etc/cabal/Data
*This will set all permissions to new Data folder and it's subfolders.
Noticed some issues connecting to bega or some websites, so do the following to avoid them:
1. Assumingly you restored all database, go to:
Code:
Account -> Tables -> dbo.cabal_auth_table -> right-click it and select "Design" -> go to password section and change it from: var(50) to var(256) -> click "Save" in the tools meniu line.
2. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount and change all password var(XX) to var(256) -> click run and then close it.
3. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount_web and change all password var(XX) to var(256) -> click run and then close it.
4. [B]REMINDER:[/B] go to Account -> dbo.cabal_client_version_table and update Magic Key and Version in order to connect properly into your server.
[/SPOILER]
[CENTER][COLOR=#000080][SIZE=4][B][URL="https://www.youtube.com/watch?v=1Bix44C1EzY"]Congratulations![/URL]
Now you can type: cabal_restart -d
and join your server!
[/B][/SIZE][/COLOR]
[SIZE=5][COLOR=#0000ff][B]Useful Tips & Tricks:
[/B][/COLOR][/SIZE][/CENTER]
[Spoiler]
1. [B]Lock Channel on your IP[/B]
[I]Mini tutorial:[/I]
Simply add a rule to your existing Firewalld zone, using this command:
[CODE]firewall-cmd --permanent --zone=public --add-rich-rule='
rule family="ipv4"
source address="[B][COLOR=#ff0000]YOUR_IP[/COLOR][/B]/32"
port protocol="tcp" port="[COLOR=#ff0000][B]YOUR_PORT/s[/B][/COLOR]" accept'
* In "your port" part, add channel port you want to lock on your IP, which will lead for channel to be visible for everyone, but if someone else will try to click on it, it will not allow to connect. Only user/s who's IP/s are added to this rule, can connect to the channel.
You can also insert a port range, just like in Firewalld section of this tutorial.
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
To remove your "lock" and allow everyone to connect to the channel, copy-paste this, with the details changed accordingly:
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
All credits belong to people who helped and supported the project not solely by feedback, but also financially.
Most credits: penetrator9000 (wished to remain in shadows) & Yamachi References: DeXtR and Toast2250
is this only for CentOS7 or is it also good for CentOS6.5?
Noticed some issues connecting to bega or some websites, so do the following to avoid them:1. Assumingly you restored all database, go to:
Code:
Account -> Tables -> dbo.cabal_auth_table -> right-click it and select "Design" -> go to password section and change it from: var(50) to var(256) -> click "Save" in the tools meniu line.2. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount and change all password var(XX) to var(256) -> click run and then close it.3. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount_web and change all password var(XX) to var(256) -> click run and then close it.4. REMINDER: go to Account -> dbo.cabal_client_version_table and update Magic Key and Version in order to connect properly into your server.
This tutorial will show you how to have a fully working Cabal Online Private Server on CentOS 7 VPS with a Database and overall - ready to launch officially* or not.
[This tutorial is written for CentOS 7 ONLY]
*if you have a ready files though. About repack: It's an early stage of the repack that has been planned for quite a while and it requires a bit more manual work than the usual one, but that I explain below, so hopefully, if you follow my tutorial, you will have no issues to have a server.
- Cleaned Libraries that stopped CentOS yum update and were not used at all.
- Overall clean-up of the whole repack and scripts.
- Infinite yum update [expected] without any issues (lol).
- If you will notice anything, please report here. REPACK RELATED ISSUES ONLY.
- As well as any feedback appreciated!
Links to one of the cheapest VPS's on the internet with a minimal anti-ddos:
-
You must be registered to see links
-
You must be registered to see links
- No more Windows R2
- No more Remote Desktops
- No more hassle - No more 30-120 Euros a month for Dedicated Servers with additional charges for Windows Environment
IMPORTANT NOTE: If you will follow my full tutorial, you will have it a fully working server within 2 hours time. Repack has been tested and already used by couple servers and my test server.
This repack might not suite everyones taste, as it has a different cabal_status and overall OS environment is slightly different from CentOS 6.
Tutorial has sections, so make sure you follow them.
So, without further ado, lets begin:
Section 1 [Minimal to Average Requirements]:
Minimal Requirements of User:
1. Read in english.
2. Follow tutorial accurately.
3. NO RUSHING. Patience is a virtue.
4. Double-check every step done and verify it.
5. Assure that everything has been done correctly and as tutorial says.
FOR COMPLETE BEGINNERS:
Minimal Requirements of System:
1. CentOS 7 [Not Debian, not Ubuntu, not Fedora or any of that sort]
2. 6 GB Ram [CentOS SQL requires minimum of 4 GB RAM]
3. 100 GB of space [can be either SSD or HDD]
4. 100mbps Bandwith [This is only if you won't make it public or will not go international, for public release minimum 250mbps recommended]
Section 2 [System Preparation]:
Assumingly you've got your CentOS 7 running, you have to do couple of things:
1. Check if you have a running Firewalld. Command to check it:
Code:
systemctl status firewalld
- If it is shown as: Active: active (running) then go to Step 2.
- If it is show as: Inactive then go to Step 1.1.
2. Run the following commands to install SQL Server:
Code:
sudo yum install -y mssql-server
3. Run mssql-conf setup and follow the prompts to set the SA password and choose express edition [Number 3] <- because it is a Free Edition of newest SQL:
Code:
sudo /opt/mssql/bin/mssql-conf setup
4. Check if SQL is running:
Code:
systemctl status mssql-server
5. Make backup directory to restore your backups from:
cabalmanager is NOT NEEDED. It does not have any function in EP8.
Database Restoration
Once you have done all points in Database Installation part, follow these simple to restore your database using PuTTy Terminal, which is simple copy-paste + enter.
4. Using the following line in PuTTy terminal, you will create a database and restore it at the same time, without the need to login to SSMS Management and create everything there, as show in this sample:
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [[COLOR=#ff0000][B]Account[/B][/COLOR]] FROM DISK = N'/var/opt/mssql/backup/[COLOR=#ff0000][B]Account.bak[/B][/COLOR]' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Copy paste the following lines in the spoiler below to restore full database.
*Important: after each line, you will be prompted to input database password.
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Account] FROM DISK = N'/var/opt/mssql/backup/Account.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Authentication] FROM DISK = N'/var/opt/mssql/backup/Authentication.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalCash] FROM DISK = N'/var/opt/mssql/backup/CabalCash.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalGuild] FROM DISK = N'/var/opt/mssql/backup/CabalGuild.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [EventData] FROM DISK = N'/var/opt/mssql/backup/EventData.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [NetCafeBilling] FROM DISK = N'/var/opt/mssql/backup/NetCafeBilling.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Server01] FROM DISK = N'/var/opt/mssql/backup/Server01.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Database Location and Commands:
Location: /var/opt/mssql Backups: /var/opt/mssql/backup
Command to restart database:
Code:
systemctl restart mssql-server
P.S. SQL has its own cmd, but it is not adviseable for novice user to use it, as SSMS does everything you need.
Required Ports [Default ones, change accordingly to your custom ones if you decide to change]:
- 80 - HTTP
- 443 - HTTPS
- 1433 - Database
- 38101 - LoginSvr
- 38121 - Chatnode
- 38151 - AgentShop
- 38111 - 38116 - Channels*
- 38126 - War [170-190]*
You can open a full port range by typing:
* DO NOT OPEN GLOBALMGRSVR PORT.
** The ports provided are fully sufficient for full server use.
2. After you have added all of the ports, restart firewalld:
Code:
sudo firewall-cmd --reload
3. Check if you have added all of the ports you require:
Code:
firewall-cmd --list-all
4. OPTIONAL - You can also create a new zone in firewalld, if you decide not to use public zone, as well as add blocks / drop specific connections and such:
You must be registered to see links
Section 5 [Repack Installation]:
REPACK DOWNLOAD LINK:
You must be registered to see links
1. cabal_ep8_repack.tar.gz into /root directory.
2. Run command:
Code:
tar xzvf cabal*
3. Run command:
Code:
chmod +x install.sh
4. Start instalation:
Code:
./install.sh
Installation is pretty straight forward, just let it install everything and update system and additional libraries.
5. When installation is finished, type:
Code:
cabal_config
and input required information.
6. After that is completed, type:
Code:
mkdir -p /var/log/cabal
REPACK COMMANDS:
Creation / Config:
Code:
cabal_create -s - creates Servers [World] (SAMPLE: cabal_create -s 1 [will create 1 server])
cabal_create -c - creates Channels (SAMPLE: cabal_create -c 2 1 [will create 2 channels in the 1st server])cabal_config = Server ips, database port and credentials
VERY VERY BIG ADVISE: DO NOT paste your .ini files of any config, apart of common.ini ; just recreate it on the new ones. [Advising as some people had experienced some sort of a issues in regards to changing .ini files that were not common.ini and I had no time to look into it, but anyone with knowledge and kind enough could post anything about it and I will update this tutorial]
1. Go to WorldSvr_0X_0X and change ports accordingly, as repack will recreate all channels [WorldSvr_0X_0X on port: 38111 ; so you won't see any other channels apart of Channel 1]
For beginners:
Lets say you created 5 channels, you will see only channel 1 because all of them has port 38111 set on it, so what you need to do is this:
Go to WorldSvr_01_02 and change it's port to 38112
Go to WorldSvr_01_03 and change it's port to 38113
Go to WorldSvr_01_04 and change it's port to 38114
Go to WorldSvr_01_05 and change it's port to 38115
2. Check GlobalMgrSvr_0X.ini file to setup your channels accordingly.
3. Update LoginSvr_0X.ini and Account Database-> dbo.cabal_client_version table with your client's Magic Key and Client Version.
5. Another Advise: Replace ONLY Data folder and Common.ini [Don't forget to link each of them to your Channels if you have more than one] if you start a fresh server.
5.1. CHMOD your new Data folder and Common.ini files with right permissions, using these commands:
Code:
sudo chmod -R 777 /etc/cabal/Data
*This will set all permissions to new Data folder and it's subfolders.
Noticed some issues connecting to bega or some websites, so do the following to avoid them:
1. Assumingly you restored all database, go to:
Code:
Account -> Tables -> dbo.cabal_auth_table -> right-click it and select "Design" -> go to password section and change it from: var(50) to var(256) -> click "Save" in the tools meniu line.
2. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount and change all password var(XX) to var(256) -> click run and then close it.
3. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount_web and change all password var(XX) to var(256) -> click run and then close it.
4. [B]REMINDER:[/B] go to Account -> dbo.cabal_client_version_table and update Magic Key and Version in order to connect properly into your server.
[/SPOILER]
[CENTER][COLOR=#000080][SIZE=4][B][URL="https://www.youtube.com/watch?v=1Bix44C1EzY"]Congratulations![/URL]
Now you can type: cabal_restart -d
and join your server!
[/B][/SIZE][/COLOR]
[SIZE=5][COLOR=#0000ff][B]Useful Tips & Tricks:
[/B][/COLOR][/SIZE][/CENTER]
[Spoiler]
1. [B]Lock Channel on your IP[/B]
[I]Mini tutorial:[/I]
Simply add a rule to your existing Firewalld zone, using this command:
[CODE]firewall-cmd --permanent --zone=public --add-rich-rule='
rule family="ipv4"
source address="[B][COLOR=#ff0000]YOUR_IP[/COLOR][/B]/32"
port protocol="tcp" port="[COLOR=#ff0000][B]YOUR_PORT/s[/B][/COLOR]" accept'
* In "your port" part, add channel port you want to lock on your IP, which will lead for channel to be visible for everyone, but if someone else will try to click on it, it will not allow to connect. Only user/s who's IP/s are added to this rule, can connect to the channel.
You can also insert a port range, just like in Firewalld section of this tutorial.
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
To remove your "lock" and allow everyone to connect to the channel, copy-paste this, with the details changed accordingly:
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
All credits belong to people who helped and supported the project not solely by feedback, but also financially.
Most credits: penetrator9000 (wished to remain in shadows) & Yamachi References: DeXtR and Toast2250
I did sir I even reinstalled Windows 10 Pro just in case i messed up somewhere. Still the same result. Followed a guide on youtube on how to setup/install CentOS7 on virtualbox for a cabal server (Pi Sces).
I did sir I even reinstalled Windows 10 Pro just in case i messed up somewhere. Still the same result. Followed a guide on youtube on how to setup/install CentOS7 on virtualbox for a cabal server (Pi Sces).
Re: [CentOS 7 Repack] Full Cabal Server Installation + CentOS SQL (Database)
Hello everyone, first thanks for everything. great tutorial. I'm having problems with Active (Exit) in some DB's ... could someone help me to put all Active (Running).NOTE: I follow the tutorial about 5x uninstalling and installing as it is there. I already turned off FireWall and even then the problem persists.
This tutorial will show you how to have a fully working Cabal Online Private Server on CentOS 7 VPS with a Database and overall - ready to launch officially* or not.
[This tutorial is written for CentOS 7 ONLY]
*if you have a ready files though. About repack: It's an early stage of the repack that has been planned for quite a while and it requires a bit more manual work than the usual one, but that I explain below, so hopefully, if you follow my tutorial, you will have no issues to have a server.
- Cleaned Libraries that stopped CentOS yum update and were not used at all.
- Overall clean-up of the whole repack and scripts.
- Infinite yum update [expected] without any issues (lol).
- If you will notice anything, please report here. REPACK RELATED ISSUES ONLY.
- As well as any feedback appreciated!
Links to one of the cheapest VPS's on the internet with a minimal anti-ddos:
-
You must be registered to see links
-
You must be registered to see links
- No more Windows R2
- No more Remote Desktops
- No more hassle - No more 30-120 Euros a month for Dedicated Servers with additional charges for Windows Environment
IMPORTANT NOTE: If you will follow my full tutorial, you will have it a fully working server within 2 hours time. Repack has been tested and already used by couple servers and my test server.
This repack might not suite everyones taste, as it has a different cabal_status and overall OS environment is slightly different from CentOS 6.
Tutorial has sections, so make sure you follow them.
So, without further ado, lets begin:
Section 1 [Minimal to Average Requirements]:
Minimal Requirements of User:
1. Read in english.
2. Follow tutorial accurately.
3. NO RUSHING. Patience is a virtue.
4. Double-check every step done and verify it.
5. Assure that everything has been done correctly and as tutorial says.
FOR COMPLETE BEGINNERS:
Minimal Requirements of System:
1. CentOS 7 [Not Debian, not Ubuntu, not Fedora or any of that sort]
2. 6 GB Ram [CentOS SQL requires minimum of 4 GB RAM]
3. 100 GB of space [can be either SSD or HDD]
4. 100mbps Bandwith [This is only if you won't make it public or will not go international, for public release minimum 250mbps recommended]
Section 2 [System Preparation]:
Assumingly you've got your CentOS 7 running, you have to do couple of things:
1. Check if you have a running Firewalld. Command to check it:
Code:
systemctl status firewalld
- If it is shown as: Active: active (running) then go to Step 2.
- If it is show as: Inactive then go to Step 1.1.
2. Run the following commands to install SQL Server:
Code:
sudo yum install -y mssql-server
3. Run mssql-conf setup and follow the prompts to set the SA password and choose express edition [Number 3] <- because it is a Free Edition of newest SQL:
Code:
sudo /opt/mssql/bin/mssql-conf setup
4. Check if SQL is running:
Code:
systemctl status mssql-server
5. Make backup directory to restore your backups from:
cabalmanager is NOT NEEDED. It does not have any function in EP8.
Database Restoration
Once you have done all points in Database Installation part, follow these simple to restore your database using PuTTy Terminal, which is simple copy-paste + enter.
4. Using the following line in PuTTy terminal, you will create a database and restore it at the same time, without the need to login to SSMS Management and create everything there, as show in this sample:
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [[COLOR=#ff0000][B]Account[/B][/COLOR]] FROM DISK = N'/var/opt/mssql/backup/[COLOR=#ff0000][B]Account.bak[/B][/COLOR]' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Copy paste the following lines in the spoiler below to restore full database.
*Important: after each line, you will be prompted to input database password.
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Account] FROM DISK = N'/var/opt/mssql/backup/Account.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Authentication] FROM DISK = N'/var/opt/mssql/backup/Authentication.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalCash] FROM DISK = N'/var/opt/mssql/backup/CabalCash.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [CabalGuild] FROM DISK = N'/var/opt/mssql/backup/CabalGuild.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [EventData] FROM DISK = N'/var/opt/mssql/backup/EventData.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [NetCafeBilling] FROM DISK = N'/var/opt/mssql/backup/NetCafeBilling.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Code:
sqlcmd -S localhost -U SA -Q "RESTORE DATABASE [Server01] FROM DISK = N'/var/opt/mssql/backup/Server01.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5"
Click Enter -> Input your database password -> Click Enter -> Done!
Database Location and Commands:
Location: /var/opt/mssql Backups: /var/opt/mssql/backup
Command to restart database:
Code:
systemctl restart mssql-server
P.S. SQL has its own cmd, but it is not adviseable for novice user to use it, as SSMS does everything you need.
Required Ports [Default ones, change accordingly to your custom ones if you decide to change]:
- 80 - HTTP
- 443 - HTTPS
- 1433 - Database
- 38101 - LoginSvr
- 38121 - Chatnode
- 38151 - AgentShop
- 38111 - 38116 - Channels*
- 38126 - War [170-190]*
You can open a full port range by typing:
* DO NOT OPEN GLOBALMGRSVR PORT.
** The ports provided are fully sufficient for full server use.
2. After you have added all of the ports, restart firewalld:
Code:
sudo firewall-cmd --reload
3. Check if you have added all of the ports you require:
Code:
firewall-cmd --list-all
4. OPTIONAL - You can also create a new zone in firewalld, if you decide not to use public zone, as well as add blocks / drop specific connections and such:
You must be registered to see links
Section 5 [Repack Installation]:
REPACK DOWNLOAD LINK:
You must be registered to see links
1. cabal_ep8_repack.tar.gz into /root directory.
2. Run command:
Code:
tar xzvf cabal*
3. Run command:
Code:
chmod +x install.sh
4. Start instalation:
Code:
./install.sh
Installation is pretty straight forward, just let it install everything and update system and additional libraries.
5. When installation is finished, type:
Code:
cabal_config
and input required information.
6. After that is completed, type:
Code:
mkdir -p /var/log/cabal
REPACK COMMANDS:
Creation / Config:
Code:
cabal_create -s - creates Servers [World] (SAMPLE: cabal_create -s 1 [will create 1 server])
cabal_create -c - creates Channels (SAMPLE: cabal_create -c 2 1 [will create 2 channels in the 1st server])cabal_config = Server ips, database port and credentials
VERY VERY BIG ADVISE: DO NOT paste your .ini files of any config, apart of common.ini ; just recreate it on the new ones. [Advising as some people had experienced some sort of a issues in regards to changing .ini files that were not common.ini and I had no time to look into it, but anyone with knowledge and kind enough could post anything about it and I will update this tutorial]
1. Go to WorldSvr_0X_0X and change ports accordingly, as repack will recreate all channels [WorldSvr_0X_0X on port: 38111 ; so you won't see any other channels apart of Channel 1]
For beginners:
Lets say you created 5 channels, you will see only channel 1 because all of them has port 38111 set on it, so what you need to do is this:
Go to WorldSvr_01_02 and change it's port to 38112
Go to WorldSvr_01_03 and change it's port to 38113
Go to WorldSvr_01_04 and change it's port to 38114
Go to WorldSvr_01_05 and change it's port to 38115
2. Check GlobalMgrSvr_0X.ini file to setup your channels accordingly.
3. Update LoginSvr_0X.ini and Account Database-> dbo.cabal_client_version table with your client's Magic Key and Client Version.
5. Another Advise: Replace ONLY Data folder and Common.ini [Don't forget to link each of them to your Channels if you have more than one] if you start a fresh server.
5.1. CHMOD your new Data folder and Common.ini files with right permissions, using these commands:
Code:
sudo chmod -R 777 /etc/cabal/Data
*This will set all permissions to new Data folder and it's subfolders.
Noticed some issues connecting to bega or some websites, so do the following to avoid them:
1. Assumingly you restored all database, go to:
Code:
Account -> Tables -> dbo.cabal_auth_table -> right-click it and select "Design" -> go to password section and change it from: var(50) to var(256) -> click "Save" in the tools meniu line.
2. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount and change all password var(XX) to var(256) -> click run and then close it.
3. Go to Account -> Programabillity -> Stored Procedures -> dbo.cabal_tool_registerAccount_web and change all password var(XX) to var(256) -> click run and then close it.
4. [B]REMINDER:[/B] go to Account -> dbo.cabal_client_version_table and update Magic Key and Version in order to connect properly into your server.
[/SPOILER]
[CENTER][COLOR=#000080][SIZE=4][B][URL="https://www.youtube.com/watch?v=1Bix44C1EzY"]Congratulations![/URL]
Now you can type: cabal_restart -d
and join your server!
[/B][/SIZE][/COLOR]
[SIZE=5][COLOR=#0000ff][B]Useful Tips & Tricks:
[/B][/COLOR][/SIZE][/CENTER]
[Spoiler]
1. [B]Lock Channel on your IP[/B]
[I]Mini tutorial:[/I]
Simply add a rule to your existing Firewalld zone, using this command:
[CODE]firewall-cmd --permanent --zone=public --add-rich-rule='
rule family="ipv4"
source address="[B][COLOR=#ff0000]YOUR_IP[/COLOR][/B]/32"
port protocol="tcp" port="[COLOR=#ff0000][B]YOUR_PORT/s[/B][/COLOR]" accept'
* In "your port" part, add channel port you want to lock on your IP, which will lead for channel to be visible for everyone, but if someone else will try to click on it, it will not allow to connect. Only user/s who's IP/s are added to this rule, can connect to the channel.
You can also insert a port range, just like in Firewalld section of this tutorial.
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
To remove your "lock" and allow everyone to connect to the channel, copy-paste this, with the details changed accordingly:
Once you paste it, you have to reload your Firewalld:
Code:
sudo firewall-cmd --reload
All credits belong to people who helped and supported the project not solely by feedback, but also financially.
Most credits: penetrator9000 (wished to remain in shadows) & Yamachi References: DeXtR and Toast2250
Re: [CentOS 7 Repack] Full Cabal Server Installation + CentOS SQL (Database)
is there any sort of open source repack out there that can be used with this? I've looked for one myself before but had little luck funding one. Asking because I'm more a fan of MySQL rather than MSSQL and my community already has other things that are currently using mysql. it would be really helpful to be able to make changes as needed such as say changing how data is stored and retrieved, adding in new items and such aswell as maybe a few things later if ever needed.
is there any sort of open source repack out there that can be used with this? I've looked for one myself before but had little luck funding one. Asking because I'm more a fan of MySQL rather than MSSQL and my community already has other things that are currently using mysql. it would be really helpful to be able to make changes as needed such as say changing how data is stored and retrieved, adding in new items and such aswell as maybe a few things later if ever needed.
No, there is no source code. You cannot use mysql for the server. There is a dead Minerva project (look for it on this forum), the server was written there under mysql, but it is not finished and, as far as I know, no one has been doing it for a long time.