Posts Tagged ‘Unix’

How to use the "vi" Text Editor

I have been recently asked to deliver a lesson in the base linux course LUG Roma3, which I cooperate with, is keeping at roma3 university on voluntary base.
Here are the slide I sketched out for this occasion.



I delivered a similar lesson on last edition of this course and also wrote a paper from what I presented at that time, but I think this pack is definitely better, and less boring than a long paper, so i’m removing the old post in behalf of this new one =)


OSX – Serial Connections, These strangers

serial-connector When you have to locally manage scrap metals, it doesn’t matter if you are connecting a  microwave oven or a dozen of thousands bucks value brand new router or firewall, you will  probably do that over a serial cable. Devices likely offers a port labeled CONSOLE or  whatever you should connect the cable to. The cable type is device-dependent, but it usually  ends up with a serial connector for a serial port. If your computer doesn’t have that port, you  will need an adapter and its driver, such as to an USB port. While in linux you just modprobe the usbserial module with the appropriate vendor and product code, such as:

modprobe usbserial vendor=0xVID product=0xPID

for osx you may need the adapter drivers from the vendor ( they should be available on the vendor’s site, otherwise change vendor =P ). However, when the cable is plugged, you should find the proper entry for the (adapter) device, named tty.<whatever>

ls -1 /dev/tty.*

Now you will need to attach a terminal emulator to the found serial port to access the connected device console. On Mac Os X, as linux users will like, minicom is one of the best choices. Install it via MacPorts or Fink, then use:

minicom -s

to edit the default /opt/local/etc/minirc.dfl config file or to generate configurations that will be saved to /opt/local/etc/minirc.<your-config-name>. You should at least specify the port, baudrate, data bits, parity, stop bits and flow control. These are often indicated in the machine specs, with strings like the common 9600/8N1.


How to Generate an SSL CSR (Certificate Signing Request)

csr In order to request a signed SSL/TLS certificate you have to send the Certification Authority a  proper formed request often indicated just as “CSR” together with the other details.
If you are  using Apache you can generate your passphrase-protected RSA 1024 bit key using  openssl with:

openssl genrsa -des3 -out your.host.tld.key 1024

And then generate the CSR to send ‘em, again using openssl with:

openssl req -new -key your.host.tld.key -out your.host.tld.csr

You will be prompted for some information that must be included in the CSR itself, and in short it will be done.


Connection forwarding over ssh secure channel

So Alice returned from wonderland to her dark and unsecure world, without sendig Bob the awaited postcard, that may be a big deal for their friendship, unless Alice keep with her an ssh access to the wonderland:

ssh alice@wonderland -L [<alice-bind-addr>:]<alice-port>:<bob>:<bob-port>

forward-in-tunnel That will please Alice for a while since if her postcard is sent out from the <alice-port> it’s gonna be forwarded to wonderland over a (supposed) secure channel and then sent to Bob, but blues is aroud the corner because she’s now used to be carefree using her unsecure application protocol from wonderland and she doesn’t want to set up forwarding for each of her friends. Anyway, she may be fine using ssh as a SOCKS server reached over the secure channel with:

ssh alice@wonderland -D [<alice-bind-address>:]<alice-port>

Tree

Tree Some times you want to recursively check the contents of a given directory right in your shell  asking for its inherent tree.

But sometimes the ‘tree’ utility is not available, and you may have no rights to install it or you  just  don’t want to. Other times you may even have to deal with ports to  get  the simple tree  utility.

In these cases, find and sed are here to help:

#!/bin/bash
find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'

Netkit BGP-RIP Labs Generator

Netkit A bash script I wrote to quick build the requested Netkit labs for the final of the Computer  Networks  Infrastuctures class last july. I’m really pleased with those exams where you can  separate concepts  from specific and likely-to-change knowledge that may become useless or  forgotten soon.  Especially if smart professors allow you to automate or give less emphasis to the  second part, which  should be anyway known, but focusing on the first.

This bash script implements an input driven lab generator for Netkit, the “poor man’s system to experiment computer networking” developed and mantained at Roma Tre University.
The script prompt the user with questions and expects answers in indicated formats (pretty easy to get from examples). At the end, if feed with correct input, it should build up a working lab with network configuration based on BGP and RIP as IGP. It doesn’t configure prefix-lists or route-maps but examples are provided under comments.
This may be really useful for students at the Computer Networks Infrastructures class since most of the labs requested in finals may be generated with this script in minutes (while you are given about an hour, so you got lots of time to set up more complex stuffs and to check them).

[ Download ]

Read more


Return top

About me