Hello,
I will explain how to install ebot on debian & co.
You have just to follow the guide step by step.
IMPORTANT FOR UBUNTU >=16.04 and Debian >= 9 USERS:
wAs Guys if you want to use php5 do not use Ubuntu 16.04 because Ubuntu 16.04 has switched to PHP 7.0 with a new infrastructure for PHP package. You can't install libapache2-mod-php5 on 16.04.
So if you want to use php5 stay with Ubuntu 14.04!
Updates:
01/04/2017 (dd/mm/yy): adding part 7.4
06/02/2017: update php5 version.
23/09/2016:
Replacing PHP version with the last PHP5 version (php-5.6.26) because of exploits on the old version
Adding "common issues" on step 8.3.
Replacing "apt-get install mysql-server" by "apt-get install mysql-server php5-mysql"
17/09/2016:
Adding .htaccess modification on step 7.1.
17/06/2016 (dd/mm/yyyy) at 7pm (CEST)
(Update to eBot 3.2 + adding virtualhost + init script + a2enmod rewrite)
Recommended debian's version: Debian 7.*
But also working with debian 8.6 Jessie.
My goal is to make the best guide for beginners. So if I made any mistake or forgot any things, just tell me. I will edit this guide.
1) CLIENT-REQUIREMENTS
First thing: you need a dedicated server or a VPS.
Here is a list of European's providers:
http://www.kimsufi.com/
https://www.online.net/
https://www.ovh.com/vps/
http://www.soyoustart.com/serveurs-game/
Here is a list of Global's providers:
https://aws.amazon.com/fr/
And install the Recommended version: Debian 7.*
After, install and open PuTTY (link: http://www.putty.org/ )
1.1) Debian
Enter the server IP, "root" as login and the password => sent by your provider.
1.2) Ubuntu
Become root:
sudo su
or make your life harder:
add "sudo" before every command.
2) SERVER-REQUIREMENTS
apt-get update
apt-get upgrade
apt-get install apache2 gcc make libxml2-dev autoconf ca-certificates unzip nodejs curl libcurl4-openssl-dev pkg-config libssl-dev screen
3) INSTALL PHP
If PHP is already installed, please uninstall It with this command:
apt-get autoremove php php-dev php-cli
or
apt-get autoremove php5 php5-dev php5-cli
After you can continu.
Here we will compile & install a custom php
mkdir /home/install
cd /home/install
wget http://be2.php.net/get/php-5.6.36.tar.bz2/from/this/mirror -O php-5.6.36.tar.bz2
tar -xjvf php-5.6.36.tar.bz2
cd php-5.6.36
./configure --prefix /usr/local --with-mysql --enable-maintainer-zts --enable-sockets --with-openssl --with-pdo-mysql
make
make install
cd /home/install
wget http://pecl.php.net/get/pthreads-2.0.10.tgz
tar -xvzf pthreads-2.0.10.tgz
cd pthreads-2.0.10
/usr/local/bin/phpize
./configure
make
make install
echo 'date.timezone = Europe/Paris' >> /usr/local/lib/php.ini
echo 'extension=pthreads.so' >> /usr/local/lib/php.ini
Then install (linking php5 to apache2):
apt-get install libapache2-mod-php5
4) INSTALL & CONFIG MYSQL SERVER
4.1) INSTALLATION
apt-get install mysql-server php5-mysql
Don't forget the mysql root password. We will need it later
You can generate a secure password on this website: https://www.random.org/passwords/
Each password should have more than 15 characters long with Numbers, Digits and Uppercase/Lowercase Characters
apt-get install phpmyadmin
and select apache2

After the installation has completed, add phpmyadmin to the apache configuration.
nano /etc/apache2/apache2.conf
Add the phpmyadmin config at the end of the file.
Include /etc/phpmyadmin/apache.conf
Restart apache:
service apache2 restart
4.2) MAKE A DATABASE
Now, you have to choose between CONSOLE or PHPMyAdmin.
Fastest way = console
Graphic way = PhpmyAdmin
4.2.1) BY CONSOLE
=> Fastest way
mysql -u root -p
create database ebotv3;
create user 'ebotv3'@'localhost' IDENTIFIED by 'SQLSECUREPASSWORD';
Replace "SQLSECUREPASSWORD" by a secure password
You can generate a secure password on this website: https://www.random.org/passwords/
Each password should have more than 15 characters long with Numbers, Digits and Uppercase/Lowercase Characters
grant all privileges on ebotv3.* to 'ebotv3'@'localhost' with grant option;
exit
You can now go directly to step 5
4.2.2) With phpmyadmin
=> Easiest way
Now, go with your browser on server-ip/phpmyadmin
Example: 192.168.1.1/phpmyadmin
replace 192.168.1.1 by your server ip.
You can see something like this:

put root as username and the sql root password as password. (See step 4.1)
Go to Users > Add Users and then:
User name: ebotv3
Password: click on generate. It will give you a secure password. (Be sure to note it somewhere. We will need it later.)
We will name this password: SQLSECUREPASSWORD
click on "Create database with same name and grant all privileges."
And then, click on "Go"
5) INSTALL EBOT-CSGO
mkdir /home/ebot
cd /home/ebot
wget https://github.com/deStrO/eBot-CSGO/archive/master.zip
unzip master.zip
mv eBot-CSGO-master ebot-csgo
cd ebot-csgo
curl --silent --location https://deb.nodesource.com/setup_0.12 | bash -
apt-get install -y nodejs
npm install socket.io@0.9.12 archiver@0.4.10 formidable
curl -sS https://getcomposer.org/installer | php
php composer.phar install
cp config/config.ini.smp config/config.ini
#edit config config/config.ini with IP/PORT and MySQL access
MYSQL_PASS => put your the mysql ebotv3's password (it's the SQLSECUREPASSWORD)
BOT_IP => put your server ip instead of 127.0.0.1
EXTERNAL_LOG_IP = "" ; use this in case your server isn't binded with the external IP (behind a NAT)
You can ignore or not everything else.
6) INSTALL EBOT-WEB
cd /home/ebot
rm -R master*
wget https://github.com/deStrO/eBot-CSGO-Web/archive/master.zip
unzip master.zip
mv eBot-CSGO-Web-master ebot-web
cd ebot-web
cp config/app_user.yml.default config/app_user.yml
#edit config config/app_user.yml with ebot_ip and ebot_port
nano config/app_user.yml
ebot_ip: your-server-ip
(If you used net, don't put localhost or 127.0.0.1 here. It will not work. You need to put your server IP)
ebot_port: 12360
mode: net
if it is not for a LAN, put "net" instead of "lan"
#edit database config/databases.yml
nano config/databases.yml
So:
host: 127.0.0.1
(don't put localhost. It will not work in some systems)
username: ebotv3
password: SQLSECUREPASSWORD
(replace SQLSECUREPASSWORD with ebotv3 mysql's password)
mkdir cache
chown -R www-data *
chmod -R 777 cache
php symfony cc
php symfony doctrine:build --all --no-confirmation
php symfony guard:create-user --is-super-admin admin@ebot admin admin
7) CONFIG APACHE
7.1) Without sub-domain
Create the file /etc/apache2/conf.d/ebotv3
nano /etc/apache2/sites-available/ebotv3.conf
and put this inside:
Alias / /home/ebot/ebot-web/web/
<Directory /home/ebot/ebot-web/web/>
AllowOverride All
<IfVersion < 2.4>
Order allow,deny
allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</Directory>
(to paste on console, just do a right click in putty)
Then do ctrl+x for going back to console
Then:
a2enmod rewrite
a2ensite ebotv3.conf
service apache2 reload
Now go to /home/ebot/ebot-web/web/ and edit .htaccess
uncomment the following line (by removing the "#":
RewriteBase /
You can now go to step 7.3
7.2) For a sub-domain
Create the file /etc/apache2/conf.d/ebotv3
nano /etc/apache2/sites-available/ebotv3.conf
and put this inside:
<VirtualHost *:80>
#Edit your email
ServerAdmin contact@mydomain.com
#Edit your sub-domain
ServerAlias ebot.mydomain.com
DocumentRoot /home/ebot/ebot-web/web
<Directory /home/ebot/ebot-web/web/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
<IfVersion < 2.4>
Order allow,deny
allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</Directory>
</VirtualHost>
Then:
a2enmod rewrite
a2ensite ebotv3.conf
service apache2 reload
7.3) Discover your eBot-panel:
Now, go with your browser on server-ip/admin.php
or ebot.mydomain.com/admin.php
Example: 192.168.1.1/admin.php
replace 192.168.1.1 by your server ip or by your domain
(If you used net, don't put localhost or 127.0.0.1 here. It will not work. You need to put your server IP)
The last thing is to connect yourself to the website:
username: admin
password: admin
and change the password.
7.4) Delete /web/installation
cd /home/ebot/ebot-web/web
rm -R installation
8) Start/Stop ebot daemon
8.1) Starting ebot-csgo
(Thanks to @heew for this script)
cd /home/install
wget https://raw.githubusercontent.com/vince52/eBot-initscript/master/ebotv3; mv ebotv3 /etc/init.d/ebot && chmod +x /etc/init.d/ebot
Then:
Start ebot-csgo:
service ebot start
#or
/etc/init.d/ebot start
Now in web panel (admin.php), you should see :

In the next step, I will give you some useful commands
8.2) Some Useful commands:
Start ebot-csgo:
service ebot start
#or
/etc/init.d/ebot start
Stop ebot-csgo:
service ebot stop
#or
/etc/init.d/ebot stop
Restart ebot-csgo:
service ebot restart
#or
/etc/init.d/ebot restart
Status ebot-csgo:
service ebot status
#or
/etc/init.d/ebot status
8.2.2) Minimal security
MYSQL:
mysql_secure_installation
8.3) Common issues
8.3.1)
<?php
require_once(dirname(FILE).'/../config/ProjectConfiguration.class.php');
$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'prod', false);
sfContext::createInstance($configuration)->dispatch();
You have to install libapache2-mod-php5
so:
apt-get install libapache2-mod-php5
9) Wait... give me your feedback!!!
Leave me a comment if It is working or not.
It's always good to see feedback.
If you have some errors using this guide, let me know.
If you see some "bad English", let me know too.
You can help me to improve it bellow...
8.4) Thanks to ebot community
Thanks to @deStrO for this amazing tool!
Thanks to @heew for doing this new update.
Thanks to everyone who post some feedbacks.
If something is going wrong please check the FAQ before posting anything:
http://forum.esport-tools.net/d/5-frequently-asked-questions-about-ebot