How to Install and Uninstall libcgi-application-plugin-ratelimit-perl Package on Ubuntu 21.10 (Impish Indri)

Last updated: November 21,2024

1. Install "libcgi-application-plugin-ratelimit-perl" package

Learn how to install libcgi-application-plugin-ratelimit-perl on Ubuntu 21.10 (Impish Indri)

$ sudo apt update $ sudo apt install libcgi-application-plugin-ratelimit-perl

2. Uninstall "libcgi-application-plugin-ratelimit-perl" package

This tutorial shows how to uninstall libcgi-application-plugin-ratelimit-perl on Ubuntu 21.10 (Impish Indri):

$ sudo apt remove libcgi-application-plugin-ratelimit-perl $ sudo apt autoclean && sudo apt autoremove

3. Information about the libcgi-application-plugin-ratelimit-perl package on Ubuntu 21.10 (Impish Indri)

Package: libcgi-application-plugin-ratelimit-perl
Architecture: all
Version: 1.0-3.1
Priority: optional
Section: universe/perl
Origin: Ubuntu
Maintainer: Ubuntu Developers
Original-Maintainer: Debian Perl Group
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 36
Depends: perl:any, libcgi-application-perl, libclass-accessor-perl
Recommends: libcgi-application-plugin-dbh-perl
Breaks: libcgi-application-extra-plugin-bundle-perl (<< 0.5)
Replaces: libcgi-application-extra-plugin-bundle-perl (<< 0.5)
Enhances: libcgi-application-perl
Filename: pool/universe/libc/libcgi-application-plugin-ratelimit-perl/libcgi-application-plugin-ratelimit-perl_1.0-3.1_all.deb
Size: 12944
MD5sum: 4caa646271443c14dba92b47fec4cf8d
SHA1: b1bf3518d19c90d8b67f52be45e53c9ab6f21427
SHA256: 4fc11ec0e92e6d064ac690503895b8d1c529054ba641666e659b0ab62d1bdaad
SHA512: aa63d49e78543ca5652ed2a80b2a040cc021c963000591b6756fc2f77308ffb48e1e241e4f107ea1da94220ab4c0176cb6d2339b849ab993b99466a4f94d4851
Homepage: https://metacpan.org/release/CGI-Application-Plugin-RateLimit
Description-en: Perl module for limiting the runmode call rate per user
CGI::Application::Plugin::RateLimit provides protection against a user
calling a runmode too frequently. A typical use-case might be a contact form
that sends email. You'd like to allow your users to send you messages, but
thousands of messages from a single user would be a problem.
.
This module works by maintaining a database of hits to protected runmodes. It
then checks this database to determine if a new hit should be allowed based
on past activity by the user. The user's identity is, by default, tied to
login (via REMOTE_USER) or IP address (via REMOTE_IP) if login info is not
available. You may provide your own identity function via the
identity_callback() method.
.
To use this module you must create a table in your database with the
following schema (using MySQL-syntax, although other DBs may work as well
with minor alterations):
.
CREATE TABLE rate_limit_hits (
user_id VARCHAR(255) NOT NULL,
action VARCHAR(255) NOT NULL,
timestamp UNSIGNED INTEGER NOT NULL,
INDEX (user_id, action, timestamp)
);
.
You may feel free to vary the storage-type and size of user_id and action to
match your usage. For example, if your identity_callback() always returns an
integer you could make user_id an integer column.
.
This table should be periodically cleared of old data. Anything older than the
maximum timeframe being used can be safely deleted.
.
IMPORTANT NOTE: The protection offered by this module is not perfect.
Identifying a user on the internet is very hard and a sophisticated attacker
can work around these checks, by switching IPs or automating login creation.
Description-md5: 54f8605bd6e7975144c5ca1b8abc8626