Category: Ubuntu

            • Qmail SMTP Relay

              If you have a Qmail server and you want to allow a specific IP to send emails (relay) through Qmail all you have to do is to add in /etc/tcprules.d/tcp.smtp :

              IP:allow,RELAYCLIENT=”",RBLSMTPD=”",NOP0FCHECK=”0″,DKSIGN=”/var/qmail/control/domainkeys/domain.com/dkim1″

              Where IP is the IP of your remote email server. You can even specify something like : aaa.bbb.ccc.:allow,RELAYCLIENT=”"

              After this you have to run :

              tcprules /etc/tcprules.d/tcp.smtp.cdb /etc/tcprules.d/tcp.smtp.tmp < /etc/tcprules.d/tcp.smtp

            • Nginx + php 5.2.17 + php-fpm

              Download the needed packages and store them in /usr/src:

              http://us.php.net/distributions/php-5.2.17.tar.gz

              http://php-fpm.org/downloads/php-5.2.17-fpm-0.5.14.diff.gz

              http://nginx.org/download/nginx-1.1.0.tar.gz

              Then run :

              tar -xvzf php-5.2.17.tar.gz
              gzip -cd php-5.2.17-fpm-0.5.14.diff.gz | sudo patch -d php-5.2.17 -p1
              cd php-5.2.17
              ./configure --enable-fastcgi --enable-fpm --with-mcrypt --with-zlib --enable-mbstring --enable-pdo --with-curl --disable-debug --with-pic --disable-rpath --enable-inline-optimization --with-bz2 --enable-xml --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --with-xsl --enable-zip --with-pcre-regex --with-gd --without-pdo-sqlite --with-pdo-mysql --without-sqlite --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-mysql --enable-bcmath --enable-calendar --enable-exif --enable-ftp --with-gettext --with-imap --with-mysqli --with-openssl --with-kerberos --with-imap-ssl --enable-dbase --with-gmp --enable-shmop --enable-wddx

              make all install

              Note that you can add –prefix to install the binaries in a different location than the default one.

              After compilation is done :

              strip /usr/local/bin/php-cgi
              cp sapi/cgi/fpm/php-fpm /etc/init.d/
              chmod +x /etc/init.d/php-fpm

              cp /usr/src/php-5.2.17/php.ini-recommended /usr/local/lib/php.ini
              mkdir /etc/php/
              ln -s /usr/local/lib/php.ini /etc/php/php.ini
              ln -s /usr/local/etc/php-fpm.conf /etc/php/php-fpm.conf

              Make sure you edit /etc/php/php-fpm.conf and set the proper user/group (and permissions if its the case).

              Then compile Nginx:

              tar zxvf nginx-1.1.0.tar.gz
              ./configure --sbin-path=/usr/local/sbin --with-http_ssl_module --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module --with-http_stub_status_module
              make && sudo make install

              The same you can modify the –prefix here.

            • Puppet howto Ubuntu

              I’m using 2 Ubuntu Lucid 10.10 for this setup.

              On the server run:

              apt-get install puppetmaster

              At the time I’m writing this in the repos version 2.6.1 is available.

              On the client run :

              apt-get install puppet

              Note that /etc/hosts needs to contain the IP and host of both client and server, e.g:

              10.0.0.30 depot.server.org depot
              10.0.0.31 n1.server.org n1

              Create a default manifest file (/etc/puppet/manifests/site.pp) and put in it :


              class test_class {
              file { "/tmp/test":
              ensure => present,
              mode => 644,
              owner => root,
              group => root
              }
              }

              # tell puppet on which client to run the class
              node n1 {
              include test_class
              }

              Then on the server run :

              /etc/init.d/puppetmaster start

              and on client :

              puppetd –server depot.server.org –waitforcert 60 –test

              After this you should see on the server a new host when running :

              puppetca –list

              In order to sign this host on the server side you need to run :

              puppetca –sign n1.server.org

              After this on the client side /tmp/test should be created.

            • Update ubuntu

              To upgrade from Lucid 10.10 to Natty Narwhal 11.04 you only have to run :

              do-release-upgrade -d

            • Authentication Token Manipulation Error

              You may get an error, such as Authentication Token Manipulation Error, while trying to change passwords for a user. For example:

              #passwd user
              Authentication Token Manipulation Error
              #

              This error is being produced because you are using shadowed password files and the shadow doesn’t have entry for this user. i.e, passwd file has an entry for this user, but shadow file doesn’t.

              In order to resolve this, you can either add the entry manually or recreate the shadow file. You can use pwconv to recreate the shadow file. See the manpage for more details on this.

            • How to enable Status in apache

              Add this to your httpd.conf file:

              ExtendedStatus On

              <Location /server-status>
              SetHandler server-status
              Order Deny,Allow
              Deny from all
              Allow from 127.0.0.1
              </Location>

            • How to clear SWAP

              It happens for swap to be used from time to time :

              root@servcorp:~# free -m
              total used free shared buffers cached
              Mem: 4011 759 3252 0 4 53
              -/+ buffers/cache: 702 3309
              Swap: 8191 15 8176

              To clear the swap run :

              root@servcorp:~# swapoff -a && swapon -a

              And free shows :

              root@servcorp:~# free -m
              total used free shared buffers cached
              Mem: 4011 746 3265 0 4 55
              -/+ buffers/cache: 686 3325
              Swap: 8191 0 8191