Our servers were attacked recently by a constant stream of HTTP POST requests. The requests were coming in from a large range of IP addresses, at a rate of about 5-10 per second, with random POST data. However, all the…
Category: Technology
Shell escaping in Perl
Shell Escaping: There are several methods for escaping special characters in the Linux shell: Double quotes: Double-quoted strings require escaping of only a few characters. Example: >echo “Some String: &>|\”\$’\`\s\\” Some String: &>|”$’`\s\ This method is useful as long as…
GNOME session save and restore
A newer version of this script is now available. This script is used to save and restore a desktop session. Why this script? Some desktop managers do offer some session management features. Under GNOME it may be possible to run…
Prevent GNOME screensaver during full-screen Flash videos
While movie players (such as VLC) prevent the GNOME screensaver from activating during movie playback, playing Flash videos does not affect the screensaver, which means having to move the mouse occasionally, or turning off the screensaver while watching YouTube videos…
utf8::decode() may actually unset the UTF-8 flag
According to the documentation, the utf8::decode() function should generally set/turn on the UTF-8 flag for a string that contains multi-byte characters. However, apparently, there are circumstances under which utf8::decode() may not only not set the flag, but may actually unset/clear/turn…
Virtualmin + SFTP + chroot
This guide examines setting up chroot’ed SFTP-only user accounts under Virtualmin. The Rationale: SFTP is a secure alternative to FTP and FTPS that uses SSH. With this setup, no FTP server is needed, as the native sshd server is used…
Perl: Default to UTF-8 encoding
The UTF-8 (Unicode) character encoding system is a well supported alternative to the older ISO-8859-1 (Latin-1) system that can make it easier to work with special characters and multiple languages. Many developers can exercise sufficient control over their system to…
Perl access to local install of the W3C CSS validator
The W3C CSS validator is an online service for checking a stylesheet for standards compliance. This service can be accessed in Perl via the WebService::Validator::CSS::W3C module, which is handy for automating validation. However, for checking a large number of stylesheets, it is…
jQuery Scrolling Anchors
This is a comprehensive jQuery solution to the Scrolling Anchors effect. Typical solutions replace the browser’s native “jump-to” behaviour for local anchors with a smooth scrolling effect, but fail to replace all other functionality related to local anchors. This solution: Adds…
Linux memory leak detection
Tracking down the source of a memory leak in Linux is not always straightforward… Signs of a Memory Leak: Typically, the first sign of a memory leak is the oom-killer. If programs start dying inexplicably, check the system log (usually…