Instalar Snort en una Raspberry Pi (I)

En este post voy a mostrar la instalación del IDS Snort en una Raspberry Pi. Snort es un IDS de red (NIDS) que captura los paquetes que circulan en la red y sobre la base de una heurística programada por reglas, para cada tipo de intrusión, es capaz de disparar alertas.

En concreto, para este ejercicio, voy a emplear una Raspberry Pi 2B. Voy a partir de una instalación fresca de Raspbian Stretch Lite. El proceso de instalación del Sistema Operativo es exactamente el mismo que el descrito aquí. Por hacer un resumen rápido del proceso:

  1. Descargo la imagen de Raspbian al PC de sobremesa.
  2. Grabo la imagen descargada, empleando el programa Win32DiskImager.
  3. Creo, en la partición de boot, un fichero vacío con nombre ssh, para habilitar el servidor SSH en el arranque.
  4. Conecto la Raspberry Pi a la red a través del switch que tengo.
  5. Arranco la Raspberry y averiguo (conectándome) al router de banda ancha, la dirección IP que le asigna por DHCP.
  6. Me conecto por SSH empleando Putty a la Raspberry para continuar con la configuración inicial.

Una vez conectado por SSH realizo los siguientes pasos de configuración inicial:

1. Cambio la password por defecto:

pi@raspberrypi:~ $ passwd
Changing password for pi.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

2. Actualizo los paquetes instalados:

pi@raspberrypi:~ $ sudo apt update
pi@raspberrypi:~ $ sudo apt upgrade

3. Mediante el programa raspi-config configuro el teclado.

4. Adapto el fichero dhcpcd.conf para realizar la configuración de la dirección IP estática de la Raspberry.

# dhcpcd.conf

# Static IP configuration

interface eth0
        ipv4only
        static ip_address=192.168.1.28/24
        static routers=192.168.1.1
        static domain_name_servers=10.1.4.2 208.67.222.222 208.67.220.220

5. Creo el fichero dhcpcd.exit-hook para configurar las rutas a las redes del entorno de lab:

pi@raspberrypi:/etc $ cat dhcpcd.exit-hook
ip route add 10.1.2.0/24 via 192.168.1.4
ip route add 10.1.3.0/24 via 192.168.1.4
ip route add 10.1.4.0/24 via 192.168.1.4
pi@raspberrypi:/etc $

6. Rearranco y verifico que la dirección IP correcta y las rutas están establecidas.

pi@raspberrypi:~ $ ifconfig -a
eth0: flags=4163  mtu 1500
        inet 192.168.1.28  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::ba27:ebff:fec2:4299  prefixlen 64  scopeid 0x20
        ether b8:27:eb:c2:42:99  txqueuelen 1000  (Ethernet)
        RX packets 179  bytes 13849 (13.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 129  bytes 18433 (18.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

pi@raspberrypi:~ $ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    202    0        0 eth0
10.1.2.0        192.168.1.4     255.255.255.0   UG    0      0        0 eth0
10.1.3.0        192.168.1.4     255.255.255.0   UG    0      0        0 eth0
10.1.4.0        192.168.1.4     255.255.255.0   UG    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     202    0        0 eth0

7. Creo, en el servidor SVN el repositorio para los ficheros de configuración de la Raspi.

8. Instalo subversion para mantener la configuración de la máquina alojada en el repositorio SVN del entorno lab.

pi@raspberrypi:~ $ sudo apt install subversion

9. Creo, desde la Raspi, un directorio en el repositorio SVN para mantener los ficheros de configuración existentes bajo /etc. La operación va a avisar que los certificados que uso no son de una autoridad reconocida y me va a solicitar la autenticación

pi@raspberrypi:~ $ sudo svn mkdir https://svnrepo.tcantos.com/svn/rpisnort/etc -m ""

10. Hago un checkout inicial en el directorio /etc y añado al repositorio SVN los ficheros de configuración:

pi@raspberrypi:/ $ cd /etc
pi@raspberrypi:/etc $ sudo svn add hosts issue dhcpcd.conf dhcpcd.exit-hook hostname
A         issue
A         dhcpcd.conf
A         dhcpcd.exit-hook
A         hostname
A         hosts
pi@raspberrypi:/etc $ sudo svn commit -m ""
Adding         dhcpcd.conf
Adding         dhcpcd.exit-hook
Adding         hostname
Adding         hosts
Adding         issue
Transmitting file data .....done
Committing transaction...
Committed revision 2.

11. En el PC de sobremesa, creo el directorio para la copia local y hago un checkout. A partir de este momento puedo trabajar con los ficheros de configuración en el PC.

12. Añado las entradas correspondientes al nuevo equipo en la base de datos de mi servidor DNS y rearranco el servidor.

13. Por último, configuro que la Raspi sincronice tiempos con el servidor de tiempos del lab.

Con esto queda configurada la Raspberry Pi para los pasos siguientes.

 

Anuncios

Configurando simh e instalando OpenVMS

El siguiente paso en la tarea de montar mi OpenVMS es configurar el simulador simh para poder ejecutarlo. Aquí empiezo a entrar en un terreno desconocido (al menos para mí) así que espero ir poniendo toda la atención. Por el camino, he ido encontrando algunos sitios en internet que dan una cierta orientación a mi tarea.

En primer lugar, voy a crear un directorio vax bajo /usr/local y bajo este directorio, dos subdirectorios uno llamado bin donde colocaré el binario del simulador y las ROMs de VAX y otro data donde irán los datos del simulador:

Imagen25

Ahora copio los ficheros a la localización recién creada:

Imagen26

Creo, bajo /usr/local/bin/vax un directorio images y copio la imagen iso del SO (usando WinSCP). Aprovecho y copio, al mismo directorio el fichero con la licencia:

Imagen28

Creo el fichero de inicialización (openvms.ini) del simulador y lo coloco en el directorio data.

Imagen30

Ya tenemos todo preparado para el primer arranque. Hay que ejecutar el simulador bajo un usuario privilegiado:

Imagen32

Se ha tomado su tiempo, sobre todo creando los discos virtuales pero parece que ya está arrancado. Hago un comando show device para ver que dispositivos hay y procedo al primer arranque de VAX que debe ser desde el CDROM virtual:

Imagen33

El CDROM virtual es la unidad DUA3. A por el boot:

Imagen34

VAX ha arrancado en modo monousuario y vamos a instalar el sistema operativo desde el backup existente en el CDROM:

Imagen36

Una vez completado esto salimos de la simulación (Ctrl-E). A continuación vamos a proceder a arrancar desde el disco duro y a realizar la instalación de OpenVMS. He capturado en un fichero las entradas y salidas durante el proceso:

1. Arranque de la boot ROM:

sim> boot cpu

KA655-B V5.3, VMB 2.7
Performing normal system tests.
40..39..38..37..36..35..34..33..32..31..30..29..28..27..26..25..
24..23..22..21..20..19..18..17..16..15..14..13..12..11..10..09..
08..07..06..05..04..03..
Tests completed.

2. Configurar el dispositivo desde el que se va a arrancar (DUA0) y arrancar en sistema (BOOT):

>>>set boot dua0
>>>boot
(BOOT/R5:0 DUA0



  2..
-DUA0
  1..0..


%SYSBOOT-I-SYSBOOT Mapping the SYSDUMP.DMP on the System Disk
%SYSBOOT-W-SYSBOOT Can not map SYSDUMP.DMP on the System Disk
%SYSBOOT-I-SYSBOOT Mapping PAGEFILE.SYS on the System Disk
%SYSBOOT-I-SYSBOOT SAVEDUMP parameter not set to protect the PAGEFILE.SYS
   OpenVMS (TM) VAX Version BI73-7G7 Major version id = 1 Minor version id = 0
%WBM-I-WBMINFO Write Bitmap has successfully completed initialization.

           OpenVMS VAX V7.3 Installation Procedure

                         Model: VAXserver 3900 Series
                 System device: RA92 - _DUA0:
                   Free Blocks: 2854566
                      CPU type: 10-01

3. Configurar la fecha y hora. Se va a quejar que no está licenciado.

* Please enter the date and time (DD-MMM-YYYY HH:MM) 15-DEC-2018 20:04
*********************************************************
%SYSTEM-W-TZGMT, your local timezone has defaulted to GMT
%SYSTEM-I-SETTZ, to set your local timezone use:

     $ @SYS$MANAGER:UTC$TIME_SETUP.COM

*********************************************************
On MIN or UPGRADE system startup - CLUE is not run.
%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:07.27  %%%%%%%%%%%
Operator _OPA0: has been enabled, username SYSTEM

%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:07.28  %%%%%%%%%%%
Operator status for operator _OPA0:
CENTRAL, PRINTER, TAPES, DISKS, DEVICES, CARDS, NETWORK, CLUSTER, SECURITY,
LICENSE, OPER1, OPER2, OPER3, OPER4, OPER5, OPER6, OPER7, OPER8, OPER9, OPER10,
OPER11, OPER12

%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:07.37  %%%%%%%%%%%
Logfile has been initialized by operator _OPA0:
Logfile is SYS$SYSROOT:[SYSMGR]OPERATOR.LOG;1

%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:07.38  %%%%%%%%%%%
Operator status for operator SYS$SYSROOT:[SYSMGR]OPERATOR.LOG;1
CENTRAL, PRINTER, TAPES, DISKS, DEVICES, CARDS, NETWORK, CLUSTER, SECURITY,
LICENSE, OPER1, OPER2, OPER3, OPER4, OPER5, OPER6, OPER7, OPER8, OPER9, OPER10,
OPER11, OPER12

%SYSTEM-I-BOOTUPGRADE, security auditing disabled
%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:09.36  %%%%%%%%%%%
Message from user JOB_CONTROL
%JBC-E-OPENERR, error opening SYS$COMMON:[SYSEXE]QMAN$MASTER.DAT;

%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:09.37  %%%%%%%%%%%
Message from user JOB_CONTROL
-RMS-E-FNF, file not found

%LICENSE-F-EMTLDB, license database contains no license records
%SYSTEM-I-BOOTUPGRADE, security server not started
%%%%%%%%%%%  OPCOM  15-DEC-2018 20:04:11.70  %%%%%%%%%%%
Message from user SYSTEM
%LICENSE-E-NOAUTH, DEC VAX-VMS use is not authorized on this node
-LICENSE-F-NOLICENSE, no license is active for this software product
-LICENSE-I-SYSMGR, please see your system manager


%LICENSE-E-NOAUTH, DEC VAX-VMS use is not authorized on this node
-LICENSE-F-NOLICENSE, no license is active for this software product
-LICENSE-I-SYSMGR, please see your system manager

4. Como vemos, se queja de que el sistema no está licenciado, eso lo dejaremos para más adelante. A continuación nos va a pedir una serie de parámetros y el volumen desde el que se va a instalar OpenVMS:

Startup processing continuing...

%SET-I-INTSET, login interactive limit = 1, current interactive value = 0
%SET-I-INTSET, login interactive limit = 0, current interactive value = 0

    If this system disk is to be used in an OpenVMS Cluster with multiple
    system disks, then each system disk must have a unique volume label.
    Any nodes having system disks with duplicate volume labels will fail
    to boot into the cluster.

    You can indicate a volume label of 1 to 12 characters in length.  If you
    want to use the default name of OVMSVAXSYS, press RETURN in response
    to the next question.

* Enter the volume label for this system disk [OVMSVAXSYS]:

* Enter name of drive holding the OpenVMS distribution media: DUA3
* Is the OpenVMS media ready to be mounted? [N] y
%MOUNT-I-MOUNTED, VAXVMS073 mounted on _DUA3:

5. Nos va a pedir, a continuación, el software que deseamos instalar. Decido no instalar el software de DECNet, ni el soporte de clustering, ni la parte gráfica:

    Select optional software you want to install.  You can install one
    or more of the following OpenVMS or DECwindows components:

    o OpenVMS library                              -  52200 blocks
    o OpenVMS optional                             -  19000 blocks
    o OpenVMS Help Message                         -  10400 blocks
    o OpenVMS Management Station                   -  20000 blocks
    o DECwindows base support                      -   4400 blocks
    o DECwindows workstation support               -  23800 blocks
          -  75 dots per inch video fonts          -    (included)
          - 100 dots per inch video fonts          -   6200 blocks
    o DECnet-Plus networking                       -  80000 blocks
    o DECnet Phase IV networking                   -    800 blocks

    Space remaining on system disk:  2854377 blocks

* Do you want to install the OpenVMS library files? (Y/N) y

    Space remaining on system disk:  2802177 blocks

* Do you want to install the OpenVMS optional files? (Y/N) y

    Space remaining on system disk:  2783177 blocks


    The Help Message utility (MSGHLP) provides online explanations
    and user actions for OpenVMS messages in place of the hardcopy
    OpenVMS System Messages and Recovery Procedures Reference Manual,
    which is now separately orderable.

    The MSGHLP database file, MSGHLP$LIBRARY.MSGHLP$DATA,
    consumes approximately 10400 blocks and will be
    placed by default on your system disk in SYS$COMMON:[SYSHLP]
    unless you specify an alternate device when prompted.

* Do you want to install the MSGHLP database? (Y/N) y

    You can install this database on your system disk in SYS$COMMON:[SYSHLP]
    or on an alternate device.  If you specify an alternate device, but no
    directory, MSGHLP$LIBRARY.MSGHLP$DATA is placed in [HELP_MESSAGE].  When
    prompted, take the default of the system disk or specify an alternate
    device using this format:

                           device:[directory]

* Where do you want to install the MSGHLP database?
    [SYS$COMMON:[SYSHLP]]

    Space remaining on system disk:  2772777 blocks


    The OpenVMS Management Station is a client-server application that
    provides OpenVMS system management capabilities through a client
    application on a personal computer (PC) running Microsoft Windows.

    The server application runs on OpenVMS systems and is automatically
    installed as part of the OpenVMS operating system.

    This option provides the files used to install the PC client software.
    If you want to use the OpenVMS Management Station, you must install
    these optional files on at least one OpenVMS system and then use one or
    both of them to install the PC client on one or more PCs.  There are two
    files:  TNT030_I.EXE for Intel systems (Windows 95 and Windows NT), and
    TNT030_A.EXE for Alpha Windows NT systems.

    The OpenVMS Management Station optional files consume approximately 20000
    blocks and will be placed on your system disk in SYS$COMMON:[TNT.CLIENT].

* Do you want to install the optional OpenVMS Management Station files? (Y/N) y

    Space remaining on system disk:  2752777 blocks


    You can select DECwindows now, or you can use the DECW$TAILOR utility
    to provide or remove DECwindows support after the installation.

    Some media, TK50s in particular, can be very slow when tailoring on files.
    You might want to select DECwindows now and tailor off unwanted files later.

    NOTE: This kit does NOT contain full DECwindows.
          To obtain full DECwindows, you must also install the separate
          layered product, DECwindows Motif for OpenVMS VAX.
          V1.2-3 is the minimum version of DECwindows Motif for OpenVMS VAX
          that can be used with OpenVMS VAX V7.3.

    The DECwindows components provided in this kit requires approximately
    34400 blocks, broken down as follows:

        o DECwindows base support                    -   4400 blocks
        o DECwindows workstation support             -  23800 blocks
          -  75 dots per inch video fonts            -    (included)
          - 100 dots per inch video fonts (optional) -   6200 blocks

    You must select the DECwindows base support option if
        - you plan to run DECwindows software, or
        - you are installing this kit on
            * a workstation or
            * an OpenVMS Cluster that contains workstations, or
        - you want to provide font files for Xterminals.

    If you are installing this kit on a system that includes Xterminals
    and you do NOT select DECwindows base support, then you will have to use
    the DECW$TAILOR utility to provide font files.

* Do you want the DECwindows base support? (Y/N) n

    Beginning with OpenVMS V7.1, the DECnet-Plus kit is provided with
    the OpenVMS operating system kit.  Compaq strongly recommends that
    DECnet users install DECnet-Plus.  DECnet Phase IV applications are
    supported by DECnet-Plus.

    DECnet Phase IV is also provided as an option.  Support for DECnet
    Phase IV is available through a Prior Version Support Contract.

    If you install DECnet-Plus and TCP/IP you can run DECnet
    applications over a TCP/IP network.  Please see the OpenVMS
    Management Guide for information on running DECnet over TCI/IP.

    If you plan to install DECnet Phase IV do NOT select DECnet-Plus.

* Do you want to install DECnet-Plus? (Y/N) n

* Do you want to install DECnet Phase IV? (Y/N) n

    The following options will be provided:

        OpenVMS library
        OpenVMS optional
        OpenVMS Help Message
        OpenVMS Management Station Software -- PC files

    Space remaining on system disk:  2752777 blocks

* Is this correct? (Y/N) y

    Restoring OpenVMS library save set ...
%BACKUP-I-STARTVERIFY, starting verification pass

    Restoring OpenVMS optional save set ...
%BACKUP-I-STARTVERIFY, starting verification pass

    Restoring OpenVMS Help Message save set ...
%BACKUP-I-STARTVERIFY, starting verification pass

    Restoring OpenVMS Management Station Software -- PC files
%BACKUP-I-STARTVERIFY, starting verification pass

    Now registering the OpenVMS operating system in the
    POLYCENTER Software Installation product database


The following product will be registered:
    DEC VAXVMS VMS V7.3                    DISK$VAXVMSV73:[VMS$COMMON.]

The following product has been registered:
    DEC VAXVMS VMS V7.3                    Transition (registration)

    You can now remove the distribution kit from DUA3:.



    In an OpenVMS Cluster, you can run multiple systems sharing all files
    except PAGEFILE.SYS, SWAPFILE.SYS, SYSDUMP.DMP, and VAXVMSSYS.PAR.

    Cluster configuration cannot be done at this time because no network
    is present.  In order to configure a cluster you must FIRST do one
    or both of the following:

        o Install DECnet-Plus (or DECnet Phase IV), or
        o Execute SYS$STARTUP:LAN$STARTUP.COM by removing the
          comment delimiter ("!") from the line

                $! @SYS$STARTUP:LAN$STARTUP

          in SYS$MANAGER:SYSTARTUP_VMS.COM.

    Then configure the cluster by executing the following command:

                @ @SYS$MANAGER:CLUSTER_CONFIG

    See the OpenVMS System Manager's Manual: Essentials for more information.

6. A continuación, establecemos las contraseñas de cuentas importantes, nos proporciona una serie de consejos y acciones a realizar:

    Now we will ask you for new passwords for the following accounts:

        SYSTEM, SYSTEST, FIELD

    Passwords must be a minimum of 8 characters in length.  All passwords
    will be checked and verified.  Any passwords that can be guessed easily
    will not be accepted.


* Enter password for SYSTEM:
* Re-enter for verification:
%UAF-I-MDFYMSG, user record(s) updated
%VMS-I-PWD_OKAY, account password for SYSTEM verified

* Enter password for SYSTEST:
* Re-enter for verification:
%UAF-I-MDFYMSG, user record(s) updated
%VMS-I-PWD_OKAY, account password for SYSTEST verified


    The SYSTEST_CLIG account will be disabled.  You must re-enable
    it before running UETP but do not assign a password.

%UAF-I-PWDLESSMIN, new password is shorter than minimum password length
%UAF-I-MDFYMSG, user record(s) updated

* Enter password for FIELD:
* Re-enter for verification:
%UAF-I-MDFYMSG, user record(s) updated
%VMS-I-PWD_OKAY, account password for FIELD verified

    Creating RIGHTS database file, SYS$SYSTEM:RIGHTSLIST.DAT
    Ignore any "-SYSTEM-F-DUPIDENT, duplicate identifier" errors.

%UAF-I-RDBCREMSG, rights database created
%UAF-I-RDBADDMSGU, identifier DEFAULT value [000200,000200] added to rights database
%UAF-I-RDBADDMSGU, identifier FIELD value [000001,000010] added to rights database
%UAF-I-RDBADDMSGU, identifier SYSTEM value [000001,000004] added to rights database
%UAF-I-RDBADDMSGU, identifier SYSTEST value [000001,000007] added to rights database
%UAF-E-RDBADDERRU, unable to add SYSTEST_CLIG value [000001,000007] to rights database
-SYSTEM-F-DUPIDENT, duplicate identifier
%UAF-I-NOMODS, no modifications made to system authorization file
%UAF-I-RDBDONEMSG, rights database modified

    Creating MODPARAMS.DAT database file, SYS$SYSTEM:MODPARAMS.DAT

* Please enter the SCSNODE name: TCVAX

* Please enter the SCSSYSTEMID:  1025

    After the installation finishes, you might want to do one or more of the
    following tasks:

    o DECOMPRESS THE SYSTEM LIBRARIES - To save space, many of the system
      libraries are shipped in a data-compressed format.  If you have
      enough disk space, you can decompress the libraries for faster access.
      To data expand the libraries, type:

        $ @SYS$UPDATE:LIBDECOMP.COM

      If you do not decompress these libraries, you will experience
      slower response to the HELP and LINK commands.

    o BUILD A STANDALONE BACKUP KIT - You can build a standalone backup kit
      using the procedure described in the "Backup Procedures" chapter of
      tye upgrade and installation supplement provided for your VAX computer.

    o TAILOR THE SYSTEM DISK - You might want to review the files provided or
      not provided during this installation.  If you find there are files
      you want to remove from the system disk (TAILOR OFF) or files you want
      to add (TAILOR ON), use the following utilities to perform the
      desired tailoring.

          OpenVMS tailoring:          $ RUN SYS$UPDATE:VMSTAILOR

          DECwindows tailoring:       $ RUN SYS$UPDATE:DECW$TAILOR

      NOTE:  The tailor procedure cannot be used to TAILOR ON or TAILOR OFF
             files located on an alternate disk.

7. A continuación, nos pregunta si queremos registrar el producto y le contestamos que no, en el siguiente boot cargaremos el PAK con las licencias:

=================================================================
    Continuing with OpenVMS VAX V7.3 Installation Procedure.



    Configuring all devices on the system ...

    If you have Product Authorization Keys (PAKs) to register, you can
    register them now.

* Do you want to register any Product Authorization Keys? (Y/N): n

********************************************************************************

    After the system has rebooted you must register any Product
    Authorization Keys (PAKs) that you have received with this kit.
    You can register these PAKs by executing the following procedure:

        $ @SYS$UPDATE:VMSLICENSE

    See the OpenVMS License Management Utility Manual for any additional
    information you need.

********************************************************************************

8. En el siguiente paso, vamos a configurar la zona horaria y, finaliza la instalación prometiendo que va a arrancar de nuevo (cosa que no hace):

%UTC-I-UPDTIME, updating Time Zone information in SYS$COMMON:[SYSEXE]


    Configuring the Local Time Zone


    TIME ZONE SPECIFICATION -- Main Time Zone Menu

      1) Australia       11) GMT             21) Mexico          31) Turkey
      2) Brazil          12) Greenwich       22) NZ              32) UCT
      3) CET             13) Hong Kong       23) NZ-CHAT         33) US
      4) Canada          14) Iceland         24) Navajo          34) UTC
      5) Chile           15) Iran            25) PRC             35) Universal
      6) Cuba            16) Israel          26) Poland          36) W-SU
      7) EET             17) Jamaica         27) ROC             37) WET
      8) Egypt           18) Japan           28) ROK             38) Zulu
      9) Factory         19) Libya           29) Singapore
     10) GB-Eire         20) MET             30) SystemV

      0) None of the above

Select the number above that best describes your location: 20

You selected MET as your time zone.
Is this correct? (Yes/No) [YES]:

    Default Time Differential Factor for standard time is 1:00.
    Default Time Differential Factor for daylight saving time is 2:00.

Is Daylight Savings time in effect? (Yes/No): n

Enter the Time Differential Factor [1:00]:

    NEW SYSTEM TIME DIFFERENTIAL FACTOR = 1:00.

Is this correct? [Y]:

********************************************************************************


    Running AUTOGEN to compute the new SYSTEM parameters ...

%AUTOGEN-I-BEGIN, GETDATA phase is beginning.
%AUTOGEN-I-NEWFILE, A new version of SYS$SYSTEM:PARAMS.DAT has been created.
        You may wish to purge this file.
%AUTOGEN-I-END, GETDATA phase has successfully completed.
%AUTOGEN-I-BEGIN, GENPARAMS phase is beginning.
%AUTOGEN-I-NEWFILE, A new version of SYS$MANAGER:VMSIMAGES.DAT has been created.
        You may wish to purge this file.
%AUTOGEN-I-NEWFILE, A new version of SYS$SYSTEM:SETPARAMS.DAT has been created.
        You may wish to purge this file.
%AUTOGEN-I-END, GENPARAMS phase has successfully completed.
%AUTOGEN-I-BEGIN, GENFILES phase is beginning.
%SYSGEN-I-EXTENDED, SYS$SYSROOT:[SYSEXE]PAGEFILE.SYS;1 extended
%SYSGEN-I-EXTENDED, SYS$SYSROOT:[SYSEXE]SWAPFILE.SYS;1 extended
%SYSGEN-I-CREATED, SYS$SPECIFIC:[SYSEXE]SYSDUMP.DMP;1 created
%SYSGEN-I-CREATED, DUA0:[SYS0.SYSEXE]ERRORLOG.DMP;1 created

%AUTOGEN-I-REPORT, AUTOGEN has produced some informational messages which
        have been stored in the file SYS$SYSTEM:AGEN$PARAMS.REPORT.  You may
        wish to review the information in that file.

%AUTOGEN-I-END, GENFILES phase has successfully completed.
%AUTOGEN-I-BEGIN, SETPARAMS phase is beginning.
%AUTOGEN-I-END, SETPARAMS phase has successfully completed.
%AUTOGEN-I-BEGIN, REBOOT phase is beginning.

    The system is shutting down to allow the system to boot with the
    generated site-specific parameters and installed images.

    The system will automatically reboot after the shutdown and the
    installation will be complete.



        SHUTDOWN -- Perform an Orderly System Shutdown


%SHUTDOWN-I-BOOTCHECK, performing reboot consistency check...
%SHUTDOWN-I-CHECKOK, basic reboot consistency check completed

%SHUTDOWN-I-OPERATOR, this terminal is now an operator's console
%OPCOM-W-NOOPCOM, the request was not sent, the OPCOM process is not running
%SHUTDOWN-I-DISLOGINS, interactive logins will now be disabled
%SET-I-INTSET, login interactive limit = 0, current interactive value = 0
%SHUTDOWN-I-STOPQUEUES, the queues on this node will now be stopped
%JBC-E-OPENERR, error opening SYS$COMMON:[SYSEXE]QMAN$MASTER.DAT;
-RMS-E-FNF, file not found

SHUTDOWN message from user SYSTEM at  Batch   20:24:36
The system will shut down in 0 minutes; back up SOON.  Please log off.
Reboot system with AUTOGENerated parameters


%SHUTDOWN-I-STOPUSER, all user processes will now be stopped
%SHUTDOWN-I-REMOVE, all installed images will now be removed
%SHUTDOWN-I-DISMOUNT, all volumes will now be dismounted
%OPCOM-W-NOOPCOM, the request was not sent, the OPCOM process is not running
%OPCOM-W-NOOPCOM, the request was not sent, the OPCOM process is not running
HALT instruction, PC: 8443B709 (MOVB 400(R1),R0)
sim> Simulation stopped, PC: 839ABD36 (ASHL #1,R3,R0)

Hasta aquí la instalación de OpenVMS. Ahora voy a intentar instalar la licencia. La licencia es un fichero de comandos ejecutable por lo que lo que tengo es que intentar hacerlo llegar al sistema de archivos de OpenVMS.

Antes de nada, voy a intentar rearrancar el sistema. Para ver si funciona:

Imagen41

La secuencia de mensajes, durante el arranque de OpenVMS es:

(BOOT/R5:0 DUA0



  2..
-DUA0
  1..0..


%SYSBOOT-I-SYSBOOT Mapping the SYSDUMP.DMP on the System Disk
%SYSBOOT-I-SYSBOOT SYSDUMP.DMP on System Disk successfully mapped
%SYSBOOT-I-SYSBOOT Mapping PAGEFILE.SYS on the System Disk
%SYSBOOT-I-SYSBOOT SAVEDUMP parameter not set to protect the PAGEFILE.SYS
   OpenVMS (TM) VAX Version V7.3     Major version id = 1 Minor version id = 0
%WBM-I-WBMINFO Write Bitmap has successfully completed initialization.
$!  Copyright 2001 Compaq Computer Corporation.

%STDRV-I-STARTUP, OpenVMS startup begun at 16-DEC-2018 10:02:25.02
%RUN-S-PROC_ID, identification of created process is 00000206
%DCL-S-SPAWNED, process SYSTEM_1 spawned
%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:46.13  %%%%%%%%%%%
Operator _TCVAX$OPA0: has been enabled, username SYSTEM

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:46.14  %%%%%%%%%%%
Operator status for operator _TCVAX$OPA0:
CENTRAL, PRINTER, TAPES, DISKS, DEVICES, CARDS, NETWORK, CLUSTER, SECURITY,
LICENSE, OPER1, OPER2, OPER3, OPER4, OPER5, OPER6, OPER7, OPER8, OPER9, OPER10,
OPER11, OPER12

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:46.44  %%%%%%%%%%%
Logfile has been initialized by operator _TCVAX$OPA0:
Logfile is TCVAX::SYS$SYSROOT:[SYSMGR]OPERATOR.LOG;2

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:46.44  %%%%%%%%%%%
Operator status for operator TCVAX::SYS$SYSROOT:[SYSMGR]OPERATOR.LOG;2
CENTRAL, PRINTER, TAPES, DISKS, DEVICES, CARDS, NETWORK, CLUSTER, SECURITY,
LICENSE, OPER1, OPER2, OPER3, OPER4, OPER5, OPER6, OPER7, OPER8, OPER9, OPER10,
OPER11, OPER12

%SET-I-NEWAUDSRV, identification of new audit server process is 0000020C
%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:47.54  %%%%%%%%%%%
Message from user JOB_CONTROL on TCVAX
%JBC-E-OPENERR, error opening SYS$COMMON:[SYSEXE]QMAN$MASTER.DAT;

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:47.54  %%%%%%%%%%%
Message from user JOB_CONTROL on TCVAX
-RMS-E-FNF, file not found

%LICENSE-F-EMTLDB, license database contains no license records
%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:49.19  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
%SECSRV-E-NOPROXYDB, cannot find proxy database file NET$PROXY.DAT
%RMS-E-FNF, file not found

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:49.22  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
%SECSRV-E-NOPROXYDB, cannot find proxy database file NET$PROXY.DAT
%RMS-E-FNF, file not found

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:49.28  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
%SECSRV-I-CIACRECLUDB, security server created cluster intrusion database

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:49.29  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
%SECSRV-I-SERVERSTARTINGU, security server starting up

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:49.37  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
%SECSRV-I-CIASTARTINGUP, breakin detection and evasion processing now starting up

%SMG-W-GBLNOTCRE, global section not created
-SYSTEM-F-GPTFULL, global page table is full
%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:51.06  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
%LICENSE-E-NOAUTH, DEC VAX-VMS use is not authorized on this node
-LICENSE-F-NOLICENSE, no license is active for this software product
-LICENSE-I-SYSMGR, please see your system manager


%LICENSE-E-NOAUTH, DEC VAX-VMS use is not authorized on this node
-LICENSE-F-NOLICENSE, no license is active for this software product
-LICENSE-I-SYSMGR, please see your system manager
Startup processing continuing...

%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:51.81  %%%%%%%%%%%
Message from user SYSTEM on TCVAX
Warning: DECdtm log file not found (SYS$JOURNAL:SYSTEM$TCVAX.LM$JOURNAL)
        %RMS-E-FNF, file not found
        TP server process waiting


%%%%%%%%%%%  OPCOM  16-DEC-2018 10:02:53.71  %%%%%%%%%%%
Message from user AUDIT$SERVER on TCVAX
Security alarm (SECURITY) and security audit (SECURITY) on TCVAX, system id: 1025
Auditable event:          Audit server starting up
Event time:               16-DEC-2018 10:02:53.55
PID:                      00000203
Username:                 SYSTEM

%STARTUP-I-AUDITCONTINUE, audit server initialization complete

The OpenVMS VAX system is now executing the site-specific startup commands.

%SET-I-INTSET, login interactive limit = 64, current interactive value = 0
  SYSTEM       job terminated at 16-DEC-2018 10:02:55.32

  Accounting information:
  Buffered I/O count:            1134         Peak working set size:    1791
  Direct I/O count:               499         Peak page file size:      4924
  Page faults:                   3385         Mounted volumes:             0
  Charged CPU time:           0 00:00:22.56   Elapsed time:     0 00:00:30.76

 Welcome to OpenVMS (TM) VAX Operating System, Version V7.3

Username:

De entrada, observo que la hora está mal configurada, el sistema tiene una hora menos que la que debería. Procedo a hacer logon en el sistema y aparece una pantalla ancha con el prompt de VAX (‘$’):

Imagen42

El fichero de licencias es un fichero de texto de más de 2000 líneas que tiene una serie de comandos VAX. Voy a intentar hacer un copia y pega desde un editor del PC al editor de VAX dentro de la simulación. Para ello, lanzo el comando:

$ EDIT PACKS.COM

Se abre el editor, copio las líneas del fichero de licencias desde el Notepad++ del PC y, en la ventana del terminal, al pulsar el botón de la derecha del ratón, se pegan las líneas. Tarda un ratito y, una vez pegadas pulso Ctrl-Z para salvar el fichero y, ahí está:

Imagen43

Lo último que me queda es activar la licencia ejecutando el fichero de comandos:

$ @PACKS.COM

La ejecución del fichero de comandos se toma su tiempo y cuando finaliza voy a reiniciar la máquina para terminar la configuración:

$ @SYS$SYSTEM:SHUTDOWN

Las últimas tareas que voy a realizar (por ahora) son configurar los otros dos discos que tengo en el sistema. Voy a ejecutar los comandos siguientes (tendré que configurar esto para que el montaje se haga en cada uno de los arranques):

Imagen44

Por ahora nada más. Bajarme la documentación y recordar DCL.

Descarga y compilación de simh

Tal y como comenté en la primera entrada de esta serie, el objetivo que me propongo es conseguir instalar OpenVMS en una Raspberry Pi de forma que se ejecute sobre el simulador simh.

Una vez obtenidas las imágenes del sistema operativo, el siguiente paso es crear una imagen de Raspbian para, sobre ella, instalar simh y, posteriormente, configurar OpenVMS. El crear una imagen de Raspbian y hacer su configuración inicial es un camino que tengo trillado y voy a seguir mi propia experiencia, intentando no cometer los errores que ya he cometido. Una vez creada la imagen, me conecto al router de banda ancha e investigo los dispositivos conectados para conocer la dirección IP de la Raspberry:

Imagen13

Una vez conocida la dirección IP voy a proceder a su configuración conectándome por ssh:

Imagen14

El siguiente paso es configurar el nombre de la máquina, colocarle una IP estática y actualizar el software. Ahora viene la parte difícil que es instalar simh. Por lo que he visto, lo recomendable es descargarse el código fuente desde GitHub y compilarlo en la raspi. He comprobado también que está en el repositorio en la versión 3.8.1-5.

Imagen15

La versión que hay en GitHub es la 4.0:

Imagen17

Vamos por el camino difícil. Descargar los fuentes y compilar. En el README.md del sitio de simh en GitHub proporciona las instrucciones para descargar los fuentes y construir los binarios. En primer lugar me descargo el master.zip que contiene los fuentes:

Imagen18

Imagen19

A continuación voy a compilar simh. Me cambio al directorio que contiene el paquete y hago, en primer lugar un make clean y, a continuación un make vax para crear los simuladores de VAX. A ver cuánto se alarga la espera.

Imagen21

Realmente ha tardado muy poco, unos 5 minutos. En este momento, ya tenemos compilado el simulador para VAX.

Imagen24

En el siguiente post abordaré la configuración inicial de simh.

Recordando viejos tiempos

vax

De vez en cuando, uno mira hacia atrás y se da cuenta de la cantidad de tiempo que ha pasado desde que comencé en este negocio. Para hacer frente a la nostalgia no hay nada mejor que intentar resituarse en el pasado. Mis comienzos profesionales en este mundo de la TI (a finales de los 80) fueron como programador Ada en un entorno VAX/VMS, en concreto, la máquina que teníamos, por aquel entonces, era un MicroVAX 3xxx. Vamos algo del tamaño de una lavadora y que costaba unos 100.000$ de los de entonces.

microvax36

Guardo un cariñoso recuerdo de aquel sistema operativo que, entre otras cosas, conservaba las distintas versiones de los ficheros editados, sus comandos no distinguían entre mayúsculas y minúsculas, tenía un maravilloso editor de texto (frente a vi o emacs) y una ayuda aún mejor. En medio de este ataque de nostalgia decidí investigar si era posible emular la arquitectura hardware y montar una máquina, en principio virtual, VAX/VMS en mi entorno casero.

Descubrí, para mi sorpresa, que el sistema operativo sigue vivo y, al parecer en uso, en muchos sitios y que ha sobrevivido a la desaparición de Digital Equipment Corporation (DEC) empresa que, en los avatares de la crisis económica de principios de los 90, empezó a perder mercado y fue, posteriormente, incorporada a Compaq y, finalmente, a HP. HP ha seguido manteniendo y comercializando el sistema operativo (OpenVMS) y, proporciona, de forma gratuita, licencias de OpenVMS para aquellos que (como yo) tienen un interés meramente lúdico en la plataforma (OpenVMS Hobbyist Program). La página web de este programa está enterrada en la web de HP y, la verdad es que se hace difícil llegar a ella.

Descubrí, además, que es factible hacer que el OpenVMS se ejecute sobre un simulador que, a su vez, puede ejecutarse en una Raspberry Pi. Parece increíble, un entorno de centenares de miles de dólares de hace 30 años se puede ejecutar en una máquina de 30€.

Ni corto ni perezoso voy a recapitular lo que necesito para montarlo y me pongo a ello:

  • Una Raspberry Pi (tengo una 3 nuevecita)
  • Una tarjeta micro SD (voy a usar una de 16GB)
  • Una imagen de Raspbian (me la bajo de aquí)
  • Descargarme SimH e instalarlo en Raspbian
  • Obtener una imagen de OpenVMS y hacerla correr en Simh

Voy a hacer una serie de posts describiendo estos pasos y vamos a ver a dónde llego. Repasando los puntos anteriores, veo que los tres primeros son sencillos. El cuarto, a priori, implica bajarse el código fuente y compilarlo en la Raspi, complicado pero factible. El quinto me preocupa porque, por más que busco necesito dos cosas que no encuentro en Internet:

  • Una imagen del sistema operativo
  • Una licencia que, a priori es necesaria para que se ejecute.

Empezaré por el último paso porque es el que supone un reto más importante.

Por último, esta entrada, como todas las del blog las escribo para mí, para acordarme de lo que hago y poder reproducirlo así que no tengo ninguna pretensión de precisión. La información, amigos, es “as is”.

Montar un Servidor DNS en una Raspberry PI 2 (II)

En la anterior entrada, completamos la configuración básica de la Raspi. Algunas cosas más que no quedaron reflejadas en el post fue, por ejemplo, el establecimiento de la zona horaria. Esta entrada se centra en la configuración de la red.

Lo primero que voy a hacer es echarle un ojo a la configuración de las interfaces de red:

Imagen23

Lo que estamos viendo es que:

  • El nombre de la máquina sigue siendo “raspberrypi”
  • La dirección IP sigue siendo la que obtenemos por dhcp.
  • Está activado IPv6. Dado que yo no uso IPv6 en mi red voy a deshabilitarlo.

Pasito a pasito. Para empezar, para establecer el nombre de la máquina edito el fichero /etc/hostname y pongo el nombre de la máquina con el dominio.

Imagen27

El establecimiento de la dirección IP estática lo hago editando dhcpcd.conf. Para ello, ya que es más cómodo que andar usando vi (o nano) me lo voy a traer al PC y usar un editor de texto más amigable. Para estos movimientos de ficheros utilizo WinSCP. Establezco, en dhcpcd.conf las siguientes líneas:

Imagen25

Los servidores de nombres los he establecido al propio host y a los servidores de OpenDNS. Después de estos dos cambios, rearranco y pruebo a ver si el nombre de máquina, el dominio y la IP ya están establecidos.

El nombre del host si cambió, la dirección IP no. Afortunadamente la Pi volvió a coger la dirección IP que le había dado el servidor DHCP. Tras dar unas vueltas con el syslog miro la configuración de las interfaces (ifconfig) y aparece esto:

Imagen30

No aparece la interfaz eth0 y aparece un nombre largo de interfaz. Lo que ocurre es que no está usando nombres de interfaces predecibles. Para corregirlo, edito el fichero /boot/cmdline.txt y añado, al final, la directiva net.ifnames=0

Imagen31

Rearranco y compruebo si ha cogido la nueva IP haciendo un ping desde el PC:

Imagen32

Ya no responde la 192.168.1.133 y ahora responde la 192.168.1.6. Voy a conectarme con putty a la nueva IP ver qué es lo que dice ifconfig:

Imagen33

La interfaz eth0 ya está bien configurada pero sigue estando activo el IPv6. Investigando un poco, para deshabilitar IPv6 hay que añadir la directiva ipv6.disable=1

Imagen34

Rearranco y verifico que IPv6 ya no aparece. Para terminar con esta parte y, antes de instalar bind, voy a comprobar si el servicio avahi está activo y si lo está, desactivarlo:

Imagen35

Como se ve está activo, así que lanzo el comando:

sudo systemctl disable avahi-daemon

Rearranco (una vez más) y compruebo que el servicio esté desactivado. En la siguiente entrega, la instalación de bind.

Montar un Servidor DNS en una Raspberry PI 2 (I)

Después de llevar mucho tiempo sin publicar voy a seguir registrando mis experimentos. Lo que voy a intentar es montar un servidor DNS para la red doméstica sobre la Raspi.

Para empezar, un poco de planificación. Ya tengo un servidor DNS en el entorno lab montado sobre Ubuntu y ser capaz de operar con dos servidores es un reto. Las posibilidades de configuración son casi infinitas pero me decido por tener dos servidores master que, lo único que significa es que ambos servidores tienen su propia copia de la información de zonas que sincronizaré (espero) a través del servidor de svn. La idea es que puedan funcionar de forma independiente y que no necesite tener arrancado uno u otro para que todo el entorno funcione.

La ventaja de una configuración Master – Slave es que los datos de zona están en un solo sitio (en el master) y el slave accede a ellos a través de transferencias de zona. La desventaja es, por supuesto, que para que pueda darse la transferencia de zona, el master tiene que estar arrancado.

Hay otra configuración posible que es configurar el DNS del lab virtual como stealth master pero, a estas alturas del partido, me parece complicar mucho el entorno y no tengo claro que, para que esto funcione, no tenga que tener arrancada la Raspi además del DNS en la DMZ del entorno virtualizado. Así que configuración master – master y replicación de la información de zonas a través de svn.

Imagen3

Para empezar voy a partir de una instalación limpia de Raspbian sobre una tarjeta MicroSD de Clase 10 de 16GB. La Raspi va a conectarse sólo por cable ethernet a través de un switch de 8 puertos. La dirección IP va a ser fija (192.168.1.6), dentro del rango de direccionamiento de la LAN doméstica (192.168.1.0/24). La la Raspi va a ser headless así que toda la configuración la voy a hacer a través de SSH.

Lo primero es descargarse Raspbian, como quiero un sistema lo más simple posible, me descargo la versión Raspbian Stretch Lite. Descomprimo la imagen descargada y mediante Win32DiskImager grabo la imagen a la tarjeta SD.

Imagen5

Una vez que acabe la grabación, insertaremos la MicroSD en la Raspberry y estaremos listos para el primer arranque de Raspbian.

El primer problema es encontrar la Raspi en la red. Probablemente obtenga una dirección IP por DHCP (está conectada por cable ethernet) pero no sabemos cuál es. La forma fácil es conectarse al router y ver qué dirección le asigna:

Imagen7

Le ha asignado la dirección 192.168.1.133. Nos conectamos a esta dirección mediante putty y … ¡Houston tenemos un problema!, la Raspi rechaza la conexión. Resulta que Raspbian viene con el SSH deshabilitado por defecto. La solución, para habilitar SSH es crear un fichero vacío, de nombre SSH en la partición de boot de la Raspberry. Apago la Rasp y saco la MicroSD y vuelta al PC.

Imagen9

Expulsar la SD, extraer la micro, insertarla en la Raspi, arrancar de nuevo e intentar de nuevo la conexión con putty. En el primer intento voy a confiar que el servidor DHCP le haya asignado la misma IP, sino es así, me tocará repetir los pasos que he hecho antes con el router de banda ancha.

Imagen10

Aparece el mensaje de advertencia de seguridad en la conexión SSH en relación con la clave del host, pulso “Sí”:

Imagen11

Me aparece la consola solicitándome las credenciales del usuario. Introduzco las credenciales por defecto (pi, raspberry) y entro:

Imagen12

Como soy un tío serio, antes de nada voy a cambiar la contraseña del usuario:

Imagen14

El siguiente paso es actualizar los componentes del sistema operativo:

Imagen17

Imagen18

Tras un rato actualizando cosas y un rearranque abordaremos el último paso para dejar la Raspi lista para el combate. Este último paso es expandir la partición root para usar todo el espacio de la tarjeta MicroSD. Primero lanzo el comando lsblk para ver cómo está el almacenamiento y veo (sorpresa) que está ocupado todo el almacenamiento de la tarjeta. Así que no hay nada que hacer.

Imagen21

De haber sido necesario hubiera utilizado raspi-config.

Más en la siguiente entrega.

Creando un WIDS casero (III)

Tras el fracaso con el viejo router D-Link he decidido no darme por derrotado e intentarlo con la Raspberry Pi. Ya comente en otra parte que tengo una Raspberry Pi Model B con una instalación fresca de Raspbian que utilizo, fundamentalmente, para jugar con sensores. Bien, ahora voy a emplearla como sensor de tramas de 802.11.

El viejo router lo voy a emplear para que haga de punto de acceso falso y para otras pruebas de penetración que tengo en mente.

La única duda que me surge es si la tarjeta WiFi USB que tengo es de las soportadas por Kismet. Si no lo fuera, ya veríamos que rumbo tomamos a futuro pero lo que tengo claro es que se me ha metido en la cabeza construir el maldito WIDS.

Lo primero que voy a hacer es actualizar el Raspbian:

Imagen14

Después de un buen rato tengo mi dispositivo actualizado.

El siguiente paso es comprobar si la interfaz WiFi que tengo está soportada por Kismet. Fundamentalmente, lo que importa es ver si se puede poner en modo monitor.

El dispositivo WiFi que tengo en mi Rasp es un dispositivo USB como éste:

Imagen16

Le echo un ojo, en primer lugar, a la configuración de las interfaces de red (comando ifconfig):

Imagen15

La interfaz wireless, como no podía ser de otra forma, es la wlan0. Voy a mirar ahora en los dispositivos USB (comando lsusb):

Imagen17

El dispositivo es el número 004 y es del fabricante Ralink Technology y se trata de un adaptador inalámbrico modelo RT5370. Si quisiéramos obtener información más detallada podríamos usar el comando:

lsusb –D /dev/bus/usb/001/004

Miramos los parámetros del dispositivo inalámbrico con iwconfig:

Imagen18

Por último, comprobamos si el adaptador puede ponerse en modo monitor lo que permite capturar los paquetes:

Imagen19

Todo parece OK así que voy a instalar Kismet. La instalación de Kismet voy a hacerla por el camino largo, esto es, tal y como se describe en la documentación de Kismet: me voy a descargar el código fuente, realizar la configuración previa, compilarlo y, por último, instalar el producto.

Para empezar instalo algunas dependencias:

Imagen20

Ahora me voy a descargar, desde la web de Kismet la última versión estable de código fuente que, en el momento de escribir esto, es la 2016-07-R1. Una vez descargada, voy a usar WinSCP para copiarla a la Raspberry.

Imagen21

Extraemos y configuramos:

Imagen22

Imagen23

Todo parece correcto así que puedo lanzar el make y esperar (la compilación se tomará su tiempo).

Imagen24

A continuación lanzo la instalación. Kismet debe estar instalado en /usr/local/bin

Imagen25

Imagen26

Por último, para completar la instalación, voy a añadir el usuario pi al grupo kismet.

sudo usermod -a -G kismet pi

Rearranco la pi y me meto con la configuración.