diff --git a/boxes/netbox/ssh.nix b/boxes/netbox/ssh.nix index e4a7b1d..03e9c33 100644 --- a/boxes/netbox/ssh.nix +++ b/boxes/netbox/ssh.nix @@ -16,4 +16,35 @@ machines.aristotle.pubkey machines.phone.pubkey ]; + + environment.etc."ssh/sshrc".text = '' + login_ip="''${SSH_CLIENT%% *}" + is_in_ignored=$(grep "$login_ip" /etc/ssh/ignored_ips -c) + if [ "$is_in_ignored" -gt 0 ]; then + echo "Your login has been ignored based on your IP address." + exit + fi + time=$(date "+%T%:z") + geodata=$( + curl -s ipinfo.io/$login_ip | + sed '1d;$d;/readme/d;s/^ //g' + ) + ${pkgs.mailutils}/bin/mail \ + ryan@beepboop.systems -r "ssh" \ + -s "ssh login from $login_ip at $time" \ + <