<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1269048452379394533</id><updated>2011-04-21T11:45:51.267-07:00</updated><category term='mod_rewrite'/><category term='features'/><category term='proc management'/><category term='network'/><category term='modules'/><category term='Apache'/><category term='installation'/><category term='Apache History'/><category term='apache latest version'/><category term='memory management'/><category term='configuration'/><category term='unix'/><title type='text'>WEB SOFTWARES REVIEW</title><subtitle type='html'>WebSoftware Review concentrates on making check on the softwares widely used in webhosting industry and reviewing the details based on the environment and situational studies.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>23</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-8804140164027844923</id><published>2008-03-11T13:47:00.000-07:00</published><updated>2008-03-11T13:52:07.629-07:00</updated><title type='text'>Apache Self Linking error</title><content type='html'>===========&lt;br /&gt;[11/Mar/2008:16:05:45 -0400] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.9.8b mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 (internal dummy connection)"&lt;br /&gt;=========&lt;br /&gt;&lt;br /&gt;Fix : Update MaxSpareServers and MinSpareServers&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-8804140164027844923?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/8804140164027844923/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=8804140164027844923' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8804140164027844923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8804140164027844923'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2008/03/apache-self-linking-error.html' title='Apache Self Linking error'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-8845619467432796529</id><published>2008-01-20T19:55:00.000-08:00</published><updated>2008-01-20T19:56:58.412-08:00</updated><title type='text'>Innodb error: Unable to restart Mysql</title><content type='html'>Forcing InnoDB Recovery&lt;br /&gt;&lt;br /&gt;If there is database page corruption, you may want to dump your tables from the database with SELECT INTO OUTFILE. Usually, most of the data obtained in this way is intact. Even so, the corruption may cause SELECT * FROM tbl_name statements or InnoDB background operations to crash or assert, or even to cause InnoDB roll-forward recovery to crash. However, you can force the InnoDB storage engine to start up while preventing background operations from running, so that you are able to dump your tables. For example, you can add the following line to the [mysqld] section of your option file before restarting the server :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;vi /etc/my.cnf&lt;br /&gt;[mysqld]&lt;br /&gt;innodb_force_recovery = 4&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The allowable non-zero values for innodb_force_recovery follow. A larger number includes all precautions of smaller numbers. If you are able to dump your tables with an option value of at most 4, then you are relatively safe that only some data on corrupt individual pages is lost. A value of 6 is more drastic because database pages are left in an obsolete state, which in turn may introduce more corruption into B-trees and other database structures.&lt;br /&gt;&lt;br /&gt;    *      1 (SRV_FORCE_IGNORE_CORRUPT)&lt;br /&gt;&lt;br /&gt;      Let the server run even if it detects a corrupt page. Try to make SELECT * FROM tbl_name jump over corrupt index records and pages, which helps in dumping tables.&lt;br /&gt;    *      2 (SRV_FORCE_NO_BACKGROUND)&lt;br /&gt;&lt;br /&gt;      Prevent the main thread from running. If a crash would occur during the purge operation, this recovery value prevents it.&lt;br /&gt;    *      3 (SRV_FORCE_NO_TRX_UNDO)&lt;br /&gt;&lt;br /&gt;      Do not run transaction rollbacks after recovery.&lt;br /&gt;    *      4 (SRV_FORCE_NO_IBUF_MERGE)&lt;br /&gt;&lt;br /&gt;      Prevent also insert buffer merge operations. If they would cause a crash, do not do them. Do not calculate table statistics.&lt;br /&gt;    *      5 (SRV_FORCE_NO_UNDO_LOG_SCAN)&lt;br /&gt;&lt;br /&gt;      Do not look at undo logs when starting the database: InnoDB treats even incomplete transactions as committed.&lt;br /&gt;    *      6 (SRV_FORCE_NO_LOG_REDO)&lt;br /&gt;&lt;br /&gt;      Do not do the log roll-forward in connection with recovery.&lt;br /&gt;&lt;br /&gt;You can SELECT from tables to dump them, or DROP or CREATE tables even if forced recovery is used. If you know that a given table is causing a crash on rollback, you can drop it. You can also use this to stop a runaway rollback caused by a failing mass import or ALTER TABLE. You can kill the mysqld process and set innodb_force_recovery to 3 to bring the database up without the rollback, then DROP the table that is causing the runaway rollback.&lt;br /&gt;&lt;br /&gt;The database must not otherwise be used with any non-zero value of innodb_force_recovery. As a safety measure, InnoDB prevents users from performing INSERT, UPDATE, or DELETE operations when innodb_force_recovery is greater than 0.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-8845619467432796529?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/8845619467432796529/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=8845619467432796529' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8845619467432796529'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8845619467432796529'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2008/01/innodb-error-unable-to-restart-mysql.html' title='Innodb error: Unable to restart Mysql'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-4923262905497655359</id><published>2008-01-20T14:45:00.000-08:00</published><updated>2008-01-20T14:48:46.500-08:00</updated><title type='text'>Installing Domain Keys on Cpanel</title><content type='html'>Delivering mail to yahoo and google is so hard those days. Almost every server has had this problem even if it is not used to relay spam.&lt;br /&gt;Installing DomainKeys can help your server deliver “clean” emails directly to your user’s inbox.&lt;br /&gt;What are DomainKeys?&lt;br /&gt;Well you will find more information on this topic at: http://antispam.yahoo.com/domainkeys&lt;br /&gt;&lt;br /&gt;Installation is simple and it’s done on a domain basis.&lt;br /&gt;&lt;br /&gt;How to install DomainKeys on a specific domain.&lt;br /&gt;&lt;br /&gt;   1. First check that you are running the latest version on RELEASE or CURRENT of cPanel 11.&lt;br /&gt;   2. Run the script&lt;br /&gt;&lt;br /&gt;          /usr/local/cpanel/bin/domain_keys_installer username&lt;br /&gt;&lt;br /&gt;      Where username is the cPanel user.&lt;br /&gt;&lt;br /&gt;If you get an error similar to “Domain keys are not installed on this machine.” you either are not running the latest release or current version of cPanel or you have not converted yet to maildir. Maildir conversion is required before you install DomainKeys.&lt;br /&gt;You will find an article about converting to maildir on this site !&lt;br /&gt;&lt;br /&gt;Ok, we just installed DomainKeys for a domain, but how about if we want to install it for all the domains (users)?&lt;br /&gt;Well I found the solution just a few days ago on a public forum. Someone wrote a nice bash script that will parse all the cpanel users and then run the installation for each of them.&lt;br /&gt;&lt;br /&gt;    for i in `ls /var/cpanel/users` ;do /usr/local/cpanel/bin/domain_keys_installer $i ;done&lt;br /&gt;&lt;br /&gt;Ok, but what about if we want that every new created account to have DomainKeys installed. Well this is a bit harder to do.&lt;br /&gt;I recommend editing /scripts/postwwwacct and adding:&lt;br /&gt;&lt;br /&gt;    my %OPTS = @ARGV;&lt;br /&gt;    my $user = $OPTS{’user’};&lt;br /&gt;    /usr/local/cpanel/bin/domain_keys_installer $user&lt;br /&gt;&lt;br /&gt;Courtesy: http://www.cpanelconfig.com/cpanel-administration/installing-domainkeys-on-a-cpanel-server/&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-4923262905497655359?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/4923262905497655359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=4923262905497655359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4923262905497655359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4923262905497655359'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2008/01/installing-domain-keys-on-cpanel.html' title='Installing Domain Keys on Cpanel'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-6081590433679704296</id><published>2007-12-19T05:03:00.000-08:00</published><updated>2007-12-24T10:58:32.328-08:00</updated><title type='text'>Common Kernel Panic Errors</title><content type='html'>&lt;span style="font-weight:bold;color:red"&gt;Unable to mount root fs and solution&lt;/span&gt; The error is common as soon as the compile happens on a new partition and the most common error will  be when the grub/lilo configuration is manually edited by the user, it is preferred to keep the settings to the default. If you drive into error then login  to the machine using single user mode and have the grub configuration edited such that the drive letter is corresponded, normally adding /dev/hda0 instead of /dev/hda on the LABEL keyword help.&lt;br /&gt;&lt;br /&gt;2. No Init found&lt;br /&gt;&lt;br /&gt;1. Boot computer. As soon as Grub splash screen comes up, hit up or down arrow key to stop the clock.&lt;br /&gt;2. Press "c" to get the Grub command line like this: grub&gt;&lt;br /&gt;3. Type:&lt;br /&gt;root (&lt;tab&gt;&lt;br /&gt;You should get a list of valid drives. If the result fails then assume that the grub does know the details of the root partition.&lt;br /&gt;4. Press the next character corresponding to the drive OR partition where your /boot directory is and then press &lt;tab&gt;&lt;br /&gt;5. Repeat step 4 until you have completed the line so it looks like&lt;br /&gt;root (hdx,y)&lt;br /&gt;where x and y are correct drive (x) and partition (y) where your /boot directory is. You should know already that Grub counts drives and partitions starting with zero for the first primary partition and 4 for the first extended partition.&lt;br /&gt;6. If you do not have a separate /boot partition, type:&lt;br /&gt;kernel  /boot/vmlin&lt;tab&gt;&lt;br /&gt;If you do have a separate /boot partition, do not enter the /boot and instead, just&lt;br /&gt;kernel /vmlin&lt;tab&gt;&lt;br /&gt;In either case, when you hit &lt;tab&gt;, Grub will complete the filename, or list possible files ONLY if you have correctly entered all other information. If Grub says something like "no files found", go back and correct your error.&lt;br /&gt;7. Repeat step 6 until you have a complete filename but do not press enter yet.&lt;br /&gt;8. Following the kernel filename, on the same line, add ro so the filesystems will be initially mounted read only so that integrity checks may be made without adding corruption, and add information telling Grub where your top level root partition is: / so that the line looks something like this:&lt;br /&gt;kernel /vmlinuz-2.4.22-1.2115.nptl ro root=/dev/hda8&lt;br /&gt;where, instead of "hda8" you have the correct drive and partition where your / partition is. If you make a mistake here, Grub will not complain. Instead, you will get the message saying there was no init found.&lt;br /&gt;8a. If you want to boot in single user mode, without a graphic display, you should add the word single to the end of the line. When the line is complete, press enter.&lt;br /&gt;9. If you do not have a separate /boot partition, type:&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;initrd  /boot/initrd&lt;tab&gt;&lt;br /&gt;&lt;br /&gt;If you do have a separate /boot partition, do not enter the /boot and instead, just&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;initrd /initrd&lt;tab&gt;&lt;br /&gt;&lt;br /&gt;In either case, when you hit &lt;tab&gt;, Grub will complete the filename, or list possible files ONLY if you have correctly entered all other information. If Grub says something like "no files found", go back and correct your error.&lt;br /&gt;10. Repeat step 9 until you have a complete filename.&lt;br /&gt;11. Press "enter".&lt;br /&gt;12. Finally, if the system doesn't boot automatically, type: boot and press enter.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-6081590433679704296?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/6081590433679704296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=6081590433679704296' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/6081590433679704296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/6081590433679704296'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/common-kernel-panic-errors.html' title='Common Kernel Panic Errors'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-3897384876701718374</id><published>2007-12-18T10:13:00.000-08:00</published><updated>2007-12-19T04:48:47.436-08:00</updated><title type='text'>Kernel Panic's !</title><content type='html'>To keep it simple. Kernel panic errors are displayed by the server when it finds itself in a irrecoverable error. The error is mostly seen in linux machines and if you were to compile a new kernel for the machine with wrong settings it is that quick to view :).&lt;br /&gt;&lt;br /&gt;Most of the unix like systems or linux systems have a seperate panic() routine which will be responsible for displaying the error output on a console and once this is done, it will be dumping the memory of the kernel on to the disk for further check or debugging. In panic states, you can either restart the machine manually or schedule a automatic reboot. &lt;br /&gt;&lt;br /&gt;To set a automatic reboot during kernel panic sessions, use the following settings:&lt;br /&gt;&lt;br /&gt;vi /etc/sysctl.conf&lt;br /&gt;&lt;br /&gt;now hit i then copy paste this line&lt;br /&gt;&lt;br /&gt;kernel.panic = 10&lt;br /&gt;&lt;br /&gt;this should initiate a reboot in 10 seconds for normal servers.&lt;br /&gt;&lt;br /&gt;A common cause for the kernel panic are memory dump error. The kernel may try accessing a memory area that is currently not available. Again, as mentioned, it can either be due to the a faulty hardware or error with the latest update of the operating system.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Causes for Kernel Panics&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;* With increasing set of applications or clients wherein for webservers, the increase of RAM becomes inevitable. This is the first and foremost cause for Kernel Panics.&lt;br /&gt;&lt;br /&gt;* As mentioned earlier, recompile your kernel and expect it to happen. While recompiling the kernel it is common that we may try few available extensions or support modules which may drive back to this situation unless there is through fixing of the necessary dependencies.&lt;br /&gt;&lt;br /&gt;* Hard disk failure, this is common one to happen, your disk may develop a bad sector or bad block&lt;br /&gt;&lt;br /&gt;* Odd but a common problem, trouble with system file permissions can drive us to the kernel panic situation.&lt;br /&gt;&lt;br /&gt;* Insufficient RAM or Harddisk is another common trouble to be viewed.&lt;br /&gt;&lt;br /&gt;* Improperly installed software or hardware.&lt;br /&gt;&lt;br /&gt;* Defective hardware like a trouble with CPU&lt;br /&gt;&lt;br /&gt;* And very rare chance of having a hardware mismatch which shouldn't happen for most of the branded versions available. &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-3897384876701718374?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/3897384876701718374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=3897384876701718374' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/3897384876701718374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/3897384876701718374'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/kernel-panics.html' title='Kernel Panic&apos;s !'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-904974137102802173</id><published>2007-12-10T05:03:00.000-08:00</published><updated>2007-12-10T10:54:56.196-08:00</updated><title type='text'>Linux Commands : Kernel administration commands</title><content type='html'>Quick commands on linux administration continued...&lt;br /&gt;&lt;br /&gt;Kernel administration command, &lt;br /&gt;&lt;br /&gt;LSMOD is used to list the loaded modules on the kernel, the usage is:&lt;br /&gt;&lt;br /&gt;$lsmod &lt;br /&gt;&lt;br /&gt;Module                  Size  Used by&lt;br /&gt;autofs                 11904   1  (autoclean)&lt;br /&gt;3c59x                  25568   1  (autoclean)&lt;br /&gt;iptable_filter          2288   0  (autoclean) (unused)&lt;br /&gt;md                     59008   0  (unused)&lt;br /&gt;usb-uhci               20912   0  (unused)&lt;br /&gt;usbcore                53200   1  [usb-uhci]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;&lt;br /&gt;MODINFO is the command used to learn about the modules active on the kernel. &lt;br /&gt;&lt;br /&gt;usage: &lt;br /&gt;$/sbin/modinfo usb-uhci&lt;br /&gt;&lt;br /&gt;filename:    /lib/modules/2.4.4-18k/kernel/drivers/usb/usb-uhci.o&lt;br /&gt;description: "USB Universal Host Controller Interface driver"&lt;br /&gt;author:      "Georg Acher, Deti Fliegl, Thomas Sailer, Roman Weissgaerber"&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;&lt;br /&gt;INSMOD is the command used to activate or to add in the command to an active kernel. The syntax is :&lt;br /&gt;&lt;br /&gt;$insmod msdos&lt;br /&gt;&lt;br /&gt;************************************************************************&lt;br /&gt;&lt;br /&gt;RMMOD is the command used to remove any modules that you find running on the server. The list of modules can be found using the command lsmod.&lt;br /&gt;&lt;br /&gt;$rmmod msdos&lt;br /&gt;&lt;br /&gt;************************************************************************&lt;br /&gt;&lt;br /&gt;DEPMOD is the command used to create the dependencies list for the modules. Normally the details are fetched from /etc/modules.conf and have the descriptions added up.&lt;br /&gt;&lt;br /&gt;The normal usage of the same is : /sbin/depmod -a&lt;br /&gt;&lt;br /&gt;There are other options like depmod -A which should perform the quick check on the dependencies. &lt;br /&gt;&lt;br /&gt;*************************************************************************&lt;br /&gt;&lt;br /&gt;MODPROBE is another important command that helps the users to load the modules and the dependencies for the functioning. If we are to use&lt;br /&gt;&lt;br /&gt;modprobe fat&lt;br /&gt;&lt;br /&gt;then it should be loading up the fat module along with the supporting modules. Again, &lt;br /&gt;&lt;br /&gt;modprobe -r fat&lt;br /&gt;&lt;br /&gt;should remove the module fat along with the supporting modules for the fat.&lt;br /&gt;&lt;br /&gt;This should provide you with the best removal technique.&lt;br /&gt;&lt;br /&gt;*******************************************************************************&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;more coming...&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-904974137102802173?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/904974137102802173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=904974137102802173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/904974137102802173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/904974137102802173'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/linux-commands-kernel-administration.html' title='Linux Commands : Kernel administration commands'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-7690707881530068783</id><published>2007-12-10T03:25:00.000-08:00</published><updated>2007-12-10T05:02:57.248-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='network'/><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>quick commands : Linux administration - Hardware section</title><content type='html'>Linux will be having most of the hardware devices created at the start of the system but you can always create new devices using the command:&lt;br /&gt;&lt;br /&gt;# /dev/MAKEDEV -v ttyS0&lt;br /&gt;create ttyS0   c 4 64 root:dialout 0660&lt;br /&gt;&lt;br /&gt;This will be creating a device /dev/ttyS0 with permissions 0660 and ownership as root and dialout as group.&lt;br /&gt;&lt;br /&gt;The kernel will be using the major and minor node numbers for the system and the same indicates that the device so created is a serial device. &lt;br /&gt;&lt;br /&gt;*************************************************************************&lt;br /&gt;&lt;br /&gt;MKNOD is another command used in creating devices. MKDEV is normally the preferred way of creating devices which do not exist but in rare cases there is a chance that the device files may not be known to the MKDEV command. &lt;br /&gt;&lt;br /&gt;For the perfect usage of mknod command you should be aware about the minor and major nodes, the file devices.txt should contain the canonical names and details of the nodes. &lt;br /&gt;&lt;br /&gt;So for creating the same node as created using the MAKEDEV command the commands will be :&lt;br /&gt;&lt;br /&gt;mknod /dev/ttyS0 c 4 24&lt;br /&gt;chmod 0660 /dev/ttyS0&lt;br /&gt;chown root:dialout /dev/ttyS0&lt;br /&gt;&lt;br /&gt;*******************************************************************************&lt;br /&gt;&lt;br /&gt;LSPCI command is used to list the number of PCI buses available for the server. It is normally used to diagnose the troubles with PCI buses. &lt;br /&gt;&lt;br /&gt;usage: $ lspci -tv&lt;br /&gt;&lt;br /&gt;*******************************************************************************&lt;br /&gt;&lt;br /&gt;LSDEV command is used for learning the information and status of the virtual I/O Devices. The normal usage is:&lt;br /&gt;&lt;br /&gt;lsdev -type disk -fields name status&lt;br /&gt;&lt;br /&gt;the various types are :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;adapter&lt;/span&gt;&lt;br /&gt;    Lists adapters &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;disk&lt;/span&gt;&lt;br /&gt;    Lists disks &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;lv&lt;/span&gt;&lt;br /&gt;    Lists logical volumes and volume groups &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;optical&lt;/span&gt;&lt;br /&gt;    Lists optical devices (cdrom/dvdrom) &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;tape&lt;/span&gt;&lt;br /&gt;    Lists tape devices &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;tty&lt;/span&gt;&lt;br /&gt;    Lists tty devices &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ent4sea&lt;/span&gt;&lt;br /&gt;    Lists all physical Ethernet adapters and Etherchannel adapters available for creating a shared Ethernet adapter &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ven4sea&lt;/span&gt;&lt;br /&gt;    Lists all virtual Ethernet adapters available for creating shared Ethernet adapter &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ent4ip&lt;/span&gt;&lt;br /&gt;    Lists all adapters over which interface can be configured.&lt;br /&gt;&lt;br /&gt;To display the parent of a devices, type:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;lsdev –dev hdisk0 -parent&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;************************************************************************************&lt;br /&gt;&lt;br /&gt;LSUSB is the command used to list the current connected USB connections on the drive.Normal installations may fail to have this command inbuilt you will need to get the packages updated on the distribution with usbutils to get this working.&lt;br /&gt;&lt;br /&gt;usage: lsusb&lt;br /&gt;&lt;br /&gt;************************************************************************************ &lt;br /&gt;&lt;br /&gt;lsraid is the command used for displaying the status of the md devices on the server. The details are as mentioned in the configuration file /etc/raidtab. Again the command is able to distinguish between the online and offline devices and can give out the detailed statistics.&lt;br /&gt;&lt;br /&gt;usage : lsraid -A&lt;br /&gt;&lt;br /&gt;*************************************************************************************&lt;br /&gt;&lt;br /&gt;HDPARM is used to modify or view the statistics of the hard disk. The command allows us to pass on the parameters on to the system and also to modify the current disk parameters like DMA settings, power management, etc..&lt;br /&gt;&lt;br /&gt;The options available with hdparm can be dangerous on occasions since the parameters if specified incorrectly can cause trouble. &lt;br /&gt;&lt;br /&gt;Turn on DMA for the first hard drive.&lt;br /&gt;&lt;br /&gt;hdparm -d1 /dev/hda&lt;br /&gt;&lt;br /&gt;Turn off DMA for the first hard drive.&lt;br /&gt;&lt;br /&gt;hdparm -d0 /dev/hda&lt;br /&gt;&lt;br /&gt;******************************************************************************* &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;more coming up....&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-7690707881530068783?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/7690707881530068783/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=7690707881530068783' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/7690707881530068783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/7690707881530068783'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/quick-commands-linux-administration.html' title='quick commands : Linux administration - Hardware section'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-6042348153464448176</id><published>2007-12-04T23:19:00.000-08:00</published><updated>2007-12-06T04:31:20.618-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='network'/><title type='text'>LightWeight Directory Access Protocol : LDAP installation configuration and authentication</title><content type='html'>Lightweight Directory Access Protocol is used for providing data for the individuals or system users or network devices and the systems in network which require authentication or information from the network. This can be useful for network authentication for critical data or to share address books between the email clients on the network.&lt;br /&gt;&lt;br /&gt;LDAP was developed as a protocol to provide centralized and secure access to resources over the network. The earlier standard that was in use was X.500, this was developed towards 1988. X.500 was developed with hierarchial name space and was able to maintain a large quantity of information. There was specific communication link maintained between the directory client and the directory server and the protocol in use was named as Directory Access Protocol. &lt;br /&gt;&lt;br /&gt;The X.500 protocol was mainly an application layer protocol and required the whole of OSI level to be installed for successful working. This was the major drawback, since the installation and setting of OSI layers will require high resources and the implementation of directory access protocol at a smaller level of organization will be cost intensive. &lt;br /&gt;&lt;br /&gt;LDAP came into existence with protocol much less resource intensive and also had the use of TCP/IP stack compared to the OSI model which was earlier implemented. The LDAP  had used few features from the X.500 and was able to remove few resource intensive features from the model.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Installation&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The installation of LDAP is mainly with RPMs for redhat based systems and you will need the RPMs:&lt;br /&gt;&lt;br /&gt;openldap-2.0.27-8&lt;br /&gt;nss_ldap-202-5&lt;br /&gt;openldap-clients-2.0.27-8&lt;br /&gt;openldap-servers-2.0.27-8&lt;br /&gt;openldap12&lt;br /&gt;&lt;br /&gt;normall the redhat systems will work with the above details but some may require these additional packages:&lt;br /&gt;&lt;br /&gt;slapd, ldap-utils, libldap2, libldap2-dev&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;configuration&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The major configuration files with LDAP are at:&lt;br /&gt;&lt;br /&gt;/etc/openldap/slapd.conf&lt;br /&gt;&lt;br /&gt;The configuration contains the details of hostname, domain info, admin info and references.  &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Sample configuration of slapd.conf&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;# $OpenLDAP: pkg/ldap/servers/slapd/slapd.conf,v 1.8.8.4 2000/08/26 17:06:18 kurt Exp $&lt;br /&gt;#&lt;br /&gt;# See slapd.conf(5) for details on configuration options.&lt;br /&gt;# This file should NOT be world readable.&lt;br /&gt;#&lt;br /&gt;include  /etc/openldap/schema/core.schema&lt;br /&gt;include  /etc/openldap/schema/cosine.schema&lt;br /&gt;include  /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;#include  /etc/openldap/schema/nis.schema&lt;br /&gt;#include  /etc/openldap/schema/redhat/rfc822-MailMember.schema&lt;br /&gt;#include  /etc/openldap/schema/redhat/autofs.schema&lt;br /&gt;#include  /etc/openldap/schema/redhat/kerberosobject.schema&lt;br /&gt;&lt;br /&gt;# Define global ACLs to disable default read access.&lt;br /&gt;&lt;br /&gt;# Do not enable referrals until AFTER you have a working directory&lt;br /&gt;# service AND an understanding of referrals.&lt;br /&gt;#referral ldap://root.openldap.org&lt;br /&gt;&lt;br /&gt;#pidfile /var/run/slapd.pid&lt;br /&gt;#argsfile /var/run/slapd.args&lt;br /&gt;&lt;br /&gt;# Load dynamic backend modules:&lt;br /&gt;# modulepath /usr/sbin/openldap&lt;br /&gt;# moduleload back_ldap.la&lt;br /&gt;# moduleload back_ldbm.la&lt;br /&gt;# moduleload back_passwd.la&lt;br /&gt;# moduleload back_shell.la&lt;br /&gt;&lt;br /&gt;# To allow TLS-enabled connections, create /usr/share/ssl/certs/slapd.pem&lt;br /&gt;# and uncomment the following lines.&lt;br /&gt;# TLSCertificateFile /usr/share/ssl/certs/slapd.pem&lt;br /&gt;# TLSCertificateKeyFile /usr/share/ssl/certs/slapd.pem&lt;br /&gt;&lt;br /&gt;#######################################################################&lt;br /&gt;# ldbm database definitions&lt;br /&gt;#######################################################################&lt;br /&gt;&lt;br /&gt;database ldbm&lt;br /&gt;#suffix  "dc=stooges,dc=org"&lt;br /&gt;suffix  "o=stooges"&lt;br /&gt;rootdn  "cn=StoogeAdmin,o=stooges"&lt;br /&gt;rootpw  secret1&lt;br /&gt;directory /var/lib/ldap/stooges&lt;br /&gt;defaultaccess   read&lt;br /&gt;schemacheck     on&lt;br /&gt;lastmod         on&lt;br /&gt;#allow  *&lt;br /&gt;# Indices to maintain&lt;br /&gt;#index objectClass    eq&lt;br /&gt;#index objectClass,uid,uidNumber,gidNumber eq&lt;br /&gt;#index cn,mail,surname,givenname  eq,subinitial&lt;br /&gt;index   cn,sn,st    eq,pres,sub&lt;br /&gt;&lt;br /&gt;database ldbm&lt;br /&gt;suffix  "o=delta"&lt;br /&gt;# Only one suffix allowed per database&lt;br /&gt;#suffix          "dc=delta,dc=org"&lt;br /&gt;rootdn  "cn=DeanWormer,o=delta"&lt;br /&gt;rootpw  secret2&lt;br /&gt;directory /var/lib/ldap/fraternity&lt;br /&gt;defaultaccess   read&lt;br /&gt;schemacheck     on&lt;br /&gt;lastmod         on&lt;br /&gt;index   cn,sn,st    eq,pres,sub&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;--------------------------------------------------&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-6042348153464448176?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/6042348153464448176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=6042348153464448176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/6042348153464448176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/6042348153464448176'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/lightweight-directory-access-protocol.html' title='LightWeight Directory Access Protocol : LDAP installation configuration and authentication'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-1470928392444327872</id><published>2007-12-04T04:19:00.000-08:00</published><updated>2007-12-04T23:04:34.312-08:00</updated><title type='text'>User Management Made Easy</title><content type='html'>who  command displays the current active users on the server 'w' will still show the result in more compact method&lt;br /&gt;         Use who -uH for idle time and terminal info.&lt;br /&gt;&lt;br /&gt;users Used to list the currently logged in users.&lt;br /&gt;&lt;br /&gt;w  Displays currently logged in users and processes they are running.&lt;br /&gt;&lt;br /&gt;whoami  To display the current username&lt;br /&gt;&lt;br /&gt;groups Shows us the list of groups that the current user is in.&lt;br /&gt;                Use groups user-id to display groups for a given user.&lt;br /&gt;&lt;br /&gt;set Used to define the environment variables normally during installation of softwares we will need to make these custom  &lt;br /&gt;        settings&lt;br /&gt;&lt;br /&gt;id  Used to display the user id and the group id's for the user&lt;br /&gt;         Use id user-id to display info for another user id.&lt;br /&gt;&lt;br /&gt;last  Listing of most recent logins by users. Show where from, date and time of login (ftp, ssh, ...) Also see lastlog command.&lt;br /&gt;         Show last 100 logins: last -100&lt;br /&gt;&lt;br /&gt;history  Shell command to display previously entered commands.&lt;br /&gt;&lt;br /&gt;If you wish to set a welcome message or warning messages for all SSH connections then it will be advised to add the same to /etc/issue for example and have the /etc/ssh/sshd_config&lt;br /&gt;Specify text file: Banner /etc/issue&lt;br /&gt;&lt;br /&gt;Again you can use the /etc/motd to modify the next welcome message which gets displayed on the login prompt. The file /etc/issue is used for welcome message on telnet login screen.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-1470928392444327872?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/1470928392444327872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=1470928392444327872' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/1470928392444327872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/1470928392444327872'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/user-management-made-easy.html' title='User Management Made Easy'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-8457933553337612509</id><published>2007-12-04T03:53:00.000-08:00</published><updated>2007-12-04T04:19:23.071-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proc management'/><category scheme='http://www.blogger.com/atom/ns#' term='memory management'/><title type='text'>Memory Management: Common commands</title><content type='html'>vmstat  is used to view the virtual memory usage for the server&lt;br /&gt;&lt;br /&gt;cat /proc/meminfo or free   is the command used to learn the amount of memory used and the free memory available for the server&lt;br /&gt;&lt;br /&gt;pmap    is used to understand the shared library and memory map usage.&lt;br /&gt;&lt;br /&gt;sar -B is used to know the swaping page statistics on the server.&lt;br /&gt;&lt;br /&gt;cat /proc/sys/vm/freepages   is used to learn the free virtual memory pages on the system&lt;br /&gt;&lt;br /&gt;/usr/bin/time -v date   used to learn the page file usage for the programs. This should be used as /usr/bin/time to avoid the regular time  command used to display time&lt;br /&gt;&lt;br /&gt;/usr/bin/time -v processname&lt;br /&gt;&lt;br /&gt;should give the details on paging for the particular program.&lt;br /&gt;&lt;br /&gt;cat /proc/filesystems  Display filesystems currently in use.&lt;br /&gt;&lt;br /&gt;cat /proc/mounts  displays the information on the currently mounted file systems on the server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;showmount&lt;/span&gt; command will display the current list of network filesystems mounted on to the server.&lt;br /&gt;&lt;br /&gt;cat /proc/ide/hda/filename should display the diskinformation of files held by the kernel&lt;br /&gt;&lt;br /&gt;mkfs : to create new files systems the general syntax will be:&lt;br /&gt;&lt;br /&gt;mkfs -t ext3 /dev/drivename&lt;br /&gt;&lt;br /&gt;mount -t ext3 /dev/drivename location&lt;br /&gt;&lt;br /&gt;where location should be any part of your filesystem.&lt;br /&gt;&lt;br /&gt;fdisk or fsdisk is used for the partitioning of drives on the server. Cfdisk is another partition table manipulator. Each of the commands are equally effective and the difference stays in the switches in use.&lt;br /&gt;&lt;br /&gt;"sfdisk" is especially handy for scripting as it has direct support for reading actions from stdin. Again the operations and the flags for the command is different from normal fdisk usage.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-8457933553337612509?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/8457933553337612509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=8457933553337612509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8457933553337612509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8457933553337612509'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/memory-management-common-commands.html' title='Memory Management: Common commands'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-2109049054839126053</id><published>2007-12-04T02:29:00.000-08:00</published><updated>2007-12-04T04:06:40.372-08:00</updated><title type='text'>Process management commands: Simple and easy to use</title><content type='html'>pstree -p    The command is used to provide the details on the parent and child processes. &lt;br /&gt;&lt;br /&gt;iostat      Report the CPU Statistics and the details on the input/output statistics for partitions and devices.&lt;br /&gt;&lt;br /&gt;uname -a    provides the system information &lt;br /&gt;&lt;br /&gt;cat /proc/version     displays the kernel version&lt;br /&gt;&lt;br /&gt;lsmod    To get the details on the currently loaded modules on to the kernel; cat /proc/modules will also show up the same            -              result.&lt;br /&gt;&lt;br /&gt;uptime   will show the details of the system updtime.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;IPC's : Semaphores, shared memory and queues&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Linux uses the semaphores,shared memory and shared memory queues to communicate with each other or for inter process communication.&lt;br /&gt;&lt;br /&gt;the common commands used for identifying this are:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ipcs -s  lists the semaphores currently in use&lt;br /&gt;&lt;br /&gt;ipcs -m shows the shared memory details for the server&lt;br /&gt;&lt;br /&gt;ipcs -q shows the shared memory queue&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ipcrm - the command used to remove the IPC parameters&lt;br /&gt;&lt;br /&gt;ipcrm -s &lt;semaphoreid&gt;&lt;br /&gt;&lt;br /&gt;psof : is used to identify the processes attached to a particular file or network ports&lt;br /&gt;&lt;br /&gt;common usages are : lsof pid or file name&lt;br /&gt;&lt;br /&gt;lsof - u user-id&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;netstat -punta &lt;br /&gt;&lt;br /&gt;socklist&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;will provide the list of open network connections which can be further used to gain details on the active ports&lt;br /&gt;&lt;br /&gt;lsof -i tcp:port-no&lt;br /&gt;&lt;br /&gt;ulimit is another tool which should be helpful in creating user limits for number of processes and the memory access details for the&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-2109049054839126053?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/2109049054839126053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=2109049054839126053' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/2109049054839126053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/2109049054839126053'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/some-more-for-memory-management.html' title='Process management commands: Simple and easy to use'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-2184555016076640776</id><published>2007-12-02T22:30:00.000-08:00</published><updated>2007-12-04T02:29:27.262-08:00</updated><title type='text'>WebAdminstration Quick Tips: Unix Adminstrative commands</title><content type='html'>arp &lt;br /&gt;&lt;br /&gt;usage: arp&lt;br /&gt;&lt;br /&gt;command used for checking ethernet connectivity and IP address. The command displays the contents based on the results from route command and ifconfig details. Mostly used to get the IP address based on the configuration of network cards. &lt;br /&gt;&lt;br /&gt;df&lt;br /&gt;&lt;br /&gt;usage: df -h or df -i&lt;br /&gt;&lt;br /&gt;Displays the filesystem informaton based on the requirements. -h option displays the information in human readable format and -i option is used for displaying information based on the i nodes usage. &lt;br /&gt;&lt;br /&gt;du &lt;br /&gt;&lt;br /&gt;usage : du -sch filename/foldername or du -sch *&lt;br /&gt;&lt;br /&gt;Displays disk usage information based on the tags, the disk usage can be for a file or a specific directory. It can also be used to get the summary of disk usage on the specific folder or a specific partition based on the location from which the command is ran.&lt;br /&gt;&lt;br /&gt;ifconfig&lt;br /&gt;&lt;br /&gt;usage: ifconfig or ifconfig ethX:M ipaddress netmask&lt;br /&gt;&lt;br /&gt;Ifconfig is normally used to configure the network addresses or to check the working of the current network interfaces on the server. Also you can use the command to add up a specific IP address to a network interface, the process can be alternatively done by editing the file at /etc/sysconfig/network-scripts/ifcfg-ethX file and then restarting the network. Please note that the directory location mentioned is only for redhat based servers, the location may be different in other flavours of linux.&lt;br /&gt;&lt;br /&gt;init &lt;br /&gt;&lt;br /&gt;usage: init a&lt;br /&gt;&lt;br /&gt;where a will be the runlevel number to be started with. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;netstat&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;usage: netstat -nlap&lt;br /&gt;&lt;br /&gt;this is used to provide summary on the network usage and the sockets currently active on the server. Again the -r option will be providing the route for particular connections along with the socket details.&lt;br /&gt;&lt;br /&gt;nslookup&lt;br /&gt;&lt;br /&gt;usage: nslookup domainname&lt;br /&gt;&lt;br /&gt;Used to find the IP address information for the particular host and checks the domainname. &lt;br /&gt;&lt;br /&gt;ps &lt;br /&gt;&lt;br /&gt;usage : ps aux &lt;br /&gt;&lt;br /&gt;this is the process usage summary and displays the process id and the status of the process, whether it is in sleep ( S ) state or (R) running or (D) terminated state. &lt;br /&gt;&lt;br /&gt;route&lt;br /&gt;&lt;br /&gt;usage: route -n&lt;br /&gt;&lt;br /&gt;used to find the routing table details on the computer will be effective on the times when there is a connectivity issue. Again using route add  and route del commands can be defined to add or remove routing entries. Thank you.&lt;br /&gt;&lt;br /&gt;shred&lt;br /&gt;&lt;br /&gt;usage: shred -v filename&lt;br /&gt;&lt;br /&gt;this will help you remove the files by overwriting the details there. This should be helpful in removing the data without of the fear of retreiving any useful information on this.&lt;br /&gt;&lt;br /&gt;top&lt;br /&gt;&lt;br /&gt;usage: top -c -d2&lt;br /&gt;&lt;br /&gt;the options will help you get detailed list of commands and the operations active on the server and while running the top command you can type the key "h" and have the details sorted out for further use&lt;br /&gt;&lt;br /&gt;traceroute&lt;br /&gt;&lt;br /&gt;usage: traceroute domainname&lt;br /&gt;&lt;br /&gt;this should be helpful to get the detailed route from the source to the destination domainname.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-2184555016076640776?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/2184555016076640776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=2184555016076640776' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/2184555016076640776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/2184555016076640776'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/webadminstration-quick-tips-unix.html' title='WebAdminstration Quick Tips: Unix Adminstrative commands'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-578108249906362048</id><published>2007-12-02T21:59:00.000-08:00</published><updated>2007-12-02T22:23:31.988-08:00</updated><title type='text'>KeepAlive &amp; KeepAliveTimeout : Another key performance upgrades</title><content type='html'>KeepAlive&lt;br /&gt;&lt;br /&gt;This is the apache directive that helps the users to maintain persistant connections on to the server. This can help in maintaining the consistent performance upgrades for the clients. The value used is&lt;br /&gt;&lt;br /&gt;KeepAlive on&lt;br /&gt;&lt;br /&gt;this should help in maintaining the connections.&lt;br /&gt;&lt;br /&gt;KeepAliveTimeout&lt;br /&gt;&lt;br /&gt;KeepAliveTimeout 120&lt;br /&gt;&lt;br /&gt;This directive is used to define in seconds on how long the persistant connections on to the server is to be maintained. Once the request is received the directive is used to set the timeout.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-578108249906362048?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/578108249906362048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=578108249906362048' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/578108249906362048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/578108249906362048'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/keepalive-keepalivetimeout-another-key.html' title='KeepAlive &amp; KeepAliveTimeout : Another key performance upgrades'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-4230066913495883250</id><published>2007-12-02T08:41:00.000-08:00</published><updated>2007-12-02T21:56:01.101-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='modules'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>MaxKeepAliveRequests,MaxRequestsPerChild, ListenBacklog, MaxSpareServers, MinSpareServers: Some more quick limiting options</title><content type='html'>&lt;img src="http://tinyurl.com/2862lu" /&gt;&lt;br /&gt;&lt;br /&gt;ListenBackLog: Used to define the maximum length of the queue of pending connections.&lt;br /&gt;&lt;br /&gt;format:ListenBacklog 100&lt;br /&gt;&lt;br /&gt;Normally the settings are tuned fine and should be able to work along with the normal running. But in special cases like constant TCP SYN attacks that are to act on the server, the enty will be effective in controlling the access. Most of the occassions will not require the number to be set out as specified since the operating systems may restrict the number of access using the system call 'Listen' clause and this should be much lesser a number than the current one. Again, there is the factor of operating system and this should change with each running operating system. The number may be higher at some instances that the ones specified in the example.&lt;br /&gt;&lt;br /&gt;MaxKeepAliveRequests: Defines the the keep-alive requests per connection made on to the server.&lt;br /&gt;&lt;br /&gt;MaxKeepAliveRequests 20&lt;br /&gt;&lt;br /&gt;The directive is used to limit the number of keep-alive requests that are to arrive from a particular TCP/IP connection. The situation will be valid when the clause KeepAlive On is set on the server else you will find this function close to no use. 0 is used to specify the unlimited access and it is always advised to use high values to obtain maximum performance.&lt;br /&gt;&lt;br /&gt;MaxRequestsPerChild : Defines the Number of connections made by server child process&lt;br /&gt;&lt;br /&gt;MaxRequestsPerChild 10000&lt;br /&gt;&lt;br /&gt;This limit defines the maximum number of child processes created on the server and after the count the new process will die. When the value is set as 0 then the processes does not die automatically. Again for the keep alive requests only the first request counts for the limit and thus will be equally effective with the maxkeepaliverequests clause.&lt;br /&gt;&lt;br /&gt;MaxSpareServers : Defines the number of server child processes on the server.&lt;br /&gt;&lt;br /&gt;MaxSpareServers 15&lt;br /&gt;&lt;br /&gt;This is the count for the maximum number of idle processes by a server, a server process is counted as idle when it fails to serve any requests. The directive mentions the maximum number of idle processes and beyond this count the parent process will automatically kill the idle process.&lt;br /&gt;&lt;br /&gt;MinSpareServers: The minimum count of server child processes.&lt;br /&gt;&lt;br /&gt;This count is used to define the minimum number or idle processes on the server. If the server finds the count less than the limit then it will be creating a new process at a minimal rate of 1 per second. &lt;br /&gt;&lt;br /&gt;MinSpareServers 10&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-4230066913495883250?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/4230066913495883250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=4230066913495883250' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4230066913495883250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4230066913495883250'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/maxkeepaliverequestsmaxrequestsperchild.html' title='MaxKeepAliveRequests,MaxRequestsPerChild, ListenBacklog, MaxSpareServers, MinSpareServers: Some more quick limiting options'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-7867139237149470429</id><published>2007-12-01T20:16:00.000-08:00</published><updated>2007-12-01T22:17:23.219-08:00</updated><title type='text'>Maximum number of Clients Limit: MaxClients</title><content type='html'>Apache does allow the administrators to limit the amount of requests that are to arrive at the server during any stage of the server run. The keyword MaxClients limits the number of simultaneous requests on to the webserver, by limiting this value the server will prevent the amount of requests and will not create any further requests once the limit is reached. &lt;br /&gt;&lt;br /&gt;We can update the limit of 256 clients, for this one must edit the HARD_SERVER_LIMIT entry in httpd.h and recompile Apache. &lt;br /&gt;&lt;br /&gt;For the current settings, for all those connections that are to exceed the maxclients limit will be queued up by the kernel as mentioned in the directive: ListenBackLog. This helps back at times when the process is free the server will be able to grant the request.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-7867139237149470429?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/7867139237149470429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=7867139237149470429' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/7867139237149470429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/7867139237149470429'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/maximum-number-of-clients-limit.html' title='Maximum number of Clients Limit: MaxClients'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-1139584069810726374</id><published>2007-12-01T19:50:00.000-08:00</published><updated>2007-12-01T20:13:43.931-08:00</updated><title type='text'>Resource limit Process count : RLimitNPROC</title><content type='html'>As discussed earlier the usage can be limited generally using the said techniques, here is few that should set the limitations and to provide good performance to the server. The tag RLimitNPROC is another useful tool in case of an active shared server. This will be effective in the case of apache servers which does have the suexec enabled, thereby to limit the number of processes active by users or for a specific userID. It accepts one or two arguments, namely they will be the soft and hard limits for the user processes. &lt;br /&gt;&lt;br /&gt;RLimitNPROC soft-processes [hard-processes]&lt;br /&gt;&lt;br /&gt;eg: RLimitNPROC 2 10&lt;br /&gt;&lt;br /&gt;should be ideal for a normal running server with high number of users active on apache server.&lt;br /&gt;&lt;br /&gt;It will be accepting the value as 'max' and this will be limiting the amount of processes as defined on the root of the system. Again, this will be a dangerous function to use if the CGI's are to run on the apache userID, and the function will be limiting the number of apache ID's created and the situation may rise where you will find the error message " cannot fork "  on the apache server. &lt;br /&gt;&lt;br /&gt;So when used wisely this will be a very effective tool on the apache based servers with suexec and also have the use on forums.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-1139584069810726374?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/1139584069810726374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=1139584069810726374' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/1139584069810726374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/1139584069810726374'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/12/resource-limit-process-count.html' title='Resource limit Process count : RLimitNPROC'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-3358456718587315396</id><published>2007-11-30T21:47:00.000-08:00</published><updated>2007-11-30T22:13:04.785-08:00</updated><title type='text'>Apache Timeout : Optimizations by limiting stale processes</title><content type='html'>Timeout is another keyword provided by apache for use, this should help you to limit the stale usage of the apache server under three conditions:&lt;br /&gt;&lt;br /&gt;1. Limits the time that the apache processes are to wait for the HTTP GET request. &lt;br /&gt;&lt;br /&gt;2. Timeouts between the wait time for PUT or POST activities.&lt;br /&gt;&lt;br /&gt;3. The time delays on the ACK signals on requests. &lt;br /&gt;&lt;br /&gt;The default timer settings are set to 1200 seconds but this can be altered based on the incoming requests on to the server. &lt;br /&gt;&lt;br /&gt;Timeout 60&lt;br /&gt;&lt;br /&gt;value should be ideal for an active server.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-3358456718587315396?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/3358456718587315396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=3358456718587315396' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/3358456718587315396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/3358456718587315396'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/apache-timeout-optimizations-by.html' title='Apache Timeout : Optimizations by limiting stale processes'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-4263023512880613380</id><published>2007-11-30T21:26:00.000-08:00</published><updated>2007-11-30T21:46:53.444-08:00</updated><title type='text'>RLimitCPU : CPU limiting for apache.</title><content type='html'>Another Unique tool available with apache which helps to limit the CPU resource usage by apache processes. The values passed on are in seconds or as 'max' which should use the full usage settings as specified on the operating system parameters. The clause takes up one or two arguments based on the minimum and maximum limits that are to be set.&lt;br /&gt;&lt;br /&gt;CPU resource limits are expressed in seconds per process.&lt;br /&gt;&lt;br /&gt;Again this will be active for all the sub processes from the apache server but will stand invalid for the main activities or the direct child of the apache server. &lt;br /&gt;&lt;br /&gt;RLimitCPU 60 120&lt;br /&gt;&lt;br /&gt;should be ideal for normal and extreme php queries that are to work with the server. Although you can use the max value for servers as per requirement and can update the limit set by operating system by logging on to the system as root.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-4263023512880613380?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/4263023512880613380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=4263023512880613380' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4263023512880613380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4263023512880613380'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/rlimitcpu-cpu-limiting-for-apache.html' title='RLimitCPU : CPU limiting for apache.'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-8390091169540056731</id><published>2007-11-30T21:02:00.000-08:00</published><updated>2007-11-30T21:21:40.694-08:00</updated><title type='text'>Apache Optimization : Simple techniques</title><content type='html'>With the increase in the number of clients using the webserver it becomes an important step to optimize the normal webserver to its best to gain performance and to make efficient use of the resources. By default Apache does provide you with a few keywords which when used to its best can yield maximum usage of resources.&lt;br /&gt;&lt;br /&gt;1. RLimitMem&lt;br /&gt;&lt;br /&gt;Normally the apache server will be using the memory limits specified by the operating system although you will find it comparatively less or at some occasions huge memory limits being used. We will be able to set the memory usage by the apache server on a particular machine using the RLimitMem value set properly. The property is available right from apache 1.2 and is most effective while you find apache server using more server resources that it should be.&lt;br /&gt;&lt;br /&gt;The RLimitMem takes up two arguments to define the minimum soft resource limit and the maximum resource limit. It takes up values in bytes or you can use the keyword 'max' which will make it access the maximum memory slot available through the operating system.&lt;br /&gt;&lt;br /&gt;RLimitMEM 1048576 2097152&lt;br /&gt;&lt;br /&gt;should be ideal for a large server. Please note that once you keep the clause as max and you wish to update the memory usage you will need to login as root or to edit the details on startup phase.&lt;br /&gt;&lt;br /&gt;Again, the limit will be applicable to all the processes that are forked out of the main process, this should include the CGI and SSI exec programs, but this limit will stand invalid for main apache processes like logging of stats.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-8390091169540056731?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/8390091169540056731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=8390091169540056731' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8390091169540056731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8390091169540056731'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/apache-optimization-simple-techniques.html' title='Apache Optimization : Simple techniques'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-4629607015705464264</id><published>2007-11-28T22:18:00.000-08:00</published><updated>2007-11-28T23:41:58.353-08:00</updated><title type='text'>Networking Tools on Windows</title><content type='html'>These are a set of command line options available with windows platforms for checking out connectivity and modifying the details there.&lt;br /&gt;&lt;br /&gt;   Display Connection Configuration: ipconfig /all&lt;br /&gt;&lt;br /&gt;   Display DNS Cache Info Configuration: ipconfig /displaydns&lt;br /&gt;&lt;br /&gt;   Clear DNS Cache: ipconfig /flushdns&lt;br /&gt;&lt;br /&gt;   Release All IP Address Connections: ipconfig /release&lt;br /&gt;&lt;br /&gt;   Renew All IP Address Connections: ipconfig /renew&lt;br /&gt;&lt;br /&gt;   Re-Register the DNS connections: ipconfig /registerdns&lt;br /&gt;&lt;br /&gt;   Change/Modify DHCP Class ID: ipconfig /setclassid&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;   Network Connections: control netconnections&lt;br /&gt;&lt;br /&gt;   Network Setup Wizard: netsetup.cpl&lt;br /&gt;&lt;br /&gt;   Test Connectivity: ping www.whatismyip.com&lt;br /&gt;&lt;br /&gt;   Trace IP address Route: tracert&lt;br /&gt;&lt;br /&gt;   Displays the TCP/IP protocol sessions: netstat&lt;br /&gt;&lt;br /&gt;   Display Local Route: route&lt;br /&gt;&lt;br /&gt;   Display Resolved MAC Addresses: arp&lt;br /&gt;&lt;br /&gt;   Display Name of Computer Currently on: hostname&lt;br /&gt;&lt;br /&gt;   Display DHCP Class Information: ipconfig /showclassid&lt;br /&gt;&lt;br /&gt;These could be used for instructing the clients or check for the connectivity to the server.&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-4629607015705464264?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/4629607015705464264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=4629607015705464264' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4629607015705464264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/4629607015705464264'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/networking-tools-on-windows.html' title='Networking Tools on Windows'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-975851608384554148</id><published>2007-11-16T08:02:00.000-08:00</published><updated>2007-11-28T22:18:23.660-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mod_rewrite'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Apache Mod_Rewrite: Basics &amp; rule writing</title><content type='html'>&lt;span style="font-size:100%;"&gt;Rewrite&lt;/span&gt;&lt;span style="font-size:100%;"&gt; module one among the powerful tools available with apache to get most of the configurations by-passed and have the sites function like desire. Here are the basics for this:&lt;br /&gt;&lt;br /&gt;Expressions in use:&lt;br /&gt;&lt;br /&gt;^ represents the start of a string as in case of any other Linux programmes.&lt;br /&gt;&lt;br /&gt;$ represents the end of the string or to denote the end of a string.&lt;br /&gt;&lt;br /&gt;. Any single character.&lt;br /&gt;&lt;br /&gt;(a|b) represents the method for comparison.. i.e, a or b&lt;br /&gt;&lt;br /&gt;(a,b,c) Group a section for use&lt;br /&gt;&lt;br /&gt;[abc] define the item in range for here it will be a b or c&lt;br /&gt;&lt;br /&gt;[^abc] defines the item NOT in range a b or c&lt;br /&gt;&lt;br /&gt;a? experssion will count a zero or any one having 'a' as positive results&lt;br /&gt;&lt;br /&gt;a* will check for zero or more of a&lt;br /&gt;&lt;br /&gt;a+ will check for 1 or more of a&lt;br /&gt;&lt;br /&gt;a{3} will check for exactly 3 of a&lt;br /&gt;&lt;br /&gt;a{3,6} will check for values between 3 and 6&lt;br /&gt;&lt;br /&gt;!(pattern) will check for the details when the patterns do not match.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Redirection Header Code&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Here are the normal codes used up for apache to represent errors/warning messages. These can be used in the .htaccess redirection rules to have the required results displayed.&lt;br /&gt;&lt;br /&gt;301 redirect permanently&lt;br /&gt;302 redirect permanantly&lt;br /&gt;403 forbidden entries&lt;br /&gt;404 not found&lt;br /&gt;410 Gone&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Rewrite Rule Flags&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:100%;"&gt;The following set are characters and patterns used for defining rules via .htaccess.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;R[=code]&lt;/span&gt;&lt;span style="font-size:100%;"&gt; redirect to a url using optional coding entries.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;F&lt;/span&gt;&lt;span style="font-size:100%;"&gt; sends out a forbidden header message.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;G &lt;/span&gt;&lt;span style="font-size:100%;"&gt;sends out a "no longer exist" message.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;P&lt;/span&gt;&lt;span style="font-size:100%;"&gt; used to represent proxy entries&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;L&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to represent last rule&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;N&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to represent next rule or to restart the rules&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;C&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to represent the chain of rules&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;T= &lt;/span&gt;&lt;span style="font-size:100%;"&gt;is used to define mime  types&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;NS&lt;/span&gt;&lt;span style="font-size:100%;"&gt; is used to skip the request if it is a internal sub request&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;NC&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to define if the entry is case sensitive&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;QSA&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to append the query string&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;NE&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to define " do not escape" output&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;PT&lt;/span&gt;&lt;span style="font-size:100%;"&gt; is known as passthrough&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;S=x&lt;/span&gt;&lt;span style="font-size:100%;"&gt; is used to skip x rules&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;E=var:value&lt;/span&gt;&lt;span style="font-size:100%;"&gt; used to set environmental variables&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Condition Flags&lt;br /&gt;&lt;span&gt;NC - &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Case sensitive entry&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;OR - &lt;/span&gt;&lt;span style="font-size:100%;"&gt;To define the conditional entries.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Format of variables used&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;Here is the format of the variables available.&lt;br /&gt;&lt;br /&gt;%{name of the variable}&lt;br /&gt;&lt;br /&gt;The common list of variables in use are:&lt;br /&gt;&lt;br /&gt;HTTP_USER_AGENT&lt;br /&gt;HTTP_REFERER&lt;br /&gt;HTTP_COOKIE&lt;br /&gt;HTTP_FORWARDED&lt;br /&gt;HTTP_HOST&lt;br /&gt;HTTP_PROXY_CONNECTION&lt;br /&gt;HTTP_ACCEPT&lt;br /&gt;&lt;br /&gt;The details of requests in use are:&lt;br /&gt;&lt;br /&gt;REMOTE_ADDR&lt;br /&gt;REMOTE_HOST&lt;br /&gt;REMOTE_USER&lt;br /&gt;REMOTE_IDENT&lt;br /&gt;REQUEST_METHOD&lt;br /&gt;SCRIPT_FILENAME&lt;br /&gt;PATH_INFO&lt;br /&gt;QUERY_STRING&lt;br /&gt;AUTH_TYPE&lt;br /&gt;&lt;br /&gt;Server variables available are:&lt;br /&gt;&lt;br /&gt;DOCUMENT_ROOT&lt;br /&gt;SERVER_ADMIN&lt;br /&gt;SERVER_NAME&lt;br /&gt;SERVER_ADDR&lt;br /&gt;SERVER_PORT&lt;br /&gt;SERVER_PROTOCOL&lt;br /&gt;SERVER_SOFTWARE&lt;br /&gt;&lt;br /&gt;Time variables available are:&lt;br /&gt;&lt;br /&gt;TIME_YEAR&lt;br /&gt;TIME_MON&lt;br /&gt;TIME_DAY&lt;br /&gt;TIME_HOUR&lt;br /&gt;TIME_MIN&lt;br /&gt;TIME_SEC&lt;br /&gt;TIME_WDAY&lt;br /&gt;TIME&lt;br /&gt;&lt;br /&gt;Special variables in use are:&lt;br /&gt;&lt;br /&gt;API_VERSION&lt;br /&gt;THE_REQUEST&lt;br /&gt;REQUEST_URI&lt;br /&gt;REQUEST_FILENAME&lt;br /&gt;IS_SUBREQ&lt;br /&gt;&lt;br /&gt;Directives in use are:&lt;br /&gt;&lt;br /&gt;RewriteEngine&lt;br /&gt;RewriteOptions&lt;br /&gt;RewriteLog&lt;br /&gt;RewriteLogLevel&lt;br /&gt;RewriteLock&lt;br /&gt;RewriteMap&lt;br /&gt;RewriteBase&lt;br /&gt;RewriteCond&lt;br /&gt;RewriteRule&lt;br /&gt;&lt;br /&gt;These are the main variables and details used for defining rules sing apache mod_rewrite to carryout modifications to site without accessing or modifying the main apache configuration&lt;br /&gt;&lt;br /&gt;Here are some of the common rules used to define how the variables can be used with rewrite rule:&lt;br /&gt;&lt;br /&gt;1. When the site is permanently redirected to a different url:&lt;br /&gt;&lt;br /&gt;RewriteCond %{HTTP_HOST} ^www.domainname.com$ [NC]&lt;br /&gt;RewriteRule ^(.*)$ http://www.newdomainname/$1 [R=301,L]&lt;br /&gt;&lt;br /&gt;2. Page when moved temporarily:&lt;br /&gt;&lt;br /&gt;RewriteRule ^page.htm$ new_page [R, NC, L]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-975851608384554148?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/975851608384554148/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=975851608384554148' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/975851608384554148'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/975851608384554148'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/apache-modrewrite-basics-rule-writing.html' title='Apache Mod_Rewrite: Basics &amp; rule writing'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-764392036492876716</id><published>2007-11-15T09:14:00.000-08:00</published><updated>2007-11-16T07:56:23.492-08:00</updated><title type='text'>Adding Mod_security with apache</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(255, 153, 0);font-size:180%;" &gt;Adding Mod_Security With Apache2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Mod Security, one of the powerful tools in use for security maintenance in apache servers. The most widely used tool, and with simplest of installations&lt;br /&gt;&lt;br /&gt;Visit the url:&lt;br /&gt;&lt;br /&gt;https://bsn.breach.com/account/login.php&lt;br /&gt;&lt;br /&gt;use the username: Prasul&lt;br /&gt;password :  Prasul2004&lt;br /&gt;&lt;br /&gt;&gt;&gt; Downloads section you should find the list of softwares available, check the&lt;br /&gt;&lt;br /&gt;&lt;a href="https://bsn.breach.com/downloads/modsecurity-apache/"&gt;modsecurity-apache/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;directory to find the list of softwares which will include the latest version as well as that of the previous 1.9.x versions. Once you have selected this you can copy the link location and on the shell type the command&lt;br /&gt;&lt;br /&gt;wget --no-check-certificate "url u copied without this quotes"&lt;br /&gt;&lt;br /&gt;here is what I have done:&lt;br /&gt;&lt;br /&gt;cd /usr/local/src&lt;br /&gt;&lt;br /&gt;wget --no-check-certificate https://bsn.breach.com/downloads/t=e75bb42feca2d6c5ef356f122d408872/modsecurity-apache/modsecurity-apache_2.1.3.tar.gz&lt;br /&gt;&lt;br /&gt;this got me the file named modsecurity-apache_2.1.3.tar.gz which was untarred using:&lt;br /&gt;&lt;br /&gt;tar -xzvf modsecurity-apache_2.1.3.tar.gz&lt;br /&gt;cd modsecurity-apache_2.1.3/&lt;br /&gt;&lt;br /&gt;here you will find two directories&lt;br /&gt;&lt;br /&gt;apache1 and apache 2&lt;br /&gt;&lt;br /&gt;based on the configuration and software in use, choose the folder. i am proceeding with apache2 since I have it running up..&lt;br /&gt;&lt;br /&gt;cd apache2/&lt;br /&gt;&lt;br /&gt;Once you have this updated, check for the module unique_id to be installed.  The module should be turned on with the default installation if otherwise, uncomment the entry from your httpd.conf file to have this module enabled and have your apache server restarted.&lt;br /&gt;&lt;br /&gt;Now you will need to use the command :&lt;br /&gt;&lt;br /&gt;which libxml2&lt;br /&gt;&lt;br /&gt;or&lt;br /&gt;&lt;br /&gt;locate libxml2 if you do have updatedb running.&lt;br /&gt;&lt;br /&gt;Else you should try finding the file at /usr/includes directory.&lt;br /&gt;&lt;&lt;====== &lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;LibXML2 installation&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;If you are missing this you can install the same using the following simple steps:&lt;br /&gt;&lt;br /&gt;cd /usr/local/src&lt;br /&gt;wget &lt;a class="ulink" href="http://xmlsoft.org/sources/libxml2-2.6.29.tar.gz"&gt;http://xmlsoft.org/sources/libxml2-2.6.29.tar.gz&lt;/a&gt;&lt;br /&gt;wget &lt;a class="ulink" href="http://xmlsoft.org/sources/libxslt-1.1.21.tar.gz"&gt;http://xmlsoft.org/sources/libxslt-1.1.21.tar.gz&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;tar -xzvf libxml2-2.6.29&lt;br /&gt;cd libxml2-2.6.29/&lt;br /&gt;./configure --prefix=/usr &amp;amp;&amp;amp; make&lt;br /&gt;make test&lt;br /&gt;make install&lt;br /&gt;cd ..&lt;br /&gt;tar -xzvf libxslt-1.1.21&lt;br /&gt;cd libxslt-1.1.21&lt;br /&gt;./configure --prefix=/usr &amp;amp;&amp;amp; make&lt;br /&gt;make install&lt;/span&gt;&lt;span style="font-family:monospace;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;you can try running make test before make install to verify the settings but in most occasions you should be good to go with the above steps.&lt;br /&gt;&lt;br /&gt;========&gt;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;So now you have the known path to libxml2, enter the modsecurity directory and move along to apache 2 directory there,&lt;br /&gt;&lt;br /&gt;cd  /usr/local/src/modsecurity-apache_2.1.3/apache2/&lt;br /&gt;pico MakeFile&lt;br /&gt;&lt;br /&gt;search and update the location to libxml2 there as:&lt;br /&gt;&lt;br /&gt;&lt;code class="filename"&gt;INCLUDES=-I/usr/include/libxml2&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;once this is done, save and exit the file and use the command&lt;br /&gt;&lt;br /&gt;make&lt;br /&gt;/usr/local/apache2/bin/apachectl stop&lt;br /&gt;make install&lt;br /&gt;&lt;br /&gt;pico /usr/local/apache2/conf/httpd.conf&lt;br /&gt;&lt;br /&gt;&lt;code class="literal"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-family:arial;"&gt;add the entry :&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;LoadModule security2_module         modules/mod_security2.so&lt;br /&gt;&lt;br /&gt;or can use:&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;pre class="codelisting"&gt;LoadModule security_module /usr/lib/httpd/modules/mod_security.so&lt;br /&gt;&lt;/pre&gt;&lt;code class="literal"&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-family:arial;"&gt;save and exit the file and start apache.&lt;br /&gt;&lt;br /&gt;/usr/local/apache2/bin/apachectl start&lt;br /&gt;&lt;br /&gt;now you should have apache up with mod security on.&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;make sure that you make a good copy of   httpd.conf before adding up the rules. The following are the basic rules and for further filtering I will add up to this. Here is something that is basically done:&lt;br /&gt;&lt;br /&gt;use IfModule mod_security.c or use the Include clause to have the modules working:&lt;br /&gt;&lt;br /&gt;cd /etc/modsecurity/&lt;br /&gt;touch rules.conf&lt;br /&gt;pico /usr/local/apache2/conf/httpd.conf&lt;br /&gt;&lt;br /&gt;add the line:&lt;br /&gt;&lt;br /&gt;Include /etc/modsecurity/rules.conf&lt;br /&gt;&lt;br /&gt;or&lt;br /&gt;&lt;br /&gt;&lt;pre class="codelisting"&gt;Include conf.d/*.conf&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;save and exit the file. Now restart apache. This should help you work out the configuration in a smooth way. To start with you can use the following set of rules:&lt;br /&gt;&lt;br /&gt;pico /etc/mod_security/rules.conf&lt;br /&gt;&lt;br /&gt;add the following entries.&lt;br /&gt;&lt;span id="intelliTxt"&gt;&lt;pre&gt;&lt;code&gt;&lt;ifmodule&gt;# Turn the filtering engine On or Off&lt;br /&gt;SecFilterEngine On&lt;br /&gt;&lt;br /&gt;# Make sure that URL encoding is valid&lt;br /&gt;SecFilterCheckURLEncoding On&lt;br /&gt;&lt;br /&gt;# Unicode encoding check&lt;br /&gt;SecFilterCheckUnicodeEncoding Off&lt;br /&gt;&lt;br /&gt;# Only allow bytes from this range&lt;br /&gt;SecFilterForceByteRange 0 255&lt;br /&gt;&lt;br /&gt;# Only log suspicious requests&lt;br /&gt;SecAuditEngine RelevantOnly&lt;br /&gt;&lt;br /&gt;# The name of the audit log file&lt;br /&gt;SecAuditLog logs/audit_log&lt;br /&gt;# Debug level set to a minimum&lt;br /&gt;SecFilterDebugLog logs/modsec_debug_log&lt;br /&gt;SecFilterDebugLevel 0&lt;br /&gt;&lt;br /&gt;# Should mod_security inspect POST payloads&lt;br /&gt;SecFilterScanPOST On&lt;br /&gt;&lt;br /&gt;# By default log and deny suspicious requests&lt;br /&gt;# with HTTP status 500&lt;br /&gt;SecFilterDefaultAction "deny,log,status:500"&lt;br /&gt;&lt;br /&gt;&lt;/ifmodule&gt;"&lt;/code&gt;&lt;code&gt;"&lt;/code&gt;&lt;span id="intelliTxt"&gt;&lt;/span&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;This should be the basic setup for the modules. I will add few more rules for work.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt; "IfModule" &gt;&lt;br /&gt;&lt;br /&gt;# Only inspect dynamic requests&lt;br /&gt;# (YOU MUST TEST TO MAKE SURE IT WORKS AS EXPECTED)&lt;br /&gt;#SecFilterEngine DynamicOnly&lt;br /&gt;&lt;br /&gt;SecFilterEngine On&lt;br /&gt;&lt;br /&gt;# Reject requests with status 500&lt;br /&gt;SecFilterDefaultAction "deny,log,status:500"&lt;br /&gt;&lt;br /&gt;# Some sane defaults&lt;br /&gt;SecFilterScanPOST On&lt;br /&gt;SecFilterCheckURLEncoding On&lt;br /&gt;SecFilterCheckCookieFormat On&lt;br /&gt;SecFilterCheckUnicodeEncoding Off&lt;br /&gt;SecFilterNormalizeCookies On&lt;br /&gt;# enable version 1 (RFC 2965) cookies&lt;br /&gt;SecFilterCookieFormat 1&lt;br /&gt;&lt;br /&gt;SecServerResponseToken Off&lt;br /&gt;&lt;br /&gt;#If you want to scan the output, uncomment these&lt;br /&gt;#SecFilterScanOutput On&lt;br /&gt;#SecFilterOutputMimeTypes "(null) text/html text/plain"&lt;br /&gt;&lt;br /&gt;# Accept almost all byte values&lt;br /&gt;SecFilterForceByteRange 1 255&lt;br /&gt;&lt;br /&gt;# Server masking is optional&lt;br /&gt;#fake server banner - NOYB used - no one needs to know what we are using&lt;br /&gt;SecServerSignature "NOYB"&lt;br /&gt;&lt;br /&gt;#SecUploadDir /tmp&lt;br /&gt;#SecUploadKeepFiles Off&lt;br /&gt;&lt;br /&gt;# Only record the interesting stuff&lt;br /&gt;SecAuditEngine RelevantOnly&lt;br /&gt;SecAuditLog logs/audit_log&lt;br /&gt;&lt;br /&gt;# You normally won't need debug logging&lt;br /&gt;SecFilterDebugLevel 0&lt;br /&gt;SecFilterDebugLog logs/modsec_debug_log&lt;br /&gt;&lt;br /&gt;#And now, the rules&lt;br /&gt;#Remove any of these Include lines you do not use or have rules for.&lt;br /&gt;&lt;br /&gt;#First, add in your exclusion rules:&lt;br /&gt;#These MUST come first!&lt;br /&gt;Include /etc/modsecurity/exclude.conf&lt;br /&gt;&lt;br /&gt;#Application protection rules&lt;br /&gt;Include /etc/modsecurity/rules.conf&lt;br /&gt;&lt;br /&gt;#Comment spam rules&lt;br /&gt;Include /etc/modsecurity/blacklist.conf&lt;br /&gt;&lt;br /&gt;#Bad hosts, bad proxies and other bad players&lt;br /&gt;Include /etc/modsecurity/blacklist2.conf&lt;br /&gt;&lt;br /&gt;#Bad clients, known bogus useragents and other signs of malware&lt;br /&gt;Include /etc/modsecurity/useragents.conf&lt;br /&gt;&lt;br /&gt;#Known bad software, rootkits and other malware&lt;br /&gt;Include /etc/modsecurity/rootkits.conf&lt;br /&gt;&lt;br /&gt;#Signatures to prevent proxying through your server&lt;br /&gt;#only rule these rules if your server is NOT a proxy&lt;br /&gt;Include /etc/modsecurity/proxy.conf&lt;br /&gt;&lt;br /&gt;#Additional rules for Apache 2.x ONLY!  Do not add this line if you use Apache 1.x&lt;br /&gt;Include /etc/modsecurity/apache2-rules.conf&lt;br /&gt;&lt; / IfModule &gt;&lt;br /&gt;&lt;br /&gt;You can also check on the rulesets available at:&lt;br /&gt;http://www.gotroot.com/downloads/ftp/mod_security/apache2/apache2-gotrootrules-&lt;br /&gt;latest.tar.gz&lt;br /&gt;&lt;br /&gt;these should work perfectly with apache2.&lt;br /&gt;&lt;/pre&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-764392036492876716?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/764392036492876716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=764392036492876716' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/764392036492876716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/764392036492876716'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/adding-up-modsecurity-with-apache.html' title='Adding Mod_security with apache'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1269048452379394533.post-8132769452525230969</id><published>2007-11-12T04:30:00.000-08:00</published><updated>2007-11-15T09:13:55.038-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apache latest version'/><category scheme='http://www.blogger.com/atom/ns#' term='features'/><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache History'/><title type='text'>Apache 2.2.6 Review</title><content type='html'>&lt;h1&gt;&lt;u&gt;&lt;span lang="EN-US"&gt;&lt;span style="color: rgb(255, 204, 0);"&gt;Apache Web Server- Introduction&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/h1&gt;    &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;The word &lt;i&gt;Apache&lt;/i&gt; entered English via Spanish, but the ultimate origin is uncertain. The apache project was responsible for producing the most reliable and efficient of free web servers currently available. Because of its simplicity in use and the effectiveness of configurations, apache http server has been able to cover up to 50% of the total active web servers in the world.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span lang="EN-US"&gt;The project is currently active under the Apache Software foundation, which is responsible for the development, support and maintenance of the software. The software has been success in large counts and was successful in evolving into the next stage as the version 2 of the basic software. Apache version 2 or the apache2 will be the main point of discussion here. Taking back to the history, the project name was so chosen, since apache represents the name of the American tribe which is best known for their extensive skills in warfare and endurance. As for apache, endurance run has always been the active point of discussion. The project started with codebase of NCSA &lt;i style=""&gt;HTTPd(National Center for Supercomputing Applications webserver&lt;/i&gt;, one of the earliest web servers developed by a group of programmers led by Mr. Robert McCool. The NCSA project was later suspended on 1998 and since this happened, apache foundation has removed the relevant codes from the apache web server. Apache server developers have not restricted themselves to a OS platform and has been able to develop the software to its best functionality on UNIX, Linux, Solaris and Mac OS X. They have equal functionalities and procedures available which helps the user to cover up most of the cross platform troubles. Apache software Foundation, in the aim to achieve the best of development has made the software a part of Open Source programs. Thus providing the software for free and still maintaining the best of reputation. &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span lang="EN-US"&gt;Mr. Robert McCool was responsible for the development for the first version of the software. Mr. Robert had left the NCSA by the mid of 1994 and the code was available for public. On a later stage the new patches and updates for the software were circulated over via emails. Apache had undergone an overhaul with development on the later stages starting from 1995, with a significant effort from Mr. Rob Hartill and crew, they were able to develop new features like pre-forked child processes and later during the development, features like API for better extensibility, pool-based memory allocation, and an adaptive pre-forking process model were added to the software thus making it the best available one. The softwares were subjected to beta testing and addition of standard modules Apache1.0 was launched on December1, 1995.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;  &lt;/p&gt;&lt;h1 style="margin-left: 27.75pt; text-indent: -27.75pt;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="" lang="EN-US"&gt;&lt;span style=""&gt;1.1&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span lang="EN-US"&gt;Evolution of the server&lt;/span&gt;&lt;/h1&gt;&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;span lang="EN-US"&gt;The development has risen close to the release of Apache 2.2 which includes the maximum changes and updates. Mailing lists stands out as the main source for updates and developments for the project. Although the core members of the foundation still provide their best to the project. Apache 2.2 has made considerable changes to both core program and the list of modules available for the software. Major features like:&lt;/span&gt;&lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;span lang="EN-US"&gt;==&gt;Bundled authentication and authorization modules have been updated. Mod_authn_alias configurations should provide the best options for the new authentication.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;span lang="EN-US"&gt;==&gt;Modules like cache, disk_cache, mem_cache has been updated and the new feature by the name &lt;i style=""&gt;htcacheclean&lt;/i&gt; has been active for the new version of apache&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;span lang="EN-US"&gt;==&gt;Configuration files are now categorized. You will now have separate configuration files rather than having a single httpd.conf file which was considered to be the central point on earlier versions.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;span lang="EN-US"&gt;==&gt;Gracefulshutdowntimeout variable has been added to the server to specify the timeout required for the graceful reboot of server.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;!--[if !supportLists]--&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;span lang="EN-US"&gt;==&gt;Couple more features like proxies; Regular Expression library has been updated.&lt;/span&gt;==&gt;Smart filter module is another important update to the version which allows the firewall to be added with rules that can help filter the results based on the response header or environment variable. It is now able to cover up the dependencies with respect to the earlier release apache2.0&lt;/p&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;  &lt;p class="MsoListParagraphCxSpMiddle" style="text-align: justify; text-indent: -18pt;"&gt;&lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt;&lt;span lang="EN-US"&gt;==&gt;Now apache can withstand the 2GB limit which it tend to have in the previous versions. Normally the service used to stop at the point but the latest release will be able to cover files above the limit.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoListParagraphCxSpLast" style="text-align: justify; text-indent: -18pt;"&gt;&lt;span lang="EN-US"&gt;==&gt;Event MPM allows creating separate thread for &lt;span style="font-weight: bold;"&gt;KEEPALIVE&lt;/span&gt; requests and accepting connections. This should help in preventing the timeout delays for accepting new connections.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;span lang="EN-US"&gt;==&gt;Also introduces new API by the name &lt;span style="font-weight: bold;"&gt;APR 1.0 API&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;httpd -M&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;option is quite remarkable and will let you know the details on the modules loaded on to the current configuration. It has been quite helpful in troubleshooting of most apache errors that you will encounter during the run.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;1.2  &lt;/span&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-weight: bold;"&gt;Installation&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;Installation instructions for the software will be simple and quite neat.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:georgia;font-size:100%;"  lang="EN-US" &gt;&lt;br /&gt;cd /usr/local/src&lt;br /&gt;wget http://www.uniontransit.com/apache/httpd/httpd-2.2.6.tar.gz&lt;br /&gt;tar -xzvf httpd-2.2.6.tar.gz&lt;br /&gt;cd httpd-2.2.6&lt;br /&gt;./configure --prefix=/usr/local/apache2&lt;br /&gt;make&lt;br /&gt;make install&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;br /&gt;The compile and installation should be simple as that. Although you will like to use additional options such as&lt;br /&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;&lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt; text-align: justify;"&gt;&lt;code&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;--enable-rewrite=shared  FOR ENABLING REWRITE MODULES&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;       --enable-speling=shared  FOR SPELL CHECK&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;span style=";font-family:monospace;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;--enable-so LOADING UP .SO MODULES SPECIFIED&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--enable-cgi  LOAD UP CGI&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--enable-usertrack TRACE BACK APACHE ROUTE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--enable-deflate&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt; --enable-ssl \&lt;br /&gt;--enable-mime-magic&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span class="Heading1Char"&gt;&lt;span style="line-height: 115%;font-size:14;" lang="EN-US" &gt;1.2Configuration&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="line-height: 115%;" lang="EN-US"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="" lang="EN-US"&gt;Apache2 presents modularized configuration of sites and functions which should keep the main configuration file free and neat. You will be able to add the virtual host entries to a different file without altering the details of main httpd.conf file. Again, the location doesn't change for the old settings you will still find the apache configuration file at:&lt;br /&gt;pico /usr/local/apache2/conf/httpd.conf&lt;br /&gt;&lt;br /&gt;the attributes are similar to what we had for the old versions and to add to this you will have a few more directives which should make the work a better place. So the process of decentralization of configurations has really helped. The configuration settings are same as in previous settings, you will need to use&lt;br /&gt;&lt;br /&gt;LoadModule&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;Or the traditional &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;“&lt;ifmodule&gt;, AddModule, ClearModuleList”&lt;o:p&gt;&lt;/o:p&gt;&lt;/ifmodule&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoListParagraphCxSpFirst" style="text-indent: -18pt;"&gt;&lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;As you will be familiar you will find the following directives still active on the server and you will be able to configure it as per requirements:&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=""&gt;Directory&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;DirectoryMatch&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;Files&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;FilesMatch&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;Location&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;LocationMatch&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt;VirtualHost&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;              &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;Again you can use the directives like &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoListParagraphCxSpFirst" style="text-indent: -18pt;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span  lang="EN-US" style="font-family:Symbol;"&gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="" lang="EN-US"&gt;AccessFileName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoListParagraphCxSpLast" style="text-indent: -18pt;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span  lang="EN-US" style="font-family:Symbol;"&gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="" lang="EN-US"&gt;AllowOverride&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;As for the function AllowOverride which is mostly confused for the functionality, please make sure that it is entered in the “&lt;directory&gt;” tags so that you get the full functionality. You can still get the details of usage at:&lt;o:p&gt;&lt;/o:p&gt;&lt;/directory&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;&lt;a href="http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride"&gt;http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;Since the functions are already used with older versions of apache, you should find it quite similar.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;code&gt;"&lt;" VirtualHost [2001:db8::a00:20ff:fea7:ccea]"&gt;"&lt;br /&gt;    &lt;span class="indent"&gt;         ServerAdmin webmaster@host.example.com&lt;br /&gt;      DocumentRoot /www/docs/host.example.com&lt;br /&gt;      ServerName host.example.com&lt;br /&gt;      ErrorLog logs/host.example.com-error_log&lt;br /&gt;      TransferLog logs/host.example.com-access_log&lt;br /&gt;    &lt;/span&gt;"&lt;"/VirtualHost"&gt;"&lt;/code&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;This will be an addition as it presents to you with the ipv6 format for address based addition of websites. &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre face="courier new"&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div style="text-align: justify;"&gt;These are quite noticable changes, although the review part is just complete for the time. But&lt;br /&gt;I am still working with the servers for details. Now for the exact review of the software, the installation worked fine no possible errors were viewed. I had installed this on the apache 1.3 upgraded machine so there was nothing to be added. I will have to try installing on a fresh machine for checks on this regard, meanwhile if you do have trouble with these, then please add comments so that I will keep the records updated.&lt;br /&gt;&lt;br /&gt;The cons for the software is it first hand look from 1.3 to 2, when you will view the details you may find it troublesome in getting to the configuration files. You should find this in /usr/local/apache2/conf/sites/&lt;br /&gt;and there are noticable configuration updates there.&lt;br /&gt;&lt;br /&gt;As for the security side, w.r.t, to secunia, the release is one of the most stable of configurations and the most secure of available configuration. Currently no hacks have been found to happen with the software and it also has the effective fix for the apache2 ddos vulnerability. Since these are the merits for apache 2.2. I will be constantly updating the thread with the issues am to face. Hope at the end of the day we have a perfect fix or may be a new release.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;More to come&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1269048452379394533-8132769452525230969?l=websoftwaresreview.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://websoftwaresreview.blogspot.com/feeds/8132769452525230969/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1269048452379394533&amp;postID=8132769452525230969' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8132769452525230969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1269048452379394533/posts/default/8132769452525230969'/><link rel='alternate' type='text/html' href='http://websoftwaresreview.blogspot.com/2007/11/apache-226-review.html' title='Apache 2.2.6 Review'/><author><name>sP</name><uri>http://www.blogger.com/profile/18266588880608118857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
