=for HTML
=head1 NAME
App::Monport - Monitor network ports for changes
=head1 SYNOPSIS
# generate the configuration file
$ monport localhost scanme.nmap.org
# compare against the configuration file
$ monport
=head1 DESCRIPTION
Use this module to find out whether some new ports have been opened or
existing ones have been closed. New open ports mean bigger attack surface and
consequently higher security risk. On the other hand if a port gets closed it
might indicate a problem with a network service.
The application works by comparing the actual state of ports (open or closed)
with the expected state defined in the configuration file.
=head1 FUNCTIONS
See F for how to use these functions.
=head2 create_config($conf_file, @hosts)
Create configuration file F<$HOME/.monport.yml> containing hosts with
corresponding open ports. This file will be used as the expected list of
open ports in the consequent scans.
=head2 compare_config($conf_file)
Compare list of open ports defined in the F<$conf_file> with the current list
of open ports. Print newly opened or closed ports.
=head2 scan_ports($verbose, $host)
Return an array reference containing list of ports open on $host.
=head2 nmap_path()
Return absolute path to nmap executable or die.
=head1 INSTALLATION
To install this module run:
$ cpan App::Monport
or
$ cpanm App::Monport
when using L.
To install manually clone the L"SOURCE REPOSITORY"> and then run (on Unix):
perl Build.PL
./Build
./Build test
./Build install
For more see L
or L instructions.
=head1 SOURCE REPOSITORY
L
=head1 AUTHOR
Jozef Reisinger, Ereisinge@cpan.orgE
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2015-2016 by Jozef Reisinger.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.