Plesk PHP upgrade
We are often asked to upgrade PHP on Plesk based systems. When working with Plesk based control panel systems, PHP is typically maintained by the operating system. This means RedHat 5 and CentOS 5 based servers will be running PHP version 5.1.6. Many applications have a requirement of PHP 5.2 or greater.
A few options are available, we will discuss two solutions below..
Read more
Building an Empty RPM
When searching for information on creating an empty, or null rpm file, I was unable to locate the spec file details needed. In another post, I will describe my need for this empty rpm, but for now here is the minimal spec file needed to build an empty rpm:
Place the following in a file called, php.spec
Summary: Empty PHP
Name: php
Version: 0
Release: 0
License: Public
Group: Applications/System
%description
Empty PHP RPM
%files
Now, build your new php rpm using the following command:
# rpmbuild -bb php.spec
Processing files: php-0-0
Checking for unpackaged file(s): /usr/lib/rpm/check-files %{buildroot}
Wrote: /usr/src/redhat/RPMS/i386/php-0-0.i386.rpm
And that’s it, you now have an empty rpm!
Server Management Best Practices – Firewall
Every week at MNX solutions we handle issues from server security and patch management to system recovery and performance tuning. In this blog series, we will review a number of firewall best practices that you can implement today on your server infrastructure.
First things first, do you utilize a firewall on your server? If your answer is “no” or you are not sure, this should be one of your top priorities. Read more
bash_history date
Bash_history date
Ever try to determine what caused the latest outage by trying to determined when a command was last executed?
Look in your .bash_history (if you are running a bash shell), and you will see your recently executed commands. However, it is generally impossible to tell when the command was executed.
yum python logger error bad marshal data
Interesting bug encountered today after a fresh install of RHEL5 from 5.3 media.
When attempting to run the command, ‘yum’. The following error was presented:
# yum
Traceback (most recent call last):
File "/usr/bin/yum", line 4, in ?
import yum
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 30, in ?
import logging
ValueError: bad marshal data
CentOS5 and PHP52 upgrade rpms
We encounter many scenarios where using the latest version of PHP is required. No great way, aside from downloading the PHP5 source and compiling, is available. That is, until you discover then IUS Community Project.
Upgrade Urchin5 from RHEL3 to RHEL5
Just a quick note about upgrading the operating system, or migrating your Urchin 5 installation from RedHat 3 -> RedHat 5 (or CentOS5).
You think you’ve done everything properly, and you probably did. But you are getting some DNS resolution error messages like:
Installing IonCube in cPanel
To install IonCube loading in cPanel, run the following as root:
# /scripts/phpext
You can then check if ionCube was installed by running:
# php -v Read more
Great security and auditing resource for your network
The Center for Internet Security has a great list of security configuration and audit guidelines.
A great resource comprised of 40+ consensus Security Configuration Benchmarks for Operating Systems, Middleware, Software Applications and Network Devices.
The Benchmarks are:
- Recommended technical control rules/values for hardening operating systems, middleware and software applications, and network devices;
- Unique, because the recommendations are defined via consensus among hundreds of security professionals worldwide;
- Downloaded approximately 1 million times per year;
- Distributed freely by CIS in .PDF format (some are available to CIS Members only in XML format via the CIS Members web site);
- Used by thousands of enterprises as the basis for security configuration policies and the de facto standard against which to compare them.
Visit the benchmark/tools page to download your copy.
Python password generator
Here is a simple few liner password generator written in compact python.
import string as s; from random import choice as c
x=10; print ''.join()
# python pw.py
Bz7DKuzqCL
