59 Commits

Author SHA1 Message Date
Hans Erasmus 6c4596d1b9 Added new authalgo support for SNMPv3 (#11966)
* Added new authalgo support for SNMPv3

* Update 2020_07_27_00522_alter_authalgo_column.php

Fixed case

* Update addhost.inc.php

Fixed case

* Update snmp.inc.php

Fixed case

* Update db_schema.yaml

Fixed case

* Fixed SHA-* order to ascending

* Update 2020_07_27_00522_alter_authalgo_column.php

Fixed space

* Update db_schema.yaml

Fixed line to be of type string

* Update config_definitions.json

Fixed sorting

* Fixed test file case sensitivity

* Fixed rollback function

* SourceDoctor code for checks

* Fixed indentation issues on Travis test

* Update to re-trigger testing stuck on CLA step

* Added crypto-algo updates

* Incorporated suggestions from Jellyfrog

* Added documentation entry

* Fixed travis spacing error

* Fixed validations

* Delete snmpv3_version_compare.patch

Sorry, this one was not supposed to be there.

* Added poller evaluation

* Added poller comparison

* Fixed merge-conflicts

* Fixed typo in test unit

* code refinements
only can check on webui that it supports the algorithms, hopefully, the eventlog is enough to notify users of distributed pollers.

* style fixes and remove openssl setting

* fix device access

* fix missing migration column

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-10-29 13:02:26 -05:00
ottorei 599c423532 Optional availability calculation mode to allow planned maintenance (#12218)
* Add an optional availability calculation mode

* Style fixes

* Review fixes

* Variable fix

* Style fixes

* Style fixes

* Style fixes

* Add additional status check, remove uptime

* Style fix

* Style fix

* Fix extra database update

* Style fix

* Style fix
2020-10-28 02:05:19 +01:00
PipoCanaja 0e0e80c827 More eventlogs for snmptraps (#12112)
* Allow detailed trap display and inform user about snmptrapd misconfiguration

* Documentation update

* Documentation update

* Documentation update

* CodeClimate

* CodeClimate

* ChangeRequest PR

* Fix tests

* config_definitions

translation

doc

* styleci

* lnms translation generate after npm-install
2020-09-23 17:00:02 +02:00
Adam Bishop bbdb1a2a5d Rewrite smokeping script to be an lnms command (#11585)
* Rewrite smokeping script to be an lnms command

* Add a default number of probes for smokeping

* Formatting fixes

* Refactor to simplify a couple of methods

* Fix a name collision when using more than 60 threads

* Simplify

* First pass at documentation

A few climate fixes too.

I'm a little dubious about the + LibreNMS fix - it could be included
in /etc/smokeping/config if it is really needed, but it sounds like
(looking at git blame) it's needed for if the script generates a broken
configuration file.

I'm thinking we should just not generate broken config.

* Improve testability and add some tests

* Load laravel to make translations available

* Second pass at documentation

* Fix brace

* Extend the device factory to include the type

Also adds a device group fake I created before I realised I didn't need it

* Mimic gen_smokeping.php a little more closely

* Update tests to properly verify old and new behaviour against each other

* Replace gen_smokeping with a wrapper

* Don't double whitespace

Render does this automatically.
Explicitly order by hostname too.

* Make faker less likely to generate duplicates

I tried adding a unique constraint here, but it didn't have the
intended effect.

Extending the hostname like this seems to work fine - I tried
generating 10 million hosts and got no duplicates, compared to
duplicates appearing with as few as 100 hosts without this
 change.

A true fix would be to add an 'fqdn' fake upstream.

* Make the tests more robust

* Assorted bug fixes

* Style corrections

* Handle 'generic' devices

* Fix an issue that came up during rebase

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-09-18 00:04:54 -05:00
Jason Cheng 661a518dea Add attach sysName to Prometheus. (#12061)
* Add attach sysName to Prometheus option.

The value of put to prometheus can be added to sysName by setting the relevant parameter.

* Add attach sysName to Prometheus.

* Add attach sysName to Prometheus.

* Update resources/lang/en/settings.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>

* Update settings.php

* Update settings.php

* Update settings.php

* Update settings.php

* Update settings.php

* Update zh-TW.json

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2020-09-07 21:38:13 +02:00
Anthony F. McInerney d601d38edf Fix missing 'nets' for autodiscovery (#12039) 2020-08-31 10:04:32 +02:00
SourceDoctor 427878dcaa Availability Calculation for all Devices (#12004)
* Availability Calculation for all Devices

* remove not more need uptime column
2020-08-28 13:01:54 +02:00
SourceDoctor 663ca6e9d1 Move Availability Setting to Poller (#12021) 2020-08-19 22:03:37 +02:00
pobradovic08 95c04de501 Changed row counts for default RRD definition (#11995) 2020-08-07 07:51:23 -05:00
TheGreatDoc c7cd410a0a Fix fping6 config definition (#12003) 2020-08-07 07:36:42 -05:00
Jellyfrog 86220eed9e Add more types to settings page (#11918)
* Add a executable type to settings page

This allow us to validate the value is a valid executable

* Add a directory type to settings page

This allow us to validate the value is a valid directory

* fixes
2020-07-21 20:51:23 -05:00
Tony Murray 560fd71ef6 CORS settings in webui (#11912)
* Change CORS implementation
allows for upstream integration of Laravel 7

* migrate config

* skip implementing patterns for now

* Expose settings to the webui

* Make db settings apply
2020-07-08 07:36:51 -05:00
Munzy 8a851eda9f Auth AD URL (#11884)
* Missing auth_ad_url

WIP

* add auth_ad_filter

* Pluralize

* Remove Translation, and add translations generation.
2020-07-01 13:23:35 -05:00
Tony Murray d75cc5235d Settings geocode lookup (#11875)
* Add setting to enable geocoding to ui

* rename settings

* rename settings

* capitalization

* Open streetmaps does not support geocoding
2020-06-29 21:03:03 +02:00
SourceDoctor 4e6a7291a2 Device Availability Calculation (#11784)
* Device Availability Calculation

* Travis fix

* .

* schema corrections

* flexible duration

* travis

* .

* .

* .

* .

* remove not needed code

* line Text to RRD

* update humantime

* .

* only set up again if device was marked as down

* set RRD area transparency

* save uptime also, to keep last availability as good as possible

* file description correction

* look for outages even if uptime > duration
2020-06-22 22:57:30 +02:00
Tony Murray 300645388f Dispatcher Service settings (#11760)
* Poller settings WIP

* Poller settings WIP2

* working on SettingMultiple

* setting multiple working

* settings sent with all required info

* fix translation

* Fix keys

* fix groups setting

* Apply settings to service
fixes and validations for setting

* don't error when no poller_cluster entry exists

* hid tab when no poller cluster entries

* Authorization

* make prod

* daily maintenance toggle should be advanced

* Update schema def
2020-06-08 08:27:03 -05:00
Hayden 4b766b4f10 Lighter greens and blues for bandwidth graphs, for both light and dark themes (#11759) 2020-06-05 21:04:03 +02:00
SourceDoctor f92caf8cf7 Fix - Seperate default poller id and distributed poller groups (#11584)
* Seperate Setting for default poller id

* revert change

* Travis restart

* fixes
2020-05-24 17:55:11 -05:00
Facundo Caselles 2f86c66afa WebUI - Improved "dark" theme (#11417)
* -Real dark mode, (themed bootstrap)
-removed inverted colors in navbar

* Test data

* FIX: navbar in mono theme.

* Dark mode rrdtool

* Changed background on gridster to match background of the dark theme

* - Icons and links now are grey
- Modernized tabs style into pills,
- button pagemenu-selected fixed

* Improvements:
- bootgrid-th, are now visible (dark mode to the table headings)
- Changed line color of poller and ping in rrdtool

* Fix some codeclimate errors

* Fix airos.snmprec, reverted to original file
2020-05-21 19:04:54 -05:00
TheGreatDoc fd89854012 Fix smokeping config definition (#11651)
* Fix config definition for smokeping

* Fix config definition for smokeping

* Updated mix-manifest
2020-05-21 10:16:24 -05:00
TheGreatDoc 370c7f5662 Added link to smokeping interface + smokeping options to global settings (#11610)
Co-authored-by: Daniel Baeza <d.baeza@tvt-datos.es>
2020-05-20 08:25:27 -05:00
SourceDoctor 85edd3a04a fix default uptime warning to 86400 seconds (#11507) 2020-04-30 22:47:11 +02:00
Tony Murray 055abcf443 Device page dropdown hero button, Performance -> Latency (#11328)
* Throw some shit together, rough outline.

* Reorganize tabs, use tab controllers

* Implement performance (into the latency tab)

* Update resources/views/device/header.blade.php

Co-Authored-By: Jellyfrog <Jellyfrog@users.noreply.github.com>

* Add more tabs

* All controllers created

* Implement routes

* Implement smokeping

* routing and auth

* fix smokeping check

* Implement device dropdown menu

* Update deviceUrl to new style

* Use Gates

* Fix style

* use more appropriate gates

* add show-config gate
remove Laravel helper

* Only show vlan tab if VLANs exist for the device :D

* Fix rancid file check will return false

* revert over-zealous file name changes

* don't need to request the location parameter, just cast to string to avoid bugs when not found

* Move latency tab (ping/performance) to the position of performance instead of ping.

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2020-04-29 07:25:13 -05:00
SourceDoctor fc921a143c Cleanup unused code (#11391)
* Global Settings - Alert Default Settings

* Revert "Global Settings - Alert Default Settings"

This reverts commit a1af62b146.

* remove not more used code

* Travis restart
2020-04-08 15:56:44 -05:00
Jellyfrog daf451cef7 Convert overview page to laravel (#10757)
* Convert overview page to laravel

* Convert more pages

* More fixes
2020-03-31 23:03:02 -05:00
SourceDoctor d3bc503cf6 Global Settings - force_ip_to_sysname, force_hostname_to_sysname (#11335)
* Global Settings - force_ip_to_sysname, force_hostname_to_sysname

* add manifest.json

* Update mix-manifest.json

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-03-24 16:02:48 +01:00
dGs- 7020de0b7f replace AES by SHA for authalgo (#11314) 2020-03-20 17:30:16 +01:00
Mathieu Poussin 1cf7e206e5 Geographical map: Show network links between locations (#11269)
* Geographical map: Show links between locations

* Fix manifest after merge conflict
2020-03-13 11:22:32 +01:00
Tony Murray 121fbe7edd Add datastore settings to the Web UI (#11266) 2020-03-12 11:46:41 -05:00
SourceDoctor d32273decd Graph CPU Steal and IO Wait (#11235) 2020-03-03 13:17:42 +01:00
Tony Murray 79f2debbdb Move storage module settings (#11206)
Actually verify regex setting
2020-02-26 17:53:33 +01:00
SourceDoctor 0baeab567b Added Mountpoint ignore options to global settings (#11197)
* Global Settings - Mountpoint ignore options

* enhance AppServiceProvider with regex
2020-02-26 13:01:49 +00:00
SourceDoctor c56b6fb9f8 Global Settings - Uptime Warning (#11198) 2020-02-25 08:06:02 -06:00
SourceDoctor 40cac40aec Option to default open Location Map on Device View (#11167)
* Option to default open Location Map on Device View

* String set fixes

* adding lanugage files
2020-02-22 00:09:51 +01:00
SourceDoctor 0bc2ea1f45 Configurable Alert Rule default settings (#11152)
* configurable Alert Rule default settings

* codeclimate fix#
2020-02-15 16:18:02 +01:00
LEV82 9ce7c83caa Add bad_ifoperstatus for filtering interfaces having a status for example 'notPresent' (#10977)
* Add bad_ifoperstatus for filtering interfaces having a status for example notPresent

* Add bad_ifoperstatus for filtering interfaces having a status for example notPresent

* Add bad_ifoperstatus for filtering interfaces having a status for example notPresent
2020-01-24 05:58:01 -06:00
SourceDoctor 08c23b9ca5 Discovery Module and Poller Module configuration via Global Settings Web GUI (#10854)
* discovery module and poller module configurable via global settings gui

* fix descriptions

* moved Poller Module to Poller Category
2020-01-07 18:12:46 +01:00
SourceDoctor ab99520c65 Highlight Nodes on Network map (#10943)
* mark nodes on map

* better variable naming

* change variable getter

* change form header

* replace key mark with highlight

* GET Parameter to highlight node
2019-12-30 16:53:19 +01:00
Jellyfrog b361710148 Device group based access (#10568)
* Device group based access

* Use Permissions class to resolve permissions

Also give port access based on device access

* Convert more pages to use Permissions class

* shorten config setting name
use Eloquent relationships in several places
alphabetize config_definitions.json

* Change Models and Permissions

* Clean up ajax_search LIMIT sql

* Convert more pages to use Permissions class

Co-authored-by: Tony Murray <murraytony@gmail.com>
2019-12-30 12:11:26 +01:00
louis-oui 934260cc75 Feature: Custom OID polling and graphing (#10945)
* merge

* fix db migration

* fix new auth

* fix new auth

* fix new auth

* fix new auth

* fix db schema tests

* fix polling customoid

* fix polling customoid

* fix graph

* fix graph

* fix graph

* fix CI

* fix CI

* always update prev value

* typo
2019-12-18 18:17:21 -06:00
SourceDoctor b24bf02c2a Move alert state color definition to config (#10958) 2019-12-18 11:08:32 +01:00
Tony Murray 04b65d3202 Add minimum password length setting (#10867) 2019-11-25 04:11:18 +00:00
louis-oui ef562f607e LDAP Add option to authenticate user independtly of OU (#10873)
* Add option to authenticate user independtly of OU
* Set config option in webui
* Compatibility with bind username option
* ran ./lnms translation:generate
* update doc
2019-11-22 19:29:47 +01:00
louis-oui 09088f4885 Webui settings - AD bind at wrong place (#10874) 2019-11-22 19:25:57 +01:00
PipoCanaja bf181b9dc2 Added support for routing table collection in discovery (#10182)
* Clean broken VRF lite code
* Change DB table for route discovery
* Add VRF simple support
* add port_id to db and discovery
* static-fy the translation arrays
* sort and search cleaning
* Sorting refactor and validation
* formatItem shortened
* Handle ifIndex==0 meaning no next hop defined (MPLS)
* Sync all create/updates
* purge in daily
* remove old route table
* get rid of inetCidrRouteNextHop_device_id
* fix wonky column orders
* add route snmprec
* fix sorting by interface
* Move to new config
* rename to route the new table
* Properly display ipv6 compressed addresses
* Translation before merge ./lnms translation:generate
* Update manifest
2019-11-17 16:30:43 +01:00
Tony Murray 552d487ae1 Fix email_auto_tls toggle (#10785)
* Fix email_auto_tls toggle

* Clean up smtp settings a bit
user/pw depend on auth setting
2019-11-08 06:27:40 +00:00
Jellyfrog a2644e6495 Fixed oxidized url setting validator (#10766)
* Fix oxidized url setting validator

* Update config_definitions.json
2019-11-05 21:40:29 +00:00
Tony Murray 6002427895 Fixed mydomain setting regex (#10762)
must be in an array because it contains a |
2019-10-30 14:03:45 +00:00
SourceDoctor 61c11a8e09 Added more default values to config_definitions (#10756)
* adding default values to config_definitions

* define WebUI Position and GUI Description

* style fix

* another missing definitions

* reposition config elements

* remove empty line
2019-10-30 13:53:13 +00:00
Orsiris de Jong 66203ebb2d Remove default 'temp_dir' value '/tmp' (#10754)
* Remove default 'temp_dir' value '/tmp'

* Revert temp_dir entry, without default value
2019-10-28 17:29:05 -07:00