miércoles, 29 de junio de 2011

Installing RMagick on Mac OS X Snow Leopard

This used to be quite a complicated task to install ImageMagick and RMagick from source, but these days (thanks to some great work by others) it’s easy…

First install ImageMagick using this install script hosted on github (http://github.com/masterkain/ImageMagick-sl):


cd ~/src
git clone git://github.com/masterkain/ImageMagick-sl.git
cd ImageMagick-sl
sh install_im.sh


Now simply sit back and wait. (Oh, you’ll need to enter your password at some points as the libraries are installed into /usr/local).

Then, once that’s done, RMagick is installed by:

gem install rmagick

lunes, 14 de marzo de 2011

Deploy Applications with Mongrel Cluster for Ruby on Rails

INSTALL MONGREL CLUSTER

sudo apt-get install ruby1.8-dev
sudo gem install -y mongrel mongrel_cluster

Installing RMagick on Ubuntu 9.04 (Jaunty)


sudo apt-get install libmagickwand-dev imagemagick
sudo gem install rmagick

Ruby :: The bundled mysql.rb driver has been removed from Rails 2.2


sudo apt-get install libmysqlclient-dev
sudo gem install mysql

sábado, 20 de febrero de 2010

Easy Groups Authentication in Ruby on Rails using before_filter

first It's necessary to create two new tables: a table called groups with the fields (id, groupname, description) and other table called systables, with the fields (id, group_id, controller). Then create a file login_system.rb in the Lib folder under the main project. This file it's the library for send a filter to "before_filter" method in a rails controller. the modified code it's above:

require_dependency "user"
module LoginSystem
protected

def autorizado?(user, controller)
@usuario= User.find(user)
@grupo = @usuario.grupo.id.to_i
@systable = Systable.find(:all, :conditions => ["grupo_id = ? and controller = ?", @grupo, controller])
if @systable.empty?
return false
else
return true
end
end

#------ Group permissions ------------
def check_permissions
if not protect?(action_name)
return true
end
if @session['user'] and autorizado?(@session['user'], controller_name)
return true
end
store_location
access_denied
return false
end

# overwrite if you want to have special behavior in case the user is not authorized
# to access the current operation.
# the default action is to redirect to the login screen
# example use :
# a popup window might just close itself for instance

def access_denied
redirect_to :controller=>"/account", :action =>"login"
end

# store current uri in the session.
# we can return to this location by calling return_location
def store_location
@session['return-to'] = @request.request_uri
end

# move to the last store_location call or to the passed default one
def redirect_back_or_default(default)
if @session['return-to'].nil?
redirect_to default
else
redirect_to_url @session['return-to']
@session['return-to'] = nil
end
end



finally, in a controller write a line like this:


class CatalogosController < ApplicationController
before_filter :check_permissions
end

jueves, 18 de febrero de 2010

Disable USB devices on GRUB in Ubuntu 9.10 Karmic Koala

For security it's important to disable all usb devices for not get out information, then I write a small bash script that do it. I hope that work succesfully.



#!/bin/bash
cp /etc/default/grub /tmp && cd /tmp
sed 's/splash/splash nousb/g' grub > grub.2 && sudo mv grub.2 /etc/default/grub
echo "Disable USB on GRUB..."

jueves, 3 de diciembre de 2009

Generate new certificate for jabber server on OpenBSD

Modify the configuration file

sudo vi /etc/ejabberd/ejabberd.cfg

Modify the line for set certificate value before load the configuration file


[{5222, ejabberd_c2s, [{access, c2s},
{max_stanza_size, 65536},
starttls_required, {certfile, "/etc/ejabberd/server.pem"},
{shaper, c2s_shaper}]},


In the command line generate the key

openssl req -new -x509 -newkey rsa:1024 -days 3650 \
-keyout privkey.pem -out server.pem


openssl rsa -in privkey.pem -out privkey.pem

cat privkey.pem >> server.pem

rm privkey.pem


Finally restart the service


sudo ejabberctl restart