Wednesday, November 11, 2009

How To Add An IP Address from SSH

cd /etc/sysconfig/network-scripts

In this directory, you will find some files that begin with “ifcfg-”. There will be one file for each of your physical network adapters and one file for each of your virtual adapters. In my case, the existing script files are:

  • ifcfg-lo => this is the loopback interface
  • ifcfg-venet0 => this is my one and only physical adapter
  • ifcfg-venet0:0 => virtual adapter #1
  • ifcfg-venet0:1 => virtual adapter #2
  • ifcfg-venet0:2 => virtual adapter #3
  • ifcfg-venet0:3 => virtual adapter #4

So now what you need to do is to either copy an existing configuration file (if you have one of course) or create a new one. The new configuration file name must include the number of the virtual adapter. So supposing you want to add a fifth IP address from an existing script, you would issue:

# cp ifcfg-venet0:3 ifcfg-venet0:4

Next you will need to edit this file so that it contains your new IP address. You can use “vi” to do so.

DEVICE=venet0:4
ONBOOT=yes
IPADDR=192.168.0.4


Now you’ve got a new IP address and cPanel is running fine but there’s one more step to go.

Although you’ve added a new IP address at the operating system level, you now have to make it available for cPanel. Log in WHM as root (http://www.yourserver.com:2086) and click on Add a new IP address from the IP Functions menu.

Now simply enter the new IP address with the subnet mask 255.255.255.255 and hit the “Submit” button.

So that’s it! You’ve now got an additionnal IP address available for your web server.



NETMASK=255.255.255.255

Of course you’ll have to change 192.168.0.4 for your new IP. Save the file when you’re done.

To activate the new virtual adapter, issue this command:

# /etc/init.d/network restart

To make sure your new virtual adapter has been activated, use the “ifconfig” command. You should see the new adapter configuration details at the end.

At this point, the new IP address should be working but now cPanel will be deactivated. To re-activate it, simply issue this command:

/usr/local/cpanel/cpkeyclt

Saturday, November 7, 2009

ip_conntrack table full, dropping packet error

If you are getting error
kernel: ip_conntrack: CT 87726*: table full, dropping packet.

Generally, the ip_conntrack_max is set to the total MB of RAM installed multiplied by 16.

You need to increase
ip_conntrack


# echo 37072 > /proc/sys/net/ipv4/ip_conntrack_max
This will increase ip_conntrack number to 37072

Command to check the current count
# cat /proc/sys/net/ipv4/ip_conntrack_max

To make this persistent you have to add a line like
‘net.ipv4.ip_conntrack_max=37072′ to /etc/sysctl.conf


Thanks
Ninad

Thursday, November 5, 2009

How to increase quotaugidlimit in a vps from NODE

# vzctl set 100 --save --quotaugidlimit 1000

101 will be your VPS ID

To apply changes it is required to restart VE:
# vzctl restart 100




Thanks
Ninad

Tuesday, November 3, 2009

Install YUM from VZ Node

Run this command from node
#vzpkg install VEID -p yum

VEID will be your VPS ID.



Thanks
Ninad

Monday, November 2, 2009

Features of Apache 2.2

Please check
http://httpd.apache.org/docs/2.2/new_features_2_2.html

Install mod_xsendfile

mod_xsendfile is a small Apache2 module that processes X-SENDFILE headers registered by the original output handler.

If it encounters the presence of such header it will discard all output and send the file specified by that header instead using Apache internals including all optimizations like caching-headers and sendfile or mmap if configured.

It is useful for processing script-output of e.g. php, perl or any cgi.


Download from source

wget http://tn123.ath.cx/mod_xsendfile/mod_xsendfile-0.9.tar.gz

Compile and install

apxs -cia mod_xsendfile.c


Restart apache


Works in apache2.2


Thanks

Ninad

Sunday, November 1, 2009

SSHD Failed

If you are getting error while starting ssh

sshd dead but subsys locked

Do the following

remove /dev/null
and then: "mknod /dev/null c 1 3"

this will create the /dev/null and sshd should start as normal.


Thanks
Ninad

GeoIP installation for Linux

Download the current GeoLite Country, GeoLite City and Organization (AS Numbers) databases


wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
wget http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz

Create GeoIP data directory if it doesn't already exist

if [ ! -d /usr/local/share/GeoIP ] ; then
mkdir /usr/local/share/GeoIP
fi

Move data files to directory and unzip.

mv GeoIP.dat.gz /usr/local/share/GeoIP/
gunzip /usr/local/share/GeoIP/GeoIP.dat.gz

mv GeoLiteCity.dat.gz /usr/local/share/GeoIP/
gunzip /usr/local/share/GeoIP/GeoLiteCity.dat.gz

mv GeoIPASNum.dat.gz /usr/local/share/GeoIP/


Install the GeoIP program.


There are two options:

  1. Install a C program and a Perl program
  2. Install just a Perl program.

Option a) will provide the fastest performance.

The instructions for a) are known to work using Fedora Core 6 - FC6.

  1. Install GeoIP C API http://www.maxmind.com/app/c

Download the GeoIP-*.tar.gz file, uncompress it and compile.


wget http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.5.tar.gz
tar -xvzf GeoIP-1.4.5.tar.gz
cd GeoIP-1.4.5

./configure
make
make check

2007-10-10: Thanks to James Rice who notified us of version 1.4.3. 2007-02-21: Thanks to Daniel Wallace who notified us of version 1.4.2. 2007-01-13: Thanks to Daniel Wallace who notified us of version 1.4.1. 2006-09-25: Thanks to Oleg Nerus who notified us of version 1.4.0. 2006-05-21: Thanks to Florian Burka who notified us of the availability of version 1.3.17.

With a text editor, add the directory libGeoIP.so was installed in, i.e. /usr/local/lib, to /etc/ld.so.conf, and execute ldconfig

  1. Install Geo::IP Perl Module

Download the Geo-IP-*.tar.gz file, uncompress it and compile.


wget http://geolite.maxmind.com/download/geoip/api/perl/Geo-IP-1.35.tar.gz

tar -xvzf Geo-IP-1.35.tar.gz
cd Geo-IP-1.35

perl Makefile.PL LIBS='-L/usr/local/lib'
make
make test

Option b) (in lieu of option a!)

PurePerl Module (is slower, but does not require C library). Download latest Geo-IP-PurePerl-*.tar.gz file, uncompress and compile. Replace the version below with the current version.

wget http://www.maxmind.com/download/geoip/api/pureperl/Geo-IP-PurePerl-1.17.tar.gz tar -xvzf Geo-IP-PurePerl-1.17.tar.gz -C /usr/local/src/ cd /usr/local/src/Geo-IP-PurePerl-1.17 perl Makefile.PL make make test make install

Update your awstats.mysite.conf configuration file

Look for the following geoip LoadPlugin options in your AWStats configuration file. Update them with the full path to each of the two database files.

LoadPlugin="geoip GEOIP_STANDARD /usr/local/share/GeoIP/GeoIP.dat"
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /usr/local/share/GeoIP/GeoLiteCity.dat"


LoadPlugin="geoip_org_maxmind GEOIP_STANDARD /usr/local/share/GeoIP/GeoIPASNum.dat"



sudo make install

sudo make install



gunzip /usr/local/share/GeoIP/GeoIPASNum.dat.gz


Source : Antezeta


Friday, October 30, 2009

How to take backup of your mysql database

To backup your database.

# mysqldump database_name > backup.sql

For example ninad_ninad is the database name
command will be

#mysqldump ninad_ninad > ninad_ninad_old.sql

backup created in ninad_ninad_old.sql

Now restore it

first create an emtpy database
#mkdir ninad_ninad

Correct ownership
#chown mysql.mysql ninad_ninad

#mysql databasename < backup.sql
it will be
#mysql ninad_ninad < ninad_ninad_old.sql


Thanks
Ninad

Thursday, October 29, 2009

How to check suPHP version

To check suPHP version

Run the command

find / -name suphp

Once you have found the binary, run the following:

/path/to/suphp

It should produce a result along the lines of:

suPHP version 0.6.3


Thanks
Ninad

suPHP on Plesk

**Make sure yum is installed on the server as it will help to install the dependencies.

1) To get the latest version of mod_suphp RPM enable the Atomic Repository for Yum. This can be done using Following command

# wget -q -O - Path to RPM
Note : Path may get changed.
Better to get from http://rpm.pbone.net/index.php3/stat/4/idpl/1027655/com/apache2-mod_php-2.0.48_4.3.4-3sls.i586.rpm.html

2) After this mod_suPHP can be installed using command “yum install mod_php”

Configuration:

Once mod_suphp is installed, you will have to configure it with Apache.

1) First you will have to create a suphp.conf file in /etc/httpd/conf.d/ Directory and Paste the following code

LoadModule suphp_module modules/mod_suphp.so

php_admin_value engine off
suPHP_Engine On
AddHandler x-httpd-php .php .php3 .php4 .php5
suPHP_AddHandler x-httpd-php

2) Restart Apache Service using command “service httpd restart”

3) Now you will have to creae suphp configuration file. So, create a new file in /etc directory named “suphp.conf” (rename the existing file and create a new one) and add following lines in it:

[global]
logfile=/var/log/suphp.log
loglevel=info
webserver_user=apache
docroot=/var/www/vhosts
allow_file_group_writeable=false
allow_file_others_writeable=false
allow_directory_group_writeable=false
allow_directory_others_writeable=false
check_vhost_docroot=false
errors_to_browser=false
env_path=/bin:/usr/bin
umask=0022
min_uid=30
min_gid=30

[handlers]
x-httpd-php=php:/usr/bin/php-cgi
x-suphp-cgi=execute:!self

4) Restart Apache once more i.e. “service httpd restart”


Thanks

Ninad


Wednesday, October 28, 2009

Fantastico Error

If fantastico is not listed in your cpanel even after enabling ioncube in WHM.

Run the script
/scripts/makecpphp



Thanks
Ninad

Command to find CPU usage of process

ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10

This will show the process which are consuming max CPU

Install NTP

# yum install ntp

# chkconfig ntpd on

# ntpdate pool.ntp.org

and start the NTP

# /etc/init.d/ntpd start


Note :: Do not forget to open port 123 in firewall.


Thanks
Ninad

Command to check SYN attack

netstat -nap | grep SYN | wc -l

Syslogd failed

Check whether syslogd is missing or not:

rpm -q sysklogd
If nothing shows up, do the following to install it:

yum install sysklogd
Restart syslogd service:
/scripts/restartsrv_syslogd


Thanks
Ninad

YUM Error

If you are getting this error on cpanel server

root@ninad~]# yum check-update Loading “installonlyn” plugin Setting up repositories Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=5&arch=i386& repo=extras error was [Errno 4] IOError: Error: Cannot find a valid baseurl for repo: extras

Solution

yum clean metadata
yum clean dbcache
yum makecache

Thanks
Ninad


View My Stats