Posts tagged ‘linux’

rsync is a very nice tool to synchronize two directories, especially if they are on different machines. If you require confidentiality of the transferred data, rsync works great over ssh.

Besides the standard password authentication, ssh also supports public key authentication. This key-based authentication has the added bonus of having per-key options:

  • you can restrict the source IP from which this key may be used
  • you can force a command to be executed instead of allowing the connecting side to specify one

Continue reading ‘Restricted rsync over ssh’ »

It is perfectly possible to configure a linux server (or workstation if you wish) to talk IPsec. The Linux Advanced Routing & Traffic Control site has a page describing it. Since IPsec is a standard protocol, I wanted to get a tunnel up and running between a linux host and a Cisco router: with success! Here are the config files that I used in this test:

Continue reading ‘IPsec under Linux’ »

IPsec is becomming the Internet standard for securing IP packets. Instead of manually configuring all the encryption parameters, the keys are usually negatiated between the peers using an ISAKMP (Internet Security Association and Key Management Protocol)/Oakley protocol: IKE (Internet Key Exchange). This post goes into its details.

Continue reading ‘IPsec/ISAKMP negotiation opened up’ »

I got another toy to play with: A digital multimeter with RS232 interface and True RMS power measurement. Sadly, it comes with Windows-only software, which I interpreted as a challenge!

Continue reading ‘VoltCraft VC-940 protocol reverse engineered’ »

When doing some research on the different tables in iptables, I was trying to figure out in what order what tables are traversed. Obviously PREROUTING happens before POSTROUTING, but it becomes more difficult to figure out if mangle happens before are after nat.

I found a post which links to this overview:

packetflow

When I’m debugging serial communications, it’s very useful to run the standard application inside a VM. This allows me to connect the virtual RS232 port to the physical one with socat, which provides me with a detailed log of every byte.

The VMware products under Windows and linux have the option to connect their serial port to a “named pipe“, although it’s more a socket, since they allow bidirectional communication. Strangely enough, VMware Fusion, the Mac product, does not have this option.

Continue reading ‘Connecting a serial port from VMware Fusion to a unix socket’ »

At my parents place, we installed photovoltaic cells. The produced electricity is converted to AC power and is coupled with the normal grid: if we produce too little, the grid provides the remaining power; overproduction is given to the grid.

The inverter (the device that converts DC into AC) is a SolarMax C-series. It has a 2-line LCD display that gives out some basic information: current, voltage, power; produced energy today, this month, this year, … This is very useful information, but is a bit hard to access. The instruction manual reveals that there is a computer interface available to read out its data. Naturally, I wanted to explore this!

Continue reading ‘SolarMax MaxTalk protocol reverse engineered’ »

If I log in to my Ubuntu box over SSH from my MacOSX terminal, then start screen, my backspace-key doesn’t work anymore. Pressing it deletes the first character on the right of the cursor, instead of the one on the left. This only happens inside screen, not on the regular bash-shell.

I found different workarounds:

  • A forum post telling to change the terminal preferences to send backspase as CTRL-H (ASCII 0×08) instead of the normal ASCII 0x7f.
  • A blogpost telling to lie about the terminal you’re using: “TERM=screen screen”
  • Another blog telling to do remapping inside screen with bindkey-commands

None of the above worked without side-effects: CTRL-H is not understood by MacOSX terminal applications; bindkey-commands are applied even if I SSH from my linux box.

The solution I like best is to change the terminal from the standard “xterm-color” to “rxvt”. After this change, everything worked like a charm.

My previous system was a Linux-box. I made some adjustments to my keyboard in order to make it “better”. Since I use Vim a lot (apologies to Emacs-fans), the escape-key is doing overtime. On a normal keyboard however, the escape-key is located at the top left. Other keys are very near the main keyboard, but are hardly used. I almost never use the CapsLock key at all. So I switched both keys around, giving the CapsLock key the escape-function and the other way around.

Under Linux, you can remap keys using xmodmap. It seems that Windows has a similar feature, although much less documented. Here is a short summary of this article.

Continue reading ‘Remap keys under Windows’ »

Our weather station has a serial connection and comes with Windows-software to view the weather data on your PC. The app is very eye-candy, but doesn’t do anything more than displaying the data. I’m more interested in long-term trending. So I wrote my own application to talk to the weather station and store the result in an rrdtool database.

Continue reading ‘Reverse engineering the Oregon WMR928NX weather station’ »