Shami's Blog

Sysadmin, Because Even Developers Need Heroes

Randomize Source IP Addresses With Postfix

2016-04-27 by Mohammad H. Al-Shami

Sometimes when you have a high number of outgoing messages services like Yahoo! and Gmail might block you. To prevent that you need to distribute your outgoing emails through a set of IPs. I used HAProxy for that along with a number of FreeBSD Jails. That solution is a bit tedious, even though after I started using Salt things became a bit easier it was still too complicated for my taste.

Read More...

Corrupted image_captcha In Drupal

2016-04-23 by Mohammad H. Al-Shami

Read More...

Moving A Magento Instance To A New Domain

2016-04-21 by Mohammad H. Al-Shami

Quick one here, when you move a Magento instance to a new domain or URL it will keep redirecting to the old address. There is a quick fix

Read More...

Bootstrapping PKGNG From Your Own Repository

2015-03-13 by Mohammad H. Al-Shami

I’ve been building my own PKGNG repositories with Poudriere lately. Some of the benefits include:

Read More...

HOWTO: Small Mail Server With Salt, Dovecot, And OpenSMTPD

2015-01-26 by Mohammad H. Al-Shami

Update: Sadly OpenSMTPD version 5.4.4 on FreeBSD broke the passwd table, I’m checking the Gills to get this fixed.

Update2: I am no longer using OpenSMTPD. I’ve switched to dma for servers that only need to send emails and went back to Postfix for servers that require an actual MTA. Not that OpenSMTPD is bad, I just prefer Postfix. I might reconcider in the future when OpenSMTPD is more mature.

Read More...

Perl One-liner To Generate htpasswd Passwords

2014-12-29 by Mohammad H. Al-Shami

Update: An easier way to do it that doesn’t require you to install anything special (Works with nginx)

openssl passwd -apr1

Instead of having to install Apache or use an untrusted website just to generate the required password, you can use the following perl one liner

perl -e 'chomp($password=<>);chomp($salt=`tr -dc A-Za-z0-9 </dev/urandom | head -c 1024`); print crypt($password,$salt)."\n";'

Using Your Own Router With The New @orangejo Modem

2014-12-03 by Mohammad H. Al-Shami

Update: I have since moved to Damamax and am MUCH happier with their service. Their network is more reliable, faster, and their support staff is wonderful. It’s a bit more expensive but considering the advantages I highly recommend switching if they cover your area.

Read More...

Recursively Upgrade Package Dependencies With pkgng

2014-11-11 by Mohammad H. Al-Shami

Update: I now just use pkg upgrade since I have better control over my package repo and it is a much better way to upgrade.

Read More...

Simulating Cron Runs On The Command Line

2014-10-15 by Mohammad H. Al-Shami

Does this sound familiar?

You write a new script, start it from the command line, everything works properly, you add that script to your crontab then go home, the next day, nothing. So you end up setting up a schedule to run this script the next minute, the script fails, you change something, update the schedule, rinse and repeat.

Read More...