Kategoriearchive: bash

update ownership for files

To transfer the ownership of files in a directory recursively from a user / group to another, you can use this simple one-liner: find . -user old_user -group old_group -print0 | xargs -0 chown -v -h new_user:new_group I have found it here. There also the individual parameters are explained in […]

temporarily suspend mail delivery to a specific domain

With postfix and cron delivery of new mail messages may be certain times quite easily prevented. It can for example be prevent from that emails are delivered via push to inopportune times to a user. Add a hash-table in /etc/postfix/main.cf to smtpd_recipient_restrictions: check_recipient_access hash:/etc/postfix/hold In the file /etc/postfix/hold all domains […]

[Update] Add blocklists from blocklist.de to iptables 25

Martin Kos pointed out to me that my Add blocklists from blocklist.de to iptables does not work when DNAT is used because the INPUT rules do not access or too late. It should be better to drop the packets not only in INPUT, but already in the mangle PREROUTING table. […]

bash – remove last char(s) from string

The last character of a string is very easy to remove in bash. out=”remove last char!” echo “${out%?}” returns remove last char To remove the last two characters: out=”remove last char!” echo “${out%%??}” returns remove last cha or use out=”remove last char!” echo ${out:0:$((${#out})) – 2} to also get remove […]

Add blocklists from blocklist.de to iptables 2

UPDATE: http://blog.schaal-24.de/?p=2683&lang=en I use some blocklists from blocklist.de, to minimize potential attacks. Every list contains one IP per line, so the lists can easily added to the firewall using xt_recent. I use a simple Bash-Script which runs daily via cron to compare my firewall with the lists. Some definitions for […]

Bash – using variables outside a while loop

The bash runs every loop (while or for) in a subshell. The values for a variable defined inside such a loop / subshell are not available outside. #!/bin/bash t=0 while read line; do   t=$(( t + 1 )) done < /etc/passwd echo $t Returns 0 for $t but inside the […]