Check Exit Status Code for Kerberos Ticket Validity

If you’re familiar with Kerberos, one way to check if a ticket is valid is to run klist command. ❯ klist Ticket cache: FILE:/tmp/krb5cc_1001 Default principal: username@UNIVERSITY.EDU.AU Valid starting Expires Service principal 02/07/21 11:26:50 02/07/21 21:26:50 krbtgt/UNIVERSITY.EDU.AU@UNIVERSITY.EDU.AU renew until 03/07/21 11:26:50 02/07/21 12:24:07 02/07/21 21:26:50 cifs/server1.UNIVERSITY.edu.au@UNIVERSITY.EDU.AU 02/07/21 12:24:07 02/07/21 21:26:50 cifs/server1.UNIVERSITY.edu.au@UNIVERSITY.EDU.AU ❯ date Mon 05 Jul 2021 16:01:59 AEST From the above output, the principal ticket expired since 2 Jul. So how do we find out if the Kerberos (principal) ticket expires programmatically? This is something that I was trying to find out a few years ago, but kinda have been forgotten due to low priority. ...

July 5, 2021 · 2 min · 284 words · kenno

How to Scan for IPs of Connected Devices

Suppose you just connect a Raspberry Pi to your home network using ethernet interface, and the Pi is not connected to a display device. How would you find an IP of that Raspberry Pi? Well, you’re right…whatever you say. There are a few ways to do this - looking at DHCP log, router log, …etc. But here is an even easier way to achieve this - using a command line tool called nmap. ...

July 3, 2021 · 1 min · 170 words · kenno

Service unavailable ERF64-6496 - There are migrations pending in the system.

I just updated my Foreman server and reboot, then this happened when I accessed the web console: Service unavailable ERF64-6496 [Foreman::MaintenanceException]: There are migrations pending in the system. This was the first time I’ve seen this message, and possibly because I haven’t done the update frequently enough. Fortunately, according to this blog post, it should be relatively easy to fix. [root@foreman ~]# sudo foreman-rake db:migrate API controllers newer than Apipie cache! Run apipie:cache rake task to regenerate cache. == 20210525144427 EnforceUniqueTemplates: migrating =========================== -- add_index(:templates, [:type, :name], {:unique=>true}) -> 0.0232s == 20210525144427 EnforceUniqueTemplates: migrated (0.0341s) ================== == 20210610131920 RestrictSendmailLocation: migrating ========================= == 20210610131920 RestrictSendmailLocation: migrated (0.0016s) ================ [root@foreman ~]# sudo foreman-rake db:seed API controllers newer than Apipie cache! Run apipie:cache rake task to regenerate cache. User with login admin already exists, not seeding as admin. As suggested, I also ran apipie:cache rake task to generate cache. ...

June 29, 2021 · 2 min · 342 words · kenno

LVM Device Blah Excluded by Filter

If you use LVM frequently enough, especially when re-using existing disks, you might come a cross a problem when you’re unable to create a physical volume from that disk. For example, here is what I encountered today when I tried to create a physical volume on a device called /dev/sdb. [root@db3 ~]# pvcreate /dev/sdb Device /dev/sdb excluded by a filter. I’m sure I haven’t had any filters in /etc/lvm/lvm.conf. ...

June 18, 2021 · 1 min · 169 words · kenno

Where is which in PowerShell

As the title says, an easy way to find out the path of a program/command on Windows using PowerShell can be done with Get-Command cmdlet. For example, I want to find out where I had installed nvim (Neovim) on a rarely use Windows machine. To do this, I can execute the following command: ❯ Gt-Command nvim CommandType Name Version Source ----------- ---- ------- ------ Application nvim.exe 0.0.0.0 C:\Program Files\Neovim\bin\nvim.exe With PowerShell, we can also just print a specific attribute (?) of an object. ...

June 16, 2021 · 1 min · 114 words · kenno