It is actually quite weird. I already set that the cidr is not null, but still, i can happily insert null value inside that.
Hence, it come the problem. I can't select if one of the column's value is null. COALESCE didn't help (on its own). Now we have to modify our script a little bit.
One of the solution is setting default value for cidr-typed column. But what value? 0.0.0.0/0 obviously didn't help. Because null is null. 0.0.0.0/0 is everyone.
Now here what i do.
Let say, we have
Hence, the (unoptimized, but working) query is like this:
*change 192.168.43.199 to Address Client and 0.0.0.0 to X Forwarded For Address, both nullable
tadah
Tuesday, January 10, 2017
Monday, January 9, 2017
psql: Insert, if already exists, select
WITH new_browser AS (
INSERT INTO audit_log.browsers ( agent_string ) 
 SELECT 'test8' WHERE NOT EXISTS (SELECT * FROM audit_log.browsers WHERE agent_string = 'test8')
    RETURNING browser_id
)
SELECT * FROM new_browser
UNION
SELECT browser_id FROM audit_log.browsers WHERE agent_string = 'test8'
    
The only problem is that i have to write the insert item/select condition 3 times, for one particular column...
Friday, January 6, 2017
Script to rename hostname and append to /etc/hosts
#!/bin/bash
# save this as anyfile.sh at webserver
# call curl -s http://somewhere.over.the.rainbow/anyfile.sh | sudo bash -s {hostname}
if [ "$EUID" -ne 0 ]
  then echo "Please run as root"
  exit
fi
if [ $# -eq 0 ]
  then  echo "Please supply new hostname for this machine."
fi
echo "Hostname entered: " $1
hostnamectl set-hostname $1
echo 127.0.0.1 $1 >> /etc/hosts
cat >> /etc/hosts << EOF
# list of hosts
EOF
systemctl restart systemd-hostnamed
Thursday, January 5, 2017
CentOS/Fedora/Ubuntu (FirewallD/ufw) allow specific port from specific IP
I wanted to allow only certain port incoming from certain IPRich rules for FirewallD (CentOS 7+ or Fedora)
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.X.X.X/32 port port=6556 protocol=tcp accept'or for full,
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.X.X.X/32 port port=6556 protocol=tcp accept' && sudo firewall-cmd --reloadFor Ubuntu with UFW;
sudo ufw allow from 10.X.X.X/32 to any port 6556
Subscribe to:
Comments (Atom)