Configure RabbitMQ failover cluster
RabbitMQ is a universal bus to be used to exchange messages between the applications. There are other solutions like Kafka, AWS SQS, Google Pubsub, etc. If y...
RabbitMQ is a universal bus to be used to exchange messages between the applications. There are other solutions like Kafka, AWS SQS, Google Pubsub, etc. If y...
Umask in Linux is a pattern of permissions for created files. Typically specified globally in /etc/profile or on a per-user basis in .bashrc files in the hom...
Suppose we needed to allow one user on the system to execute an application that requires sudo without entering a password. In order to do this you need to ...
Unison is one of the utilities that is used to replicate files between servers. A big advantage of Unison is its support for master-master replication.
OSSEC is an open source attack detection and prevention system. It can be configured to monitor not only events in log files but also changes to files and ru...
Malware Detect (LMD) is a utility that scans Linux systems for malicious files (malware). Distributed under the GNU GPLv2 license.
If you get the following message while trying to install any package with yum, it means you picked the wrong repo package during install:
Summer’s winding down and my hosting year with amazon is starting over. Decided to spin up a new server with everything on the latest versions.
Sometimes there’s plenty of free space on disk, but files stubbornly refuse to get created. In some cases you get an error saying the disk ran out of free sp...
Today, while doing initial setup on a Fedora 20 server, I got this error:
A cheat sheet for working with the Yum (Yellowdog Updater, Modified) package manager which is used in popular Linux distributions: RedHat, CentOS, Scientific...
This article covers setting up an sftp server and isolating users in their home directories (chroot) based on Linux Ubuntu 14.04.
The speedtest.net site is well known. It helps a lot to check your internet speed, but what about linux servers that don’t have a GUI, only a bash console.
The following command returns the list of processes using the most memory, in megabytes:
In CentOS7 you can no longer edit the usual iptables firewall rules the way you’re used to. iptables itself is still there, but it’s now wrapped in firewalld...
ClamAV is an open source antivirus that allows you to detect trojans, rootkits and other nasty things. Clamscan is a scanning module.
A rootkit is a hidden type of software. Usually it allows you to hide the existence of certain processes or programs from conventional detection methods or a...
Stuff happens in life, and root passwords get lost. So what do you do when you need into the system and the password is gone? The actual question: how do you...
If you’re reading this note, chances are you followed some random mysql-proxy install guide.
PECL is a repository of PHP extensions. It gives you access to a catalog of all known extensions, plus tools for downloading and installing PHP extensions.
A note on how to install PostgreSQL 9.4 on Centos 6.5.
The latest version of Python as of today is 3.4.2. To install the latest python version, first install the required packages:
While working with CentOS I had no issues to install Mysql-Proxy but with RedHad 6.4 this approach didn’t work. Here is why I made a second version on how to...
NAT — Network address translation — is a handy feature of any firewall, letting you translate the IP addresses of transit packets.
While working on a project for a client I needed to extend ffmpeg’s functionality and add a couple of features it doesn’t have out of the box. Needed to enab...
For replicating data between servers, NFS isn’t always the right tool. If you need the same content in two directories across several servers, lsync works we...
Solr doesn’t need tomcat to work. You can use its built-in functionality to run it on port 8983.
LVM - logical volume manager. It lets you combine several physical disks into one logical device and treat that as a single disk.
Balancing mysql queries matters if you’re running several mysql servers. If you’ve got master-slave replication set up, it makes sense to spread the load acr...
The other day I was wondering about the correct backup of several WordPress sites and then uploading them to some free storage. I would like it to be done wi...
To find out if your server is vulnerable to shellshock, run one of the following commands: curl https://shellshocker.net/shellshock_test.sh | bash
In this note I want to cover using heartbeat with two servers as an example. In this example I have two servers running mysql. Sites connect to ip address 19...
I needed to install the system on about two dozen computers. Ended up copying an already set-up system, for a few reasons: same system across all the comp...
Ran into this while doing some routine work: couldn’t add a custom service to startup. Figured I’d write a quick note about it.
By default yum remove only removes the package you specify. To also remove everything that got installed along with it, use the yum-plugin-remove-with-leaves...
In this note I want to cover how to copy/migrate a Parallels Virtuozzo container to KVM/VMware ESX/VirtualBox.
Virtuozzo and Bare Metal Server are two commercial virtualization products from Parallels. They use different approaches to storing VM data.
Sometimes you need to make a bootable flash drive from an OS distro image or something else.
To install php-mcrypt on CentOS Linux you need to enable a couple extra repos first:
Ruby 1.9 isn’t available through yum on Red Hat Enterprise Linux 6, per this page: https://access.redhat.com/site/solutions/131923
You can get the list of installed packages in Ubuntu Linux with this command:
Rsync is a handy tool for syncing data between servers.
NFS is quite handy when you have several servers and need shared access to the same storage from each of them. NFS lets you expose folders and files over the...
Fail2Ban is a software written in Python which is designed to prevent attacks on the server. It reads ssh, ftp, apache log files and blocks ip addresses by a...
SSH is a secure terminal server (secure shell) that provides remote access to the linux system. Why safe? Because all traffic between the client and the serv...
Everyone knows how conservative RedHat and CentOS are about updating packages. But new security holes keep turning up in old software versions, and that’s no...
I hit a problem with starting Squid on RedHat Linux v.6.4. Squid just did not start.
SELinux is a Linux kernel module that provides an additional mechanism to determine folder and file permissions. Sometimes it creates considerable problems w...
Description Mod_evasive, formerly known as mod_dosevasive, helps to safeguard your Apache web server against DoS, DDoS (Distributed Denial of Service), and b...
Recently, I came across an issue: phpMyAdmin was complaining about the absence of the mcrypt module in PHP. The strange thing was that when I ran php -m in t...
Vulnerabilities are occasionally found in the SSL protocol, which enables encrypted traffic exchange between a server and a client. These vulnerabilities pot...
ModSecurity is a kind of firewall for Apache, Nginx and IIS. This is a module that provides a set of rules for filtering traffic. This is a ‘must have’ modul...
In recent times, I’ve increasingly encountered the need to update OpenSSL to its latest version on servers. Unfortunately, so much relies on the OpenSSL libr...
The suexec mechanism allows you to execute CGI scripts on behalf of different system users. In this article, I’ll walk through an example of setting up suexe...
The essence mod_substitute is to replace the text in the body of the response from the web server. With it you can change for example links to one domain wit...
While working on a WHM server I ran into the following problem installing mod_geoip:
To install the latest version of Python 3.4 on CentOS 6.5, you can use the previous article.
AwStats is a log file parser written in perl, with which you can keep statistics of site visits based on information from log files. As a rule, awstats disp...
The following construction allows you to disable all http request methods in Apache, except for GET, POST and HEAD:
You can deny access to certain folders using the following construction. You can add it in the Apache virtual host settings, httpd.conf or create a separate ...
The following example contains the Apache2 server configuration file for the tech-notes.net site:
For various reasons you may want to display information from one server to another. I won’t go into the reasons.
A small note on how to install Apache passenger on CentOS to work with Ruby. I assume you have the following packages installed: ruby-mysql rubygems r...
In this article I want to touch on the topic of load balancing https connections.
Greetings dear reader. In this article I want to describe how to configure Apache to load balance multiple back-end servers. You’ll need the following two mo...
Today I encountered the problem of uploading files that clearly do not exceed the post_max_size and upload_max_filesize limits. The following error appears: ...
To create the most secure web server we need the following: Create a sandbox chroot with debootstrap sandbox apache2, php5, mysql install and configur...
A brief educational program about the directives that mod_rewrite provides
I’d like to present a set of interesting and not very features of .htaccess files and what can be done with them. Most of what is described here falls into t...
A note on how to remove the slash at the end of the URL without damaging the store.
OSSEC is an open source attack detection and prevention system. It can be configured to monitor not only events in log files but also changes to files and ru...
SELinux is a Linux kernel module that provides an additional mechanism to determine folder and file permissions. Sometimes it creates considerable problems w...
Malware Detect (LMD) is a utility that scans Linux systems for malicious files (malware). Distributed under the GNU GPLv2 license.
Lynis (formerly RkHunter) is a security auditing tool for Linux and BSD systems. It performs a detailed audit of many aspects of your system’s security and c...
ModSecurity is a kind of firewall for Apache, Nginx and IIS. This is a module that provides a set of rules for filtering traffic. This is a ‘must have’ modul...
If you are reading this article than your site has been hacked. You have seen that spam is being sent from your server and you can’t figure out what to do wi...
If you find that your postfix server keeps sending and you understand that you have been scammed. Pretty disgusting state of affairs.
ClamAV is an open source antivirus that allows you to detect trojans, rootkits and other nasty things. Clamscan is a scanning module.
A rootkit is a hidden type of software. Usually it allows you to hide the existence of certain processes or programs from conventional detection methods or a...
To find out if your server is vulnerable to shellshock, run one of the following commands: curl https://shellshocker.net/shellshock_test.sh | bash
I will consider an example of setting up basic authorization in Nginx for a WordPress site. I need the authorization window to pop up for the following pages...
In continuation of the series of articles about SSL I would like to describe the steps for the appearance of certificates. I will not repeat the terminology....
The following construction allows you to disable all http request methods in Apache, except for GET, POST and HEAD:
You can deny access to certain folders using the following construction. You can add it in the Apache virtual host settings, httpd.conf or create a separate ...
ModSecurity is a kind of firewall for Apache, Nginx and IIS. This is a module that provides a set of rules for filtering traffic. This is a must have module ...
In this note I want to tell you how to configure the ClamAV antivirus to scan files that are uploaded to the server via PureFTPD.
To create the most secure web server we need the following: Create a sandbox chroot with debootstrap sandbox apache2, php5, mysql install and configur...
I got the folllwoing message in Fedora Linux while running freshclam:
Introduction Configuring Postfix mail forwarding domains is a practical solution for situations where local mailboxes are not available, and the server is no...
Out of the box postfix is sending emails using the domain name that is returned by the following command in the linux shell: uname -n
I continue my series of articles about email services until the inspiration from the recently solved problems wears off.
Email spoofing is the creation of email messages with a forged sender address. There are many services that provide protection from spoofing.
Qmail is not the last word in mail delivery technology, but this smtp daemon is still very widespread. In particular many servers with the Plesk panel use ex...
This article is about how to configure your Linux server to send mail through the MailGun service.
An interesting task came up. I needed to make it so that even if the user has “delete messages from the server” set in the mail software - the messages still...
This article opens a series of articles about setting up a mail server. The whole story starts with the configuration of the so called mail transfer agent (M...
This is the second article of the series about a mail server based on CentOS Linux. It is about how to give people access to their incoming mail over imap/po...
This note tells how to install the mailbox management tool - PostfixAdmin, and a convenient interface for reading mail - RoundCube, on a server running CentO...
This note tells how to use Postfix to organize parallel delivery of mail to several mail servers within one domain name, without the well known forwarding or...
Larch is a utility written in ruby that can be very useful when moving mail from one mail service to another.
If your server sends out mail and you don’t want the messages to be delivered from [email protected], then you can change the sender address.
Telnet is a nice utility that lets you open a network connection to any service by specifying the port to connect to. Telnet is part of the standard set of u...
SmarterStats is moved in 5 steps.
Found the following error in the logs and decided to write a note about it:
At any moment, for one reason or another, the question of moving SmarterMail to a new server can come up. The reasons can be different and I am not going to ...
While working on a new site, we decided to use a single template for publishing posts of a certain type.
There are plenty of articles online describing how to move a blog out of multisite into a standalone WordPress.
Today I ran into a problem on one of the sites I work on.
Riding the wave of the previous post, I decided to play around with Yii and try porting this site, posts and pages included, over to Yii.
Inspired by an article on Habr, I decided to write my own take on creating a child theme in WordPress, since the Habr one has way too much text and explanati...
I’ve had an AdSense block sitting in my sidebar for a while now. It only recently occurred to me that the sidebar has a dynamic size (22% of the page body), ...
Following up on the first post, here’s an alternative way to add AdSense to WordPress without plugins.
Adsense is probably the most common contextual ad service out there. For WordPress there’s a whole bunch of plugins for installing the ad code.
By default WordPress doesn’t output the tags you set on a post anywhere in the page source. According to this article meta tag support was removed from WordP...
WordPress is a solid platform, offering reliable development and endless customization. Working with this CMS I picked up a few useful tricks I want to share:
Whether a site needs user registration is a question that sparks a lot of debate.
If you’ve run into the same problem I did, welcome. Someone reached out saying everything's gone. No server access, logins and passwords all changed. Need to...
There are different plugins that enable contact form for WordPress websites. For some reason none of them worked correctly on my blog. Knowing some basic Wor...
You can find the installed WordPress version on the admin dashboard’s front page, but you might not have admin access. In that case run this command: grep wp...
Yesterday I added spoiler support to the blog, using this article
If you’re seeing this error on your WordPress blog:
Today, logging into the blog admin, I got this error:
Personally I consider hosting open-source projects on Windows Server a sacrilege, a stupidity and a moral defect. But sometimes there is a project where the ...
There are many casess when we need to compile the the sofware from the source code. Nginx is a briliant case when the can’t enable geoip module or mod_securi...
Everyone praises Nginx for its performance. But nobody accounts for the fact that it’s so fast because it’s missing all those modules that extend Apache’s fu...
Installing any software by compiling the package from source is the best way to get the latest versions.
A quick note about https traffic behind crooked load balancers. We have Setting up Nginx + php-fcgi behind a load balancer. A load balancer is like a woman -...
When using NginX as a load balancer, the question comes up of how to properly track traffic delivery stats for the servers in the Upstream section.
If you have Varnish + NginX on the server, every visitor in the NginX logs will show up with the same ip address - 127.0.0.1. There are two options:
To enable the NginX stats page, add these lines to the nginx.conf config file, or the file where your sites are described. Add them inside the server { ... }...
Many know logformat from Apache server config. The same thing exists for Nginx.
In this article I’ll show how to set up a simple nginx + Asp.Net combo. By simple I mean that project-specific quirks, user permission separation, high load ...
Search engine friendly (SEF) URLs are the links to the articles of your site in a form that is easy on the eye. They at least partially show what the post on...
Hello, dear reader. In this article I want to describe how to set up NginX for load balancing across several back-end servers, say Apache.
The GeoIP module lets you determine a client’s location based on their IP address. It resolves city, region, country, longitude, latitude, and other info. Ve...
I assume nginx is already installed. What’s left is to set up php handling. Everything below was done on CentOS Linux. You can repeat the same steps on Linux...
The following can be used to fetch the unique records from apache access.log. This example covers IP addresses of the clients but this example can be used to...
The simple life of simple websites on an Apache server.
The simple life of simple websites on an NginX server.
Expect is a wrapper that provides the ability to program the input for interactive programs. Interactive programs are applications that require the input of ...
To count the number of occurrences of a character (letter, digit, symbol) in a string in a bash script, you can use grep and wc:
bc is a tool that allows to do inline calculations in bash cli. Eventually bc can’t be used for complicated calculations.
Sed is a stream editor on UNIX-like operating systems that is used to filter and transform text.
Many of us have run into page speed testers complaining about unoptimized images more than once. Many of us have also ignored those warnings and settled for ...
These tricks were described in Google’s internal project “Testing on the Toilet” (handing out flyers in restrooms to remind developers about testing). This p...
The other day, Habr user simpleadmin posted a pretty useful note about grep. From here on, it’s the author’s words:
This note is about how to quickly dump all MySQL databases into separate files from bash: Backup:
Starting a series of posts with interesting Bash puzzles.
In this note I want to look at ways to output lists in bash while capitalizing the first letter/character.
To send a running process to the background, you first need to pause it:
While restoring a mysql database dump, this error pops up:
MySQL 5 introduced some interesting new features, like stored procedures and triggers. In this short note I’ll show how to back up and restore these using my...
Today I ran into this error calling the mysql client:
If you’re reading this note, you’ve run into the following error while restoring a MySQL database:
I’ve run into this more than once: you need to pull a dump of a large database from hosting, but there’s no remote access to the mysql engine. PhpMyAdmin mig...
To create a unique index for a MySQL table, run this command:
To find out the size of your databases, use this query:
Changing the engine for MySQL tables from MyIsam to InnoDB happens in two steps: Build a query based on the existing data Run the new query.
OK. This isn’t an original article. There’s plenty like it on the internet already. I need it so I don’t have to google it every time I need a cheat sheet.
Anyone who’s worked with MySQL databases in their code has run into the INSERT statement. Turns out not everyone, even experienced developers, knows how to u...
"SHOW STATUS;" in MySQL returns a large amount of technical data you can use to figure out memory usage, cache performance and resource distribution. Here’s ...
Most people know newrelic.com - a service for tracking application state and performance. This service is developing pretty fast and the developers keep expa...
Monit — a program for checking the state of services and keeping them running, which can send notifications when something goes wrong. It runs on linux, bsd ...
This isn’t an article, just a note for the blog of an ordinary tech guy.
Munin is a tool for monitoring network devices with the ability to keep a history of their performance. You can view the performance graphs in a browser.
Cacti does get SNMP-Uptime from devices, but it only shows it on the device’s own page, and once you have more than 100 such devices, opening each page becom...
Nagios is an open-source client-server platform for monitoring computer systems and networks. It’s built for observing and tracking the state of compute node...
I’m sure every sysadmin has had to answer the why is the internet slow question from users, with something like someone hogging the bandwidth downloading end...
In this post I want to go over an example of how to get Awstats working correctly with Nginx server log files.
Awstats is a free log analyzer written in Perl. It lets you build nice visit report graphs for your site based on info from log files.
Because of the nature of my work I deal with a lot of websites. Given the specifics of these projects, I sometimes need to keep an eye on web resource availa...
While working on a WHM server I ran into the following problem installing mod_geoip:
To enable mcrypt support in WHM you need to use the EasyApache module.
Had to move accounts between servers today. Naturally used the WHM Transfer tool. One of the batches got stuck mid-process. Unfortunately the developers didn...
If while using the WHM(cPanel) Transfer tool you get the following error message:
WHM is a decent server management tool. It’s paid, but the developers did a solid job. It’s fairly common to install WHM/cPanel on a single server that holds...
First off, a caveat: for installing any control panel it’s recommended to use a clean server. Otherwise the server may break after the panel is installed.
Got a task: install WHM/cPanel on a server. Sounds simple enough, except there are two servers involved: 1 - web server. 2 - MySQL database server.
List php modes form command line:
By default, when you create an account in Plesk, local mail delivery gets enabled for it. No matter how many times you tell it to route mail according to the...
Plesk allows to tune configuration of almost everything. fail2ban configuration is locates on the page Tools & Settings. Locate the section of IP Address...
When you’re using the Plesk panel, admin and root are different users, and their passwords can differ. So you might have ssh access to the server as root and...
Sometimes when working with Plesk version 10 you get an ip address pool error:
First log into Plesk. Go to the subscriptions page and pick the site you need. Then on the Websites&Domains tab expand Advanced Operations and pick Websi...
First connect to mysql: mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa
To install additional Plesk components you can use this utility: /usr/local/psa/admin/bin/autoinstaller
It happens that the Plesk WebUI becomes unavailable for any reason. Or we have a set of files from the old server and we need to restore all ftp users on the...
Recently, I came across an issue: phpMyAdmin was complaining about the absence of the mcrypt module in PHP. The strange thing was that when I ran php -m in t...
Today habrahabr user ‘lord Brabazon Vere-de-Vere’ shared his method for migrating a site off GoogleSites onto separate hosting.
For this not-so-easy job we’ll use PHP Simple HTML DOM Parser.
I’ve run into this more than once: you need to pull a dump of a large database from hosting, but there’s no remote access to the mysql engine. PhpMyAdmin mig...
To fire off a bash command from php code and output the results, you can use shell_exec(), but what if you need to see the whole output in real time as the s...
A small note on how to connect to a remote server from php, run a command and display the results on screen.
ionCube Loader is needed to run paid components on your server that the site relies on. Such components usually have obfuscated code, which makes them unread...
This note covers how to install the latest version of PHP on your server from source, using PHP 5.5.10 + CentOS 6.5 as an example.
Refresh Jenkins job properties
Cheatsheet for Groovy to be used in Jenkins pipelines
Parrallel stages in Jenkins Groovy pipeline
Jenkins auth over AWS Cognito
Copy the Jenkins job
Today I ran into a problem with re-login in Jenkins. After the session was broken as a result of restarting the Tomcat daemon, I was asked to log in with a n...
While connecting a git repository to Jenkins I got the following error:
A quick note on how to make Jenkins run on a CentOS server and show its web face in Tomcat6.
This is about how to install the latest version of Java JRE on Linux Ubuntu.
If you decided to move from Windows to Linux and ran into the problem of importing mail from Outlook into Thunderbird, keep reading. The following script he...
Even though Ubuntu 12.04 shipped with the LTS (long term support) label, looks like that long term is over. A lot of people have already run into problems in...
In this article I’ll show how to set up a simple nginx + Asp.Net combo. By simple I mean that project-specific quirks, user permission separation, high load ...
In this note I want to show how you can run several Skype processes in Linux Ubuntu. I have 2 running - work and personal.
On some laptops, after installing Linux Ubuntu (12.04 LTS in my case), hibernate is disabled. Looks like it’s because such devices aren’t officially supporte...
A short note on how to launch a terminal with multiple tabs in Linux Ubuntu:
A quick note on how to create a site in IIS7 from the command line (cmd.exe). It is very handy if you need to create 100+ sites.
Using WebDeploy makes the task of moving the configs and the content of the sites between Windows servers much easier. WebDeploy is irreplaceable when you wo...
A lot of admins use the phpinfo function to debug the headers the server gets when the site is requested.
Entity tags (ETags) are the mechanism web servers and browsers use to determine whether an element in the browser cache matches the object on the server.
To get the list of sites in IIS6 you need
After the move from an IIS6+ColdFusion8 server to a server with IIS7+Coldfusion10 I did not enjoy the fact that all the start pages of the sites open for ver...
Personally I consider hosting open-source projects on Windows Server a sacrilege, a stupidity and a moral defect. But sometimes there is a project where the ...
Creating an admin from the admin panel isn’t a hard task. But what do you do if you don’t have access to the admin panel, but you do have access to the mysql...
While deploying MODX Revolution on a server with php v.5.4.13 I ran into a broken admin panel and search.
Django is a web framework written in Python, that provides a basic set of components for building a site. This article is about exactly that. I’ll cover sett...
Someone reached out to me asking to check what’s wrong with their site. Said it wasn’t working.
I got a task: check how many concurrent users a moodle-based site can handle.
Drush is a cli for Drupal. In this article I’ll cover how to install it without pear. I won’t go into details on that.
Working with an osCommerce shop, I periodically hit a ‘503 Server Error’.
After a long quiet spell I decided to continue the story about branching out the server lineup. That phrase came out vague. It’ll make sense as we go.
HaProxy is a wonderful and very flexible tool for balancing traffic. It has a whole pile of options and configuration variants, and it has its own quirks. It...
In this note I want to cover using heartbeat with two servers as an example. In this example I have two servers running mysql. Sites connect to ip address 19...
Finally got my thoughts together to continue rambling about how to make life harder for yourself while cutting server load.
I spent a while thinking about how to continue the series on clusters. In the previous article <a href="http://www.tech-notes.net/notes-about-clusters/" t...
Cluster
A cluster means using several servers to run a single, integrated application. Each server in this setup plays its own assigned role. This article starts a s...
Usually people use robocopy to synchronize files between Windows servers. In principle robocopy handles this task just fine, but only as long as your servers...
Today I ran into the need to change some text in a hundred files on a server running Windows. In linux these tasks are easily solved with sed and the ‘-i’ fl...
Once I had to automate the process of getting info about the DNS zones sitting on some abstract Windows server. Again it cuts at my brain that I’m writing a ...
The Windows component store (C:\Windows\winsxs) is used during so-called servicing operations when installing software. These operations include Windows upda...
Personally I consider hosting open-source projects on Windows Server a sacrilege, a stupidity and a moral defect. But sometimes there is a project where the ...
Today I encountered the following message while working normally with lftp: ls: Fatal error: Certificate verification: Not trusted
I would like to describe the way how to use virtual users in pure-ftpd.
This post will show you how to create virtual users in vsftpd.
lftp is a command line utility that allows you to exchange data with ftp and http servers. lftp has mirroring functionality that allows you to load or recurs...
In this note I want to tell you how to configure the ClamAV antivirus to scan files that are uploaded to the server via PureFTPD.
Spitting on Windows server projects again. The other day I ran into a task - needed to move a few hundred databases from one server to another.
Sometimes you need to make a one-off backup of all databases (all databases) so you can move them somewhere or gather them in a separate storage location.
MS Jscript has a ton of functions and methods borrowed from VisualBasic and Microsoft C/C++. Among them is the trim function, which lets you strip extra spac...
In ColdFusion settings, database connections can be configured in the admin panel under the DataSources section. But what do you do if the passwords for seve...
Ran into another one: I need to get a set of data about the server using Microsoft Jscript. Tripping over Windows 2008 Server quirks again. It’s just really ...
Moving databases between servers means creating a backup copy on the old server and deploying that backup on the new server. With one or two databases there ...
To make backup copies of all the databases on your MSSQL 2008/2012 server you can use the following SQL query:
A continuation of the first part:
The server principal already exists message
While moving MSSQL users I got this message:
I was setting up a second MSSQL server for a client and hit a problem with configuring Linked Servers on it. The first server had two linked MSSQL instances....
You can get the version of the Joomla CMS from the command line if you have no access to the admin panel. Run the following command from the site folder:
After a failed update of a plugin, or any other Joomla! component, an unpleasant situation happens - the icon disappears from the menu. You can easily bring ...
Search engine friendly (SEF) URLs are the links to the articles of your site in a form that is easy on the eye. They at least partially show what the post on...
Sometimes you badly need to get into the admin panel of the Joomla CMS, but there is no information about the users that were already created. At the same ti...
It’s no secret that CentOS and other RedHat-like systems come with a standard set of repositories. Unfortunately, many required packages are missing.
Solr doesn’t need tomcat to work. You can use its built-in functionality to run it on port 8983.
In this note I want to cover using heartbeat with two servers as an example. In this example I have two servers running mysql. Sites connect to ip address 19...
To make yum work again in CentOS after this error:
HaProxy provides a convenient tool for showing statistics in real time.
To enable HaProxy logging edit /etc/sysconfig/rsyslog - bring the only line there to the following form:
Following up on the first article, in this one I want to look at a few examples of configuring HaProxy for balancing traffic.
Same story as the GCP version of this note, different cloud: startup closes Series A, and the AWS side is still one root user, one account, prod and the sand...
This note can be usefull for those of you who needs to hav EC2 instance running during the certain period of time during the day and awoid spending money whe...
Jenkins auth over AWS Cognito
The other day we deployed a Magento shop in the Amazon cloud. Everything would be fine, but the browser console keeps showing the following error:
This is a note about the following error that is produced by tflint Warning: List items should be accessed using square brackets (terraform_deprecated_index)...
This is a short note about the way to configure your GitlabCI to store the Terraform state file. Terraform backend configuration remains pretty simple: terra...
Loops in terraform is not something new. There is a bunch of articles with examples in the internet. However I had a number of cases when I could not find th...
I was for a multiple times when I had to extract some data with bash script and next re-use the result in terraform resource provisioning. I’d like to share ...
I couldn’t find how to disable Diffie-Hellman encryption in vsFTPD TLS.
In continuation of the series of articles about SSL I would like to describe the steps for the appearance of certificates. I will not repeat the terminology....
Finally got my thoughts together to continue rambling about how to make life harder for yourself while cutting server load.
There are plenty of articles about how to configure Varnish. Let me say right away that there’s no single correct approach to configuration. The more options...
In this note I want to show how to purge the Varnish cache in an elegant way. The article describes how to delete pages=objects from the cache using their UR...
Today I got the following error while trying to install the Apache2::Reload Perl module through cpan:
The cpan utility will help you install any Perl module. The thing is that cpan downloads the source archives, compiles them and installs them. The problem sh...
Most of the people writing Perl have heard about the Perl Dancer micro-framework. But did they use it for anything beyond generating a project, writing a ‘He...
The other day we deployed a Magento shop in the Amazon cloud. Everything would be fine, but the browser console keeps showing the following error:
To upload files into the CloudFiles storage you can use the SDK for PHP. Other programming languages are supported too. The full installation description is ...
RackSpace is an American hosting provider with several data centers, offering a big number of hosting solutions. One of the products is cloud hosting with it...
Lynis (formerly RkHunter) is a security auditing tool for Linux and BSD systems. It performs a detailed audit of many aspects of your system’s security and c...
To build an RPM package from an application’s source code you need Checkinstall.
If you are reading this article than your site has been hacked. You have seen that spam is being sent from your server and you can’t figure out what to do wi...
I force myself to learn something but before learning something new I need to memorize what I knew before. So I take python labs at exercism.org.
A short note on how to make Bash scripts send messages to Skype.
In this article I’ll show how to set up a simple nginx + Asp.Net combo. By simple I mean that project-specific quirks, user permission separation, high load ...
A note on how to remove the slash at the end of the URL without damaging the store.
I will consider an example of setting up basic authorization in Nginx for a WordPress site. I need the authorization window to pop up for the following pages...
ModSecurity is a kind of firewall for Apache, Nginx and IIS. This is a module that provides a set of rules for filtering traffic. This is a must have module ...
Let’s say you have the following table on the page and you need to sort it alphabetically:
A Habr user called Lzhedmitriy was not happy with the horizontal text tabs he found on the internet. As a result a simple jQuery plugin that does what he nee...
not a TTY on docker exec in ansible
One of the ansible playbooks that I was refactoring recently had a multiple shell steps with docker exec in them. After updating to the latest docker the pla...
In this article I want to tell you what I did to automatically deploy NginX, php-fcgi and install Yii using docker. It can be usefull for local development. ...
To upload files into the CloudFiles storage you can use the SDK for PHP. Other programming languages are supported too. The full installation description is ...
RackSpace is an American hosting provider with several data centers, offering a big number of hosting solutions. One of the products is cloud hosting with it...
This is another note of the kind: “I don’t want to google for it next time I need it in few years”
This is one of the cheetsheets I have at this website. The primary purpose of this one is to collect all usefull commands you might need in your daily work. ...
I already have a note on checking database size in MySQL, here is the same for psql.
I switch between MySQL and PostgreSQL often enough that the psql meta-commands never stick in my head. Every time it’s the same five minutes of googling \d v...
What is an MX record and what does it stand for?
A note on how to remove the slash at the end of the URL without damaging the store.
In this article, I want to describe the process of migrating an ActiveDirectory domain controller from Windows 2003 to Windows Server 2008.
Some tasks get solved through the browser console (F12), with a pretty good return on effort. Still, whenever I do this, I can’t shake the feeling that I’m j...
Solr doesn’t need tomcat to work. You can use its built-in functionality to run it on port 8983.
HaProxy is a wonderful and very flexible tool for balancing traffic. It has a whole pile of options and configuration variants, and it has its own quirks. It...
In this post I put together a basic set of t-sql scripts that give you metadata about MSSQL. If you’ve ever tried getting some of this info through the GUI, ...
This is a practical guide to setting up a server for maximum performance running one of the blog-oriented CMS platforms: WordPress, Drupal, or Joomla.
If you find that your postfix server keeps sending and you understand that you have been scammed. Pretty disgusting state of affairs.
Puppet is a set of utilities written in Ruby that let you manage a large number of servers from one place. It lets you describe the desired state for every s...
After years working in the linux console, it’s really hard to do tasks on windows servers.
WHM provides a very friendly interface for managing sites, users and databases on the server. Sometimes you have to create several hundreds of accounts for d...
WHM provides a very friendly interface for managing sites, users and databases on the server. Sometimes you have to create several hundreds of accounts for d...
Chef can fail with the following error running kitchen create command if you have Vagrant 1.8.5:
DevOps Center of Exelence (CoE) is a new trend in team work when DevOps team is no longer concentrated on the single project. It is more a service team insid...
Today I woke up and suddenly realised that most of the articles in this blog were written in russian language and the major visitors come from russian-speeki...
Recently I had a case where a startup closed their Series A and was still running everything out of one GCP project tied to the founder’s personal Google acc...