FlexiSip installation and configuration on Debian 9

Flexisip

Flexisip is a complete, modular and scalable SIP server suite written in C++11, comprising proxy, presence and group chat functions.

Flexisip offers an easy-to-install SIP server solution, offering all the features required to deploy your own SIP service tuned for mobile or desktop applications, “out of the box”.

Flexisip can be integrated into your SIP infrastructure for various purposes : Continue reading

Flexisip error Failed to find shared library for backend mysql

I installed Flexisip using official documentation , installed additional components like MariaDB (MySQL) and Redis, performed initial setup of configuration files, created database and DB user.

I started flexisip services with

and by looking in /var/opt/belledonne-communications/log/flexisip/flexisip-conference.log I noticed the following error:

Continue reading

Magento server performance configuration

magento-server-perofrmance-setupThere are best practices in Magento 2 performance configuration of operating system, MySQL, PHP and webserver. This article covers important configurations of all components that will speed up the Magento site.

Continue reading

DDoS Protection With IPtables

iptablesThere are different ways of building your own anti-DDoS rules for iptables. This guide will describe comprehensive approach to protect server from DDoS attacks:

  1. Select the best iptables table and chain to stop DDoS attacks
  2. Tweak your kernel settings to mitigate the effects of DDoS attacks
  3. Use iptables to block most TCP-based DDoS attacks
  4. Use iptables SYNPROXY to block SYN floods

Here we’ll only cover protection from TCP-based attacks. Most UDP-based attacks are amplified reflection attacks that will exhaust the network interface card of any common server. Continue reading

Selenium error: Chrome failed to start: exited abnormally

selenium-and-chromeWhen I launched Selenium tests In Jenkins with Maven on CentOS 7 I got:

unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn’t exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)

Full error:
org.openqa.selenium.WebDriverException:
unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'testenv', ip: '192.168.3.33', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-693.17.1.el7.x86_64', java.version: '1.8.0_152'
Driver info: driver.version: ChromeDriver
remote stacktrace: #0 0x561bcf9f2479

Continue reading

Ergo B501 flashing and malware cleaning

ergo-b501-maximum-dual-sim-black

In addition to its good performance and capacitive battery, at an attractive price, the Ergo B501 firmware has several apk built-in that force the advertisement to load after some time using the device. The latest official firmware at the moment: Ergo B501_OS3.0 Lite_20171117 .

You can get rid of viruses in Ergo B501 by flashing a virus-free firmware. Continue reading

Disk Encryption on CentOS using LUKS Cryptsetup

luks-linux-disk-encryptionLUKS (Linux Unified Key Setup) is the standard for Linux hard disk encryption. By providing a standard on-disk-format, it does not only facilitate compatibility among distributions, but also provides secure management of multiple user passwords. In contrast to existing solution, LUKS stores all setup necessary setup information in the partition header, enabling the user to transport or migrate his data seamlessly. (source: http://code.google.com/p/cryptsetup/) Continue reading

Windows RunAs command syntax and examples

Windows-RunAs-commandRunAs is a very useful command on Windows OS. This command enables one to run a command in the context of another user account. One example scenario where this could be useful is: Suppose you have both a normal user account and an administrator account on a computer and currently you are logged in as normal user account. Now you want to install some software on the computer, but as you do not have admin privileges you can’t install the same from the current account. One option is to switch user and login as administrator. Instead, you can do the same by simply using runas command. You just need to launch the installer from command prompt using runas command and by providing administrator login id and password. Continue reading

Skype for Business Server 2019 Monitoring Reports Error: Cannot get the ReportServerWebService URL

When deploying a recent Skype for Business Server 2019 deployment, I came across an issue when installing monitoring reports on a server. In previous editions of SQL Server, SQL Server Reporting Services (SSRS) was installed and configured by default. With the release of SQL Server 2017, this is now a seperate download that only installs the service. After installing SSRS, the Report Server Web Service/Report Manager in Reporting Services Configuration Manager needed to be configured.

Continue reading

Install-CsDatabase error: The network name cannot be found.

skype-for-businessWhile publishing Skype for Business topology when new databases has to be created on Backend servers there may be an error publishing topology upon execution of Install-CsDatabase cmdlet:
Error: The network name cannot be found.
▼ Details
└ Type: IOException
└ ▼ Stack Trace
└ at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj, Boolean checkHost)
at System.IO.Directory.InternalCreateDirectoryHelper(String path, Boolean checkHost)
at Microsoft.Rtc.Common.Data.DatabaseManager.CreateDatabase(String dbFileBase, String dbPath, String logPath, Int32 dbSizeMB, Int32 logSizeMB, Int32 dbGrowthMB, Int32 logGrowthMB, Int32 maxDbSizeMB, Int32 maxLogSizeMB)
at Microsoft.Rtc.Common.Data.DatabaseManager.CleanInstallDatabase(String dbFileBase, String initialScripfilePath, String dbPath, String logPath, Int32 dbSizeMB, Int32 logSizeMB, Int32 dbGrowthMB, Int32 logGrowthMB, Int32 maxDbSizeMB, Int32 maxLogSizeMB)
at Microsoft.Rtc.Common.Data.DbSetupBase.CleanInstallDatabase()
at Microsoft.Rtc.Common.Data.DbSetupBase.CreateOrUpdateDatabase()
at Microsoft.Rtc.Management.Deployment.Tasks.DatabaseCreator.CreateDatabaseForFeature(String featureName, Boolean clean, Boolean update, String sqlServer, String instanceName, String databaseType, List`1 databaseNames, Boolean collocated, Boolean backup, Boolean noreindex, DatabasePathAssignment[] pathAssignments, Boolean broadCast, String& logfile)

Continue reading

Load more