We were just added to Capterra – Please leave us a review
Good day all, we have recently been added to Capterra.com which is a software search site as well as softwareadvice.com and getapp.com. If you wouldn’t mind writing us a review so we can reach our first 10 reviews to unlock some further options for us, we would really appreciate it. Thank you
U.S. Supreme Court ruling: ATDS Definition – Sorry for your loss TCPA lits!
The US Supreme court has ruled on the definition of an “ATDS” on a big loss to TCPA litigators.
They answer the question of what exactly an auto-dialer is:
“To qualify as an “automatic telephone dialing system,” a device must have the capacity either to store a telephone number using a random or sequential generator or to produce a telephone number using a random or sequential number generator.”
Since CyburDial does neither of these things, it is technically not an “automatic telephone dialing system” as defined by the TCPA!
Download the ruling here: https://tinyurl.com/tcpawin
How to – Use the built in Dynamic Portal for Vicibox
Ok so I have had a LOT of people ask me how to use the dynamic portal for Vicibox or for their own Vicidial scratch install. I didn’t think I needed to go over this topic, since it’s in the install instructions for vicibox9, but since there has been a very high demand for it. This is the prelude for the live session I will be giving in a couple hours.
So there is an easy way to install this on your server if you are using a scratch install for Leap by adding the repo for Vicibox that matches your Linux distro. You can go to the url below:
Once you find the Leap version you are using, just add the repo such as this: For this example, Leap 15.2
The Steps – Vicibox Dynamic Portal
Step 1 – Add the Vicibox repo
zypper ar https://download.opensuse.org/repositories/home:/vicidial:/vicibox/openSUSE_Leap_15.2/home:vicidial:vicibox.repo
Step 2 – Install the needed files
After you add the repo, you can just type:
zypper install vicibox*
Step 3 – Edit the apache config files for dynamic portal
For this next part I will show you the code for the dynamic portal conf file incase you are trying to install this on another OS. Here is the dynportal.conf file which is in /etc/apache2/vhost.d/ and you can find an example of the ssl version below in the picture
<VirtualHost *:81>
ServerAdmin admin@company.com
# This needs to be different from other vhosts otherwise they'll get
# mod_cband applied to it too since it works by ServerName not VHost
ServerName dynportal.company.com
#ServerAlias
DocumentRoot /srv/www/vhosts/dynportal
ErrorLog /var/log/apache2/dynportal-error_log
#CustomLog /var/log/apache2/access_log combined
CustomLog /dev/null combined
HostnameLookups Off
UseCanonicalName Off
ServerSignature Off
TraceEnable Off
Include /etc/apache2/conf.d/php7.conf
Include /etc/apache2/conf.d/mod_deflate.conf
Include /etc/apache2/conf.d/mod_cband.portal
DirectoryIndex index.html index.php index.htm
# Prevent access to debug and other things
<Files ~ "^\.ht">
Require all denied
</Files>
<Files ~ "^\debug.txt">
Require all denied
</Files>
<Directory "/srv/www/vhosts/dynportal/inc">
Require all denied
</Directory>
# And allow our directory to be served finally
<Directory "/srv/www/vhosts/dynportal">
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>
# Take care of CSS and some other web-crap security things
<IfModule mod_headers.c>
Header always set X-Frame-Options: DENY
Header always set X-XSS-Protection "1; mode=block"
Header always set X-Content-Type-Options: nosniff
Header always set Content-Security-Policy "script-src 'self'; object-src 'self'"
Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;"
</IfModule>
</VirtualHost>
Make sure you change the domain and email and then restart Apache: service apache restart
<VirtualHost *:446>
ServerAdmin admin@agentwebdialer.com
# This needs to be different from other vhosts otherwise they'll get
# mod_cband applied to it too since it work by ServerName not VHost
ServerName agentwebdialer.com
#ServerAlias
DocumentRoot /srv/www/vhosts/dynportal
ErrorLog /var/log/apache2/dynportal-error_log
#CustomLog /var/log/apache2/access_log combined
CustomLog /dev/null combined
HostnameLookups Off
UseCanonicalName Off
ServerSignature Off
TraceEnable Off
Include /etc/apache2/conf.d/php7.conf
Include /etc/apache2/conf.d/mod_deflate.conf
Include /etc/apache2/conf.d/mod_cband.portal
DirectoryIndex index.html index.php index.htm
# Configure SSL cert
SSLEngine on
SSLCertificateFile /etc/certbot/live/agentwebdialer.com/cert.pem
#SSLCACertificateFile /etc/apache2/ssl.crt/CA_chain.crt
SSLCertificateKeyFile /etc/certbot/live/agentwebdialer.com/privkey.pem
# SSL Options
<FilesMatch "\.(php)$">
SSLOptions +StdEnvVars
</FilesMatch>
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
# Prevent access to debug and other things
<Files ~ "^\.ht">
Require all denied
</Files>
<Files ~ "^\debug.txt">
Require all denied
</Files>
<Directory "/srv/www/vhosts/dynportal/inc">
Require all denied
</Directory>
# And allow our directory to be served finally
<Directory "/srv/www/vhosts/dynportal">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
# Take care of CSS and some other web-crap security things
<IfModule mod_headers.c>
Header always set X-Frame-Options: DENY
Header always set X-XSS-Protection "1; mode=block"
Header always set X-Content-Type-Options: nosniff
Header always set Content-Security-Policy "script-src 'self'; object-src 'self'"
Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;"
</IfModule>
</VirtualHost>
Step 4 – Change the default settings for the dynamic portal
Make sure you change the defaults.inc.php file in /srv/www/vhosts/dynportal/inc
Step 5- Open Ports on Firewall
There is a service added to the yast firewall to add the dynamic portal named viciportal, make sure you add this to the “public” zone
Step 6 – Add Crontab Entry
The last step is to add a crontab entry for the dynamic portal entries as such:
### ViciBox integrated firewall, by default just load the VoIP Black list and reload it every 4 hours
### You can lock everyone out of your server if you set this wrong, so understand what you are doing!!!
@reboot /usr/local/bin/VB-firewall.pl --whitelist=ViciWhite --dynamic --quiet
* * * * * /usr/local/bin/VB-firewall.pl --whitelist=ViciWhite --dynamic
chmod -R 775 /srv/www/vhosts/dynportal service apache restart
Step 7 – You’re Done! Check it out!
After you restart apache and open the port in the firewall, you should be able to go to http://yourserver:81/valid8.php or https://yourserver:446/valid8.php for SSL and see the following:
Well, that’s it, I did this from memory instead of trying it from scratch so if I missed anything, I’ll update the instructions, just leave a comment below. Thanks. See you guys soon at the Live session: https://fb.me/e/5zj1fJ9Fg
Login to the admin panel and then go to system settings
Scroll down to “Allow IP Lists” and enable it by setting it to “1”
Step 2 – Go to the Admin user(6666) and enable access
Go down to the bottom of the user setting screen and set “Modify IP Lists” to 1(good idea to ignore ip list for yourself)
Step 3 – Turn on whitelist for the user groups you want to limit access
Go to user groups > scroll down to whitelist settings
Step 4 – Go back into admin section and click IP Lists to add IP’s
Thats it, you have now enabled IP whitelist access only. Make sure to update your crontab entries for VB-firewall.pl from –blacklist to –whitelist=ViciWhite and such like so:
Make sure you tune in for tomorrow’s live session to learn how to start using the built in dynamic portal and keeping your systems secure.
CyburDial -:- A Cloud Based ‘Zero Trust’ Predictive Dialer
In this emerging world of ransomware, malware, and hacks such as SolarWinds becoming our everyday reality, how concerned are you with data security? How important is your privacy and sense of security? WCW I(World Cyber War) is right around the corner and if you think that your business is not a target, then perhaps you should check out my blog post about how hackers are leveraging Linux servers, especially for their personal criminal VoIP needs(ie. for ransomware threats) and other monetary gains. That’s why, all of us here at CyburDial, offer you a “Zero Trust” environment as suggested by the NSA, that we invite you to try for free by filling out the form below.
What does that mean and how is that possible?
Our new CyburDial system, with it’s fresh new design, offers you such tools as ‘IP whitelist access’, ‘2 factor authentication’ and acompletely ‘encrypted (SSL/STIR/SHAKEN)’ systemwide connection, combined with the peace of mindthat our network is operatedand maintained by our Cyber Securityprofessionals lead by myself, of which I am a certified ethical hacker that has been in the cyber security industry since the late 90’s. So, on behalf of myself, my fellow security staff members, technical support staff and the rest of us here at CyburDial, are proud to offer you CyburDial.
What’s new?
Our quality control module not only lets you create your own score cards to dictate the way a call progresses, you then have access to listen, grade and reassign the call back to its original caller or transfer it to its next stage of the sales funnel. Our programming team alongside CyburDial’s API capabilities can give your business management system, a custom fit, based around your business’ needs. We invite you to sign in and try it out, then get a free trial account on CyburDial by filling out the form below:
Well, it seems there is an issue with the installer now since Leap 15.1 went end of life and no longer supports updates. So what do you do now? A scratch install on Leap 15.2 is one option following a post I wrote up for that a few days ago, or you could upgrade 15.1 to 15.2 following this tutorial.
Vicibox 9 Fix as well
Step 1 – Preparing for upgrade by enabling the proper repository
zypper modifyrepo --enable openSUSE-Leap-15.1-Update
zypper ref
zypper up
Step 2 – Change existing repo’s for the others
This next part will change the repo’s to 15.2 and then we will start the fun part.
files="$(zypper lr -u | awk -F'|' '$4 ~ /Yes/ { gsub (" ", "", $2); r="/etc/zypp/repos.d/"$2".repo"; print r }')"
for f in $files
doecho "Backup of $f saved to /root/ before patching it up ..."
cp -f "$f" /root/sed -i 's+/leap/15.1+/leap/$releasever+' "$f"
sed -i 's+15.1.1+15.2+' "$f"
sed -i 's+15.1+15.2+' "$f"
done
If you have any problems, just comment here and I will help you out the best I can or you can drop by our Skype Group chat: https://join.skype.com/ujkQ7i5lV78O . Hope this helps a lot of you out there.
March 28th Update: Make sure you copy php7.conf to mod_php7.conf or the dynportal and audiostore conf files will cause apache to have errors. You can do so with the following command:
cp /etc/apache2/conf.d/mod_php7.conf /etc/apache2/conf.d/php7.conf or vica versa, i forget
MySQL manages connections to the database server through the use of a socket file, a special kind of file that facilitates communications between different processes. The MySQL server’s socket file is named mysqld.sock and on Ubuntu systems it’s usually stored in the /var/run/mysqld/ directory. This file is created by the MySQL service automatically.
Sometimes, changes to your system or your MySQL configuration can result in MySQL being unable to read the socket file, preventing you from gaining access to your databases. The most common socket error looks like this:
OutputERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
There are a few reasons why this error may occur, and a few potential ways to resolve it.
One common cause of this error is that the MySQL service is stopped or did not start to begin with, meaning that it was unable to create the socket file in the first place. To find out if this is the reason you’re seeing this error, try starting the service with systemctl:
sudo systemctl start mysql
Then try accessing the MySQL prompt again. If you still receive the socket error, double check the location where your MySQL installation is looking for the socket file. This information can be found in the mysqld.cnf file:
sudo nano /etc/mysql/mysql.conf.d/mysql.cnf
Look for the socket parameter in the [mysqld] section of this file. It will look like this:/etc/mysql/mysql.conf.d/mysqld.cnf
. . .
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
. . .
Close this file, then ensure that the mysqld.sock file exists by running an ls command on the directory where MySQL expects to find it:
ls -a /var/run/mysqld/
If the socket file exists, you will see it in this command’s output:
If the file does not exist, the reason may be that MySQL is trying to create it, but does not have adequate permissions to do so. You can ensure that the correct permissions are in place by changing the directory’s ownership to the mysql user and group:
sudo chown mysql:mysql /var/run/mysqld/
Then ensure that the mysql user has the appropriate permissions over the directory. Setting these to 775 will work in most cases:
sudo chmod -R 755 /var/run/mysqld/
Finally, restart the MySQL service so it can attempt to create the socket file again:
sudo systemctl restart mysql
Then try accessing the MySQL prompt once again. If you still encounter the socket error, there’s likely a deeper issue with your MySQL instance, in which case you should review the error log to see if it can provide any clues.
How to – Scratch instructions for Vicidial(Vicibox9) on OpenSuSE Leap 15.2
So, I have installed Vicidial on Leap 15.2 and wrote up an instructions step by step and wanted to share it for others to try and make sure it works for you as well. I have tested this on an EC2 instance. If you prefer a video rather than text, scroll down to the bottom to watch HBTutorials (Harold) YouTube video.
zypper ar https://download.opensuse.org/repositories/home:vicidial:asterisk-13/openSUSE_Leap_15.2/home:vicidial:asterisk-13.repo
zypper ar https://download.opensuse.org/repositories/home:/vicidial/openSUSE_Leap_15.2/home:vicidial.repo
zypper addrepo https://download.opensuse.org/repositories/devel:languages:python:Factory/openSUSE_Leap_15.2/devel:languages:python:Factory.repo
zypper ar https://download.opensuse.org/repositories/home:/zippy:/jx:/packages-ready/openSUSE_Leap_15.2/ home_zippy_jx_packages-ready
zypper ar http://download.opensuse.org/distribution/leap/15.2/repo/oss/ openSUSE-Leap-15.2-Oss
zypper ar http://download.opensuse.org/repositories/devel:/languages:/perl/openSUSE_Leap_15.2/ openSUSE-Leap-15.2-PERL
zypper ar http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_Leap_15.2/ openSUSE-Leap-15.2-PHP-Applications
zypper ar http://download.opensuse.org/update/leap/15.2/oss/ openSUSE-Leap-15.2-Update
zypper ar https://download.opensuse.org/repositories/home:/vicidial:/vicibox/openSUSE_Leap_15.2/home:vicidial:vicibox.repo
zypper ref
zypper up
zypper in asterisk* dahdi dahdi-linux dahdi-linux-devel dahdi-tools libpri-devel voicesync voicesync-kmp-default
zypper install sqlite3-devel mariadb-server mariadb make patch gcc gcc-c++ subversion php7 php7-devel php7-gd gd-devel php7-mbstring php7-mcrype php7-imap php7-ldap php7-mysql php7-odbc php7-pear php7-xml php7-xmlrpc curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel httpd libpcap libpcap-devel libnet ncurses ncurses-devel screen mysql-devel ntp mutt wget nano unzip sipsak sox libuuid-devel httpd php-common php-pdo mod_ssl perl-DBI perl-DBD-MySQL perl-Digest-HMAC perl-YAML perl-ExtUtils-ParseXS perl-NetAddr-IP perl-Crypt-SSLeay perl-Curses perl-DBD-Pg perl-Module-ScanDeps perl-Text-CSV perl-HTML-Template perl-IO-Compress perl-Text-Glob perl-Jcode perl-Test-Script perl-Archive-Tar perl-Test-Base perl-OLE-Storage_Lite perl-Archive-Zip perl-Net-Server perl-Convert-ASN1 perl perl-Compress-Raw-Zlib perl-Digest-SHA1 perl-Data-Dumper perl-Error perl-ExtUtils-CBuilder perl-Test-Tester perl-Parse-RecDescent perl-Spiffy perl-IO-Zlib perl-Module-Build perl-HTML-Parser perl-Net-SSLeay perl-Proc-ProcessTable perl-TermReadKey perl-Term-ReadLine-Gnu perl-Digest-SHA perl-Tk perl-Net-SNMP perl-Test-NoWarnings perl-XML-Writer perl-Proc-PID-File perl-Compress-Raw-Bzip2 perl-libwww-perl perl-XML-Parser perl-File-Remove perl-Parse-CPAN-Meta perl-Set-Scalar perl-Probe-Perl perl-File-Which perl-Package-Constants perl-Module-Install perl-File-HomeDir perl-Spreadsheet-ParseExcel perl-Mail-Sendmail perl-Spreadsheet-XLSX asterisk-perl perl-version perl-Crypt-DES perl-URI perl-Net-Daemon perl-IO-stringy perl-YAML-Tiny perl-HTML-Tagset perl-Socket6 perl-BSD-Resource perl-IPC-Run3 perl-Text-CSV_XS perl-Unicode-Map perl-Net-Telnet perl-PAR-Dist perl-Date-Manip perl-JSON perl-rrdtool lame screen iftop htop perl-GD apache2-mod_php7 vicibox* git certbot
systemctl enable mariadb;systemctl enable apache2
systemctl start mariadb;systemctl start apache2
zypper in libjansson4 (change vendor to vicidial version)
perl -MCPAN -e 'my $c = "CPAN::HandleConfig"; $c->load(doit => 1, autoconfig => 1); $c->edit(prerequisites_policy => "follow"); $c->edit(build_requires_install_policy => "yes"); $c->commit'
cpan -i String::CRC Tk::TableMatrix Net::Address::IP::Local Term::ReadLine::Gnu Spreadsheet::Read Net::Address::IPv4::Local RPM::Specfile Spreadsheet::XLSX Spreadsheet::ReadSXC MD5 Digest::MD5 Digest::SHA1 Bundle::CPAN Pod::Usage Getopt::Long DBI DBD::mysql Net::Telnet Time::HiRes Net::Server Mail::Sendmail Unicode::Map Jcode Spreadsheet::WriteExcel OLE::Storage_Lite Proc::ProcessTable IO::Scalar Scalar::Util Spreadsheet::ParseExcel Archive::Zip Compress::Raw::Zlib Spreadsheet::XLSX Test::Tester Spreadsheet::ReadSXC Text::CSV Test::NoWarnings Text::CSV_PP File::Temp Text::CSV_XS Spreadsheet::Read LWP::UserAgent HTML::Entities HTML::Strip HTML::FormatText HTML::TreeBuilder Switch Time::Local MIME::POP3Client Mail::IMAPClient Mail::Message IO::Socket::SSL readline
cd /usr/bin/
curl -LOk http://xrl.us/cpanm
chmod +x cpanm
cpanm -f File::Which
cpanm -f File::HomeDir
cpanm CPAN::Meta::Requirements
cpanm -f CPAN
cpanm -f DBD::mysql
cpanm User::Identity --force
cpanm YAML MD5 Digest::MD5 Digest::SHA1 Curses Getopt::Long Net::Domain Term::ReadKey Term::ANSIColor HTML::FormatText MIME::Decoder Mail::POP3Client Mail::Message Crypt::Eksblowfish::Bcrypt
mkdir -p /var/lib/swap
dd if=/dev/zero of=/var/lib/swap/swapfile bs=1M count=4096
mkswap /var/lib/swap/swapfile
swapon /var/lib/swap/swapfile
cat /proc/swaps
nano /etc/fstab
paste this: /var/lib/swap/swapfile swap swap defaults 0 0
save and exit
mysql
SET GLOBAL connect_timeout=60;
CREATE DATABASE `asterisk` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'cron'@'localhost' IDENTIFIED BY '1234';
GRANT SELECT,INSERT,UPDATE,DELETE,LOCK TABLES on asterisk.* TO cron@'%' IDENTIFIED BY '1234';
CREATE USER 'custom'@'localhost' IDENTIFIED BY 'custom1234';
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,LOCK TABLES on asterisk.* TO custom@'%' IDENTIFIED BY 'custom1234';
GRANT SELECT,INSERT,UPDATE,DELETE,LOCK TABLES on asterisk.* TO cron@localhost IDENTIFIED BY '1234';
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,LOCK TABLES on asterisk.* TO custom@localhost IDENTIFIED BY 'custom1234';
GRANT RELOAD ON *.* TO cron@'%';
GRANT RELOAD ON *.* TO cron@localhost;
GRANT RELOAD ON *.* TO custom@'%';
GRANT RELOAD ON *.* TO custom@localhost;
flush privileges;
exit
mkdir /usr/src/astguiclient
cd /usr/src/astguiclient
svn checkout svn://svn.eflo.net:3690/agc_2-X/trunk
mysql
SET GLOBAL connect_timeout=60;
use asterisk;
\. /usr/src/astguiclient/trunk/extras/MySQL_AST_CREATE_tables.sql
\. /usr/src/astguiclient/trunk/extras/first_server_install.sql
ALTER TABLE phones ALTER template_id SET DEFAULT '';
quit
perl /usr/src/astguiclient/trunk/install.pl
perl /usr/share/astguiclient/ADMIN_area_code_populate.pl
perl /usr/src/astguiclient/trunk/bin/ADMIN_update_server_ip.pl
###Now edit the rc.local by typing the command line below and then pasting the entire section after that
nano /etc/rc.local
### paste this below:
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
# OPTIONAL enable ip_relay(for same-machine trunking and blind monitoring)
/usr/share/astguiclient/ip_relay/relay_control start 2>/dev/null 1>&2
# Disable console blanking and powersaving
/usr/bin/setterm -blank
/usr/bin/setterm -powersave off
/usr/bin/setterm -powerdown
### start up the MySQL server
systemctl start mariadb.service
systemctl enable mariadb.service
### start up the apache web server
systemctl start apache2
systemctl enable apache2
### roll the Asterisk logs upon reboot
/usr/share/astguiclient/ADMIN_restart_roll_logs.pl
### clear the server-related records from the database
/usr/share/astguiclient/AST_reset_mysql_vars.pl
### load dahdi drivers
modprobe dahdi
/usr/sbin/dahdi_cfg -vvvvvvvvvvvvv
### sleep for 20 seconds before launching Asterisk
sleep 20
### start up asterisk
/usr/share/astguiclient/start_asterisk_boot.pl
############## END PASTE HERE ##################
crontab -e
### paste below:
### recording mixing/compressing/ftping scripts
#0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_mix.pl
0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_mix.pl --MIX
0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_VDonly.pl
1,4,7,10,13,16,19,22,25,28,31,34,37,40,43,46,49,52,55,58 * * * * /usr/share/astguiclient/AST_CRON_audio_2_compress.pl --GSM
#2,5,8,11,14,17,20,23,26,29,32,35,38,41,44,47,50,53,56,59 * * * * /usr/share/astguiclient/AST_CRON_audio_3_ftp.pl --GSM
### keepalive script for astguiclient processes
* * * * * /usr/share/astguiclient/ADMIN_keepalive_ALL.pl --cu3way
### kill Hangup script for Asterisk updaters
* * * * * /usr/share/astguiclient/AST_manager_kill_hung_congested.pl
### updater for voicemail
* * * * * /usr/share/astguiclient/AST_vm_update.pl
### updater for conference validator
* * * * * /usr/share/astguiclient/AST_conf_update.pl
### flush queue DB table every hour for entries older than 1 hour
11 * * * * /usr/share/astguiclient/AST_flush_DBqueue.pl -q
### fix the vicidial_agent_log once every hour and the full day run at night
33 * * * * /usr/share/astguiclient/AST_cleanup_agent_log.pl
50 0 * * * /usr/share/astguiclient/AST_cleanup_agent_log.pl --last-24hours
## uncomment below if using QueueMetrics
#*/5 * * * * /usr/share/astguiclient/AST_cleanup_agent_log.pl --only-qm-live-call-check
## uncomment below if using Vtiger
#1 1 * * * /usr/share/astguiclient/Vtiger_optimize_all_tables.pl --quiet
### updater for VICIDIAL hopper
* * * * * /usr/share/astguiclient/AST_VDhopper.pl -q
### adjust the GMT offset for the leads in the vicidial_list table
1 1,7 * * * /usr/share/astguiclient/ADMIN_adjust_GMTnow_on_leads.pl --debug
### reset several temporary-info tables in the database
2 1 * * * /usr/share/astguiclient/AST_reset_mysql_vars.pl
### optimize the database tables within the asterisk database
3 1 * * * /usr/share/astguiclient/AST_DB_optimize.pl
## adjust time on the server with ntp
30 * * * * /usr/sbin/ntpdate -u pool.ntp.org 2>/dev/null 1>&2
### VICIDIAL agent time log weekly and daily summary report generation
2 0 * * 0 /usr/share/astguiclient/AST_agent_week.pl
22 0 * * * /usr/share/astguiclient/AST_agent_day.pl
### VICIDIAL campaign export scripts (OPTIONAL)
#32 0 * * * /usr/share/astguiclient/AST_VDsales_export.pl
#42 0 * * * /usr/share/astguiclient/AST_sourceID_summary_export.pl
### remove old recordings more than 7 days old
#24 0 * * * /usr/bin/find /var/spool/asterisk/monitorDONE -maxdepth 2 -type f -mtime +7 -print | xargs rm -f
### roll logs monthly on high-volume dialing systems
#30 1 1 * * /usr/share/astguiclient/ADMIN_archive_log_tables.pl
### remove old vicidial logs and asterisk logs more than 2 days old
28 0 * * * /usr/bin/find /var/log/astguiclient -maxdepth 1 -type f -mtime +2 -print | xargs rm -f
29 0 * * * /usr/bin/find /var/log/asterisk -maxdepth 3 -type f -mtime +2 -print | xargs rm -f
30 0 * * * /usr/bin/find / -maxdepth 1 -name "screenlog.0*" -mtime +4 -print | xargs rm -f
### cleanup of the scheduled callback records
25 0 * * * /usr/share/astguiclient/AST_DB_dead_cb_purge.pl --purge-non-cb -q
### GMT adjust script - uncomment to enable
#45 0 * * * /usr/share/astguiclient/ADMIN_adjust_GMTnow_on_leads.pl --list-settings
### Dialer Inventory Report
1 7 * * * /usr/share/astguiclient/AST_dialer_inventory_snapshot.pl -q --override-24hours
### inbound email parser
* * * * * /usr/share/astguiclient/AST_inbound_email_parser.pl
################ END PASTE HERE ####################
a2enmod ssl
a2enflag SSL
nano /etc/apache2/httpd.conf
### add these lines to the top:
LoadModule php7_module /usr/lib64/apache2/mod_php7.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
nano /etc/my.cnf
enter following line just below [mysqld]:
sql_mode=NO_ENGINE_SUBSTITUTION
reboot
go to http://127.0.0.1/vicidial/admin.php
Enjoy!!
-CarpeNox
How to – Setup FreePBX 15 & Asterisk 16 on a Raspberry Pi 4
Creating a “Contact Center to Go”
For this setup I used the Raspberry Pi 4 Model B – 8 GB encased in the above casing. I will go over step by step instructions on what I just did to create a little “mini mobile call center to go” with FreePBX 15 and Asterisk 16.
Step 1 – Purchase a Raspberry Pi and micro SD card
Personally I went with Vilros.com for my purchase and was not disappointed.
Step 2 – Download RasPBX
You need to download RasPBX next, I downloaded it from the main source at http://www.raspberry-asterisk.org/downloads/ and then unzipped the file which gave me a raspbx-10-10-2020.img file
Step 3 – Download Win32DiskImager and begin installation
Install Win32DiskImager and then choose the raspbx.img and the drive you have your micro SD card on and click “write”.
32 GB Micro SD card
Step 4 – Start up your Rasperry Pi & updating it
Once you power on your device and let it start up, you will be prompted for a username and password. The user is “Pi” and the password is “raspberry”. After you login and make sure you have an internet connection, run “raspbx-upgrade” to update everything and check if Asterisk is running correctly.
Step 5 – FreePBX
Lets get started on FreePBX setup now. Go to http://raspbx.ip and click on Admin > Admin Module and check online for updates
You now have a “Contact Center to Go” in your pocket.
If you have any questions or comments, feel free to reply to this post or hit me up on Skype.
How to – Get phpMyAdmin working and secured on a Vicibox 9 installation
So you’ve tried to access phpMyAdmin after installing Vicibox 9 iso on your bare metal or virtual server and it’s not working…..and you’re wondering why? Well, as a security precaution, phpMyAdmin is not enabled by default and needs a symbolic link created, so let’s start there. If you don’t have it installed already, “zypper in phpMyAdmin”.
Creating the symbolic link
Type the following command into your Linux CLI:
ln -s /usr/share/phpMyAdmin /srv/www/htdocs/
Type ll(LL) within the /srv/www/htdocs/ directory to make sure the symbolic link was created correctly
Now that we have created the symbolic link, we need to secure this directory to make sure any unwanted access isn’t permitted. We are going to accomplish this using .htaccess
Securing phpMyAdmin using Htaccess
Edit your phpMyAdmin.conf file in /etc/apache2/conf.d
phpMyAdmin.conf
nano /etc/apache2/conf.d/phpMyAdmin.conf
### change the following:
<Directory /usr/share/phpMyAdmin>
Options FollowSymLinks
AllowOverride All #This was "None"
<IfVersion < 2.4>
Order Deny,Allow
Allow from all
</IfVersion>
### save and exit ###
nano /usr/share/phpMyAdmin/.htaccess
####Enter the following:
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpMyAdmin/.htpasswd
Require valid-user
###save and exit
zypper install apache2-utils
htpasswd -c /etc/phpMyAdmin/.htpasswd whatever.username.u.want
Password: enter the password u want
##restart apache
service apache restart or systemctl restart apache
###go to your phpmyadmin
https://server.ip/phpMyAdmin
##Enjoy
Hopefully this will help some of you avoid some easier hacks. For more information on securing your servers, check out our free security audit!