How to remap your caps lock to an additional left control in Windows 10

I always remap my capslock to an additional control. Since I googled how to do this for the 1000th time today, I’d like to document this on my blog. Create a capslock-to-control.reg file somewhere on your computer Add the following content: REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00 Apply the file to the registry by double clicking and confirming the change Reboot Yer done! Hope this helps someone out. It sure will help me out in the future when touching a Windows 10 box for the first time again.

October 5, 2018 · 1 min · 87 words · Bas Langenberg

How to setup Apache to proxy and renegotiate an SSL connection

I have no clue how to call this, but it solved a problem we had at a customer earlier this year. The problem: An ancient version of Java running SOA Suite 11g not being up to spec to speak the newes SSL ciphers. To make a longer story short - We put a proxy in the middle and configured that to upgrade the connection. Here is the file: # Configures outbound connection in Apache # Location: /etc/httpd/conf.d/proxy.conf <VirtualHost *:443 > ServerAdmin bas@homecooked.nl DocumentRoot /var/www ServerName proxy.homecooked.nl ## SSL config - server side # Enable SSL / TLS SSLEngine on # PEM encoded certificate SSLCertificateFile "/etc/pki/tls/certs/server-cert.pem" # PEM encoded private key SSLCertificateKeyFile "/etc/pki/tls/private/server-key.pem" # SSL protocols enabled and disabled, only use TLSv1.2 SSLProtocol all -TLSv1.1 -TLSv1 -SSLv2 -SSLv3 # Ciphers enabled and disabled # You probably want to check if this is relevant at the time you read this! SSLCipherSuite ALL:+HIGH:!ADH:!EXP:!SSLv2:!SSLv3:!MEDIUM:!LOW:!NULL:!aNULL # Server dictates cipher preference SSLHonorCipherOrder on ## Inbound client validation # File with certificate authorities we trust SSLCACertificateFile "/etc/pki/tls/certs/rabo-certs.crt" # Require client certificate SSLVerifyClient require # Maximum depth of CA Certificate in verification chain SSLVerifyDepth 10 # Enable SSL for Proxy reguests # TODO: Investigate if this is ok! SSLProxyEngine on SSLProxyVerify none SSLProxyCheckPeerCN off SSLProxyCheckPeerName off SSLProxyCheckPeerExpire off # Points to client cert + Chain # Contains the keys the proxy uses to authenticate to the third party SSLProxyMachineCertificateFile "/etc/pki/tls/private/crmi_ktn_outbound_keys.key" ## Logging LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined ErrorLog "/var/log/httpd/proxy_error.log" CustomLog "/var/log/httpd/proxy_access.log" combined <Location /proxy_location> ProxyPass "https://some-endpoint.homecooked.nl" ProxyPassReverse "https://some-endpoint.homecooked.nl" # Only accept the environment specific certificate! # Should match incoming client common name SSLRequire (%{SSL_CLIENT_S_DN_CN} eq "client-certificate.homecooked.nl") Order allow,deny Allow from all </Location> </VirtualHost> Regarding SSLProxyMachineCertificateFile, and this took me some time to find out, you need to concatenate the key and the certificate together, without any new line. If you want to add another certificate to this file, just put in exactly one newline. ...

October 2, 2018 · 2 min · 337 words · Bas Langenberg

Lets try the official Oracle Docker container

a month ago Oracle released official Docker images for use by developers. The images are usable on any public cloud or on premise, bare metal servers. Reason enough for me to take them for a spin. Prerequisites A Docker account; A Linux VM; Note that the beauty of Docker makes it irrelevant which Linux distribution you use. It is recommended to make sure the kernel is fairly recent and a current version of Docker is installed. For this blog, I used a 8GB ram virtual private server offered by Digital Ocean as they offer a one click Ubuntu 17.04 deployment with Docker preloaded, and this option will cost me $0.25 tops. ...

May 22, 2017 · 5 min · 868 words · Bas Langenberg

Inspecting WebLogic with Puppet

Recently, I was talking with some colleagues about Puppet and the added value it brings to everything infrastructure. The reason I mostly talk about Puppet is because of the superb WebLogic and Oracle database support existing for it. There are modules for WebLogic in Chef, but these only install the software. With Puppet, you can manage much more. A lot of other blogs mentioning Puppet mostly show how you can provision the software. In almost all of my customer cases, WebLogic is already there responsible for serving applications like SOA Suite, ADF or bespoke Java applications. Surely we should be able to show the power of Puppet on existing systems as well! ...

March 8, 2017 · 13 min · 2710 words · Bas Langenberg

How to make systemd run a script on shutdown while networking is still there

This took me way to long to sort out. In Linux, sometimes you want to make sure a script is ran which interacts with a service on the network or internet. This means that when the shutdown or reboot sequence is started, it needs to run before the networking services are stopped. So just in case I forget how to do this or someone else is in dire need this functionality, please find the solution for my problem below. ...

January 2, 2017 · 1 min · 96 words · Bas Langenberg

How to build vim from scratch

I ran into a problem this weekend. I was unable to compile Vim with Python 2 support on a virtual machine I upgraded earlier from Ubuntu 14.04 to 16.04. In Ubuntu 16.04, Python 2 is not installed by default anymore, so Vim is also compiled without support for this language. Sadly, my Vim setup requires Python 2 to be available since I use 2 plugins which rely on it. YouCompleteMe and Ultisnip, yet replacable, are staples in my Vimming. Also I don’t like it to get dictated on what I can and I can’t use. ...

August 15, 2016 · 4 min · 660 words · Bas Langenberg

Managing a blog is a weird thing

So for some reason my template decided to store it’s css externally, and I didn’t notice untill a few weeks ago that the domain of my template’s creator expired and my blog had the appearance of a website in 1994. An hour of hard work fixed this. Apparantly I care enough about this place, so I should put a bit of effort in this. I think I’ll use this blog to share some content of projects I am currently working on. Expect some content about Docker, Puppet and WebLogic in the coming few months.

August 13, 2016 · 1 min · 94 words · Bas Langenberg

So what I've been up to

Long time no blogging. This is probably not the last time this will happen. I tend to be ‘busy’. Also, I only blog when I feel like and when I think I have something to talk about. I just try and post an update on what I have been working. Hell, maybe someone get’s some inspiration out of this! What have I accomplished WebLogic OCA 12c Certification in the pocket. I did not had my hopes up due to the baby and less time for studying, but I nailed it on the first time anyway! I’ve setup a GitHub Repo in which I source my dotfiles. This way I can easily keep track of changes and add stuff everywhere. I started using tmux. I like tmux, like a lot What am I working on ...

August 14, 2015 · 2 min · 267 words · Bas Langenberg

fill out on the dots

It seems like holiday is almost over. When my daughter was born on the first of June, I took three weeks of for getting to know her and assist mom with the changes. Of course I needed to get myself in a different gear to. I am a new daddy again and I could not be more excited. I forgot how much a new baby puts on you in the terms of spare time though, so I only was able to work on setting up my shell environment this morning. My wife had a rough night, so she and the baby slept latethis morning. I had to be at the car mechanic at 08:00 in the morning so I was up kinda early. Gave me a couple of hours when I got back to fiddle. :-) ...

June 17, 2015 · 3 min · 515 words · Bas Langenberg

Sending data through the air

Although I was very happy with my new arch box, something was off. I had to keep my laptop at the kitchen table when using it. Why, you might ask? Because my ethernet cable was there, and wireless was not working out of the box. I was a bit stumbled by that. Nevertheless, challenge accepted… Investigation showed why this is not working out of the box. I had to install a package from the Arch User Repository (AUR) as the firmware necessary for my Broadcom wireless adapter was a closed source blob. The driver is in the kernel, only the firmware was missing. The first step was installing the AUR helper of choice. I want to spend time figuring out which one to use, but I took Yaourt anyway, since I did not want to spend a lot of time on this trivial topic. I do not plan on using a lot of AUR packages anyway, next to Gnome skins. Installing Yaourt is very easy. I did not want to clutter my Pacman configuration file with an unsupported repo, so I manually build it. ...

June 8, 2015 · 2 min · 304 words · Bas Langenberg