├── .gitignore
├── .readthedocs.yaml
├── Makefile
├── README.md
└── docs
├── 404.rst
├── _static
├── branding
│ ├── NEMS_Application_Icon.png
│ ├── nconf_logo.png
│ ├── nconf_logo.xcf
│ ├── ncs.png
│ ├── nems-01.eps
│ ├── nems-02.eps
│ ├── nems-03.eps
│ ├── nems-04.eps
│ ├── nems-05.eps
│ ├── nems-06.eps
│ ├── nems-fullcolour.png
│ ├── nems-greyscale.png
│ ├── nems-secondary-fullcolour.png
│ ├── nems-secondary-greyscale.png
│ ├── nems-secondary-white.png
│ ├── nems-white.png
│ └── tv-icon.png
├── css
│ └── custom.css
└── js
│ └── link_new_tab.js
├── accessories
├── argon1case.rst
├── dhtsensors.rst
├── index.rst
├── omzlo-warninglight-phat.rst
├── pivoyager.rst
├── piwatcher.rst
├── rpi_pinout.rst
└── temper.rst
├── advanced
├── legacyupgrade.rst
├── mrtg.rst
├── nems-api.rst
├── nems-mesh.rst
├── nemsicons.rst
├── nemsupgrade.rst
├── resolve_dns_hostnames
└── snmp.rst
├── apps
├── adagios.rst
├── cockpit.rst
├── mobile.rst
├── monitorix.rst
├── monitservicemonitor.rst
├── nconf.rst
├── nems-migrator.rst
├── nems-sst.rst
├── nems-tv.rst
├── serveroverview.rst
└── tactical_overview.rst
├── basic
├── 9590.rst
├── backupnems.rst
├── connect_via_ssh.rst
├── default_password.rst
├── faq.rst
├── nav.rst
└── power_controller.rst
├── changelogs
├── 1.0.rst
├── 1.1.rst
├── 1.2.rst
├── 1.3.rst
├── 1.4.rst
├── 1.5.rst
├── 1.6.rst
├── 1.7.rst
├── 1.8.rst
├── index-nems.rst
├── index-nemseos.rst
└── nemseos_0.rst
├── check_commands
├── check_1wire_temp.rst
├── check_apc.rst
├── check_esxi_hardware.rst
├── check_fortigate.rst
├── check_http.rst
├── check_ibmi.rst
├── check_ilo2_health.rst
├── check_internet_speed.rst
├── check_iperf3.rst
├── check_mikrotik.rst
├── check_minecraft.rst
├── check_mssql_mem.rst
├── check_ncpa.rst
├── check_nems_osb.rst
├── check_nems_php_agent.rst
├── check_netscaler.rst
├── check_nrpe.rst
├── check_ping.rst
├── check_pve.rst
├── check_qnap.rst
├── check_sbc_temperature.rst
├── check_synology.rst
├── check_tasmota.rst
├── check_tcp.rst
├── check_truepool.rst
├── check_win_users.rst
├── custom_check_mem.rst
├── index.rst
└── usage
│ ├── linux
│ ├── check_nrpe.rst
│ └── index.rst
│ └── microsoft-windows
│ ├── check_nrpe.rst
│ ├── check_ping.rst
│ ├── check_wmi.rst
│ └── index.rst
├── commands
├── index.rst
├── nems-benchmark.rst
├── nems-cert.rst
├── nems-info.rst
├── nems-init.rst
├── nems-quickfix.rst
├── nems-restore.rst
├── nems-support.rst
├── nems-update.rst
└── nems-upgrade.rst
├── conf.py
├── config
├── networking.rst
├── smtp_config_gmail.rst
└── smtp_config_outlook.rst
├── credits.rst
├── gettingstarted
├── add_first_host.rst
├── connect.rst
├── exercises.rst
├── exercises
│ ├── check_http.rst
│ └── check_tcp.rst
├── generate_config.rst
├── initialization.rst
├── install-indiedroid-nova.rst
├── install-raspberry-pi.rst
├── install.rst
├── introduction.rst
├── monitor_assets.rst
├── notification_definitions.rst
└── smtp.rst
├── global.rst
├── img
├── 20181230-Dashboard.jpg
├── 20230104-Dashboard.jpg
├── 308-cim-general-system-error.png
├── 308-cim-server-service.png
├── Adagios-hosts-view.png
├── Adagios-interface-on-NEMS-Linux-1.4.1.png
├── Add-a-host-1.6.png
├── Add-a-host.png
├── Cockpit-terminal.png
├── Create-New-misccommand-to-check-host-alive-Using-IPv4.png
├── Creating-a-Host-to-Monitor-IPv4-SSL-Web-Site.png
├── Creating-an-Advanced-Service-to-Check-SSL-Web-Sites.png
├── Expanded-view-of-Host-reveals-configured-service-checks.png
├── Host-Preset.png
├── Khadas.png
├── Khadas.webp
├── NEMS-1.4.1-Dashboard.png
├── NEMS-Adagios-Shows-nemslinux.com-is-UP.png
├── NEMS-Initialization.png
├── NEMS-Linux-1.5-dashboard-with-a-user-uploaded-background.png
├── NEMS-SST-CheckIn.png
├── NEMS-TV-Dashboard-on-NEMS-Linux-1.4.1.png
├── NEMS-details-displayed-on-a-connected-TV.png
├── NEMS_Application_Icon_sm.png
├── NemsOutlook.png
├── New-Host-Preset-for-IPv4-Web-Sites.png
├── New-hostgroup-for-web_site_ssl.png
├── PerfLogUsers.png
├── PerfLogUsersAdd.png
├── PerfLogUsersCheck.png
├── RPi_5.png
├── RPi_5_400.png
├── Sample-NEMS-CheckIn-notification.png
├── admin-ajax.png
├── argon_one.jpg
├── asus_tinker_board_s.png
├── asus_tinker_board_s_400.png
├── back.png
├── branding
│ ├── nconf_logo.png
│ ├── nconf_logo.xcf
│ ├── ncs.png
│ ├── nems-01.eps
│ ├── nems-02.eps
│ ├── nems-03.eps
│ ├── nems-04.eps
│ ├── nems-05.eps
│ ├── nems-06.eps
│ ├── nems-fullcolour.png
│ ├── nems-greyscale.png
│ ├── nems-secondary-fullcolour.png
│ ├── nems-secondary-greyscale.png
│ ├── nems-secondary-white.png
│ ├── nems-white.png
│ └── tv-icon.png
├── bug-nic-cache.png
├── check_host_alive-check-command-details.png
├── check_nems_osb.png
├── check_pve-version.png
├── check_truepool.png
├── cockpit-limited-access.png
├── cockpit-terminal-rpi5.png
├── dht11.jpg
├── dht11_dht22_pinout.png
├── dht22.jpg
├── dia_DHT11_RPi_GPIO.png
├── dia_KY-015_DHT_RPi_GPIO.png
├── discord-nems-webhook.png
├── first_nems_server.jpg
├── generate-nems-config.png
├── hamburger.png
├── icons_02.PNG
├── icons_03.PNG
├── icons_05.PNG
├── icons_06.PNG
├── icons_07.PNG
├── icons_09.PNG
├── icons_10.PNG
├── icons_11.PNG
├── icons_12.PNG
├── icons_13.PNG
├── indiedroid_nova_400.png
├── khadas_vim3_basic.png
├── khadas_vim3_basic_400.png
├── khadas_vim3_basic_600.png
├── logo_truepool.png
├── mrtg.png
├── nanopc-t4.png
├── nanopc-t4_400.png
├── nconf_add_advanced_service.png
├── nconf_advanced_services_check_wmi.png
├── nconf_logo_sm.png
├── ncs_sm.png
├── nems-extender-os.png
├── nems-fitlet2.png
├── nems-fullcolour_sm.png
├── nems-greyscale_sm.png
├── nems-secondary-fullcolour_sm.png
├── nems-secondary-greyscale_sm.png
├── nems-secondary-white_sm.png
├── nems-server-overview.png
├── nems-white_sm.png
├── nems_sst_windows_domain_credentials.png
├── nemsswap.png
├── nsclient-setup.png
├── odroid-xu4q.png
├── odroid-xu4q_400.png
├── omzlo-warninglight-phat-connection-diagram.jpg
├── omzlo-warninglight-prototype.jpg
├── orange-pi-3.png
├── orange-pi-3_400.png
├── pinea64-plus.png
├── pinea64-plus_400.png
├── pivoyager.jpg
├── piwatcher.png
├── pushover-1.4.1.png
├── pushover_notifications.jpg
├── qnap_controlPanelSSH.png
├── raspberry-pi-gpio-layout-model-b-plus.png
├── raspberry_pi_3_b_plus.png
├── raspberry_pi_3_b_plus_400.png
├── raspberry_pi_3_b_plus_600.png
├── rightarrow.png
├── screenshot_2019-08-19-19-28-48-089_org.telegram.messenger.png
├── screenshot_2019-08-19-19-32-50-622_org.telegram.messenger.png
├── screenshot_2019-08-19-19-41-44-985_org.telegram.messenger.png
├── screenshot_2019-08-19-19-43-25-138_org.telegram.messenger.png
├── screenshot_from_2017-11-09_22-40-23.png
├── smtp_nems-sst-1.6.png
├── smtp_nems-sst.png
├── snmp_001.png
├── snmp_002.png
├── snmp_003.png
├── snmp_004.png
├── snmp_005.png
├── snmp_006.png
├── snmp_007.png
├── sponsor_logos
│ ├── RNIT_Logo_Full_Dark.eps
│ ├── RNIT_Logo_Full_Dark.png
│ └── cat5tv_network_dark.png
├── ss_Cockpit_Power.png
├── ss_NEMS_Power_Controller.png
├── ss_check_minecraft.png
├── ss_check_minecraft_perfdata.png
├── ssvendorbranding.png
├── std_pivoyager-conn-bat.jpg
├── std_pivoyager-pins.001.jpeg
├── synology-adagios-checks.png
├── synology-dsm-snmp-setup.png
├── synology-nas-800.png
├── synology-nas.png
├── telegram.png
├── temper-calibration-in-nems-sst.png
├── temper.png
├── tv-icon.png
├── tv_dashboard_1.4.1.png
├── vm-virtualbox-001.png
├── warninglight.jpg
├── wmi_windows_01.png
├── wmi_windows_02.png
├── wmi_windows_03.png
├── wmi_windows_04.png
├── wmi_windows_05.png
├── wmi_windows_06.png
├── wmi_windows_07.png
├── wmi_windows_08.png
├── wmi_windows_09.png
├── wmi_windows_10.png
├── wmi_windows_11.png
├── wmi_windows_12.png
└── wmi_windows_13.png
├── index.rst
├── misc
├── anonymousstats.rst
├── backupnemsfile.rst
├── md5checksums.rst
├── nemsbranding.rst
├── nemslicensing.rst
├── nemslinux-sourcecode.rst
├── nemszram.rst
├── self-signed-certificates.rst
└── vendorbranding.rst
├── nems-cloud-services
├── api.rst
├── checkin.rst
├── index.rst
└── nems-migrator.rst
├── nems-saas
├── api.rst
├── index.rst
├── nems-saas-probe.rst
└── probes
│ └── qnap.rst
├── nems-tools
├── gpioextender.rst
├── nems-hero.rst
├── nemseos.rst
└── warninglight.rst
├── notifications
├── index.rst
├── pushover-vs-telegram.rst
├── pushover.rst
├── sms.rst
├── telegram.rst
└── webhook.rst
├── platforms
├── ami.rst
├── docker.rst
├── index.rst
├── sbc.rst
├── sbc
│ └── khadas.rst
└── vm.rst
├── requirements.txt
├── todolist
├── reportissues.rst
└── todolist.rst
└── troubleshooting
└── multicast_name_resolution.rst
/.gitignore:
--------------------------------------------------------------------------------
1 | _build/*
2 |
--------------------------------------------------------------------------------
/.readthedocs.yaml:
--------------------------------------------------------------------------------
1 | # .readthedocs.yaml
2 | # Read the Docs configuration file
3 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4 | version: 2
5 | build:
6 | os: ubuntu-22.04
7 | tools:
8 | python: "3.11"
9 | sphinx:
10 | configuration: docs/conf.py
11 | python:
12 | install:
13 | - requirements: docs/requirements.txt
14 | formats:
15 | - pdf
16 | - epub
17 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | # Minimal makefile for Sphinx documentation
2 | #
3 |
4 | # You can set these variables from the command line.
5 | SPHINXOPTS =
6 | SPHINXBUILD = sphinx-build
7 | SPHINXPROJ = NEMSLinuxDocumentation
8 | SOURCEDIR = .
9 | BUILDDIR = _build
10 |
11 | # Put it first so that "make" without argument is like "make help".
12 | help:
13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14 |
15 | .PHONY: help Makefile
16 |
17 | # Catch-all target: route all unknown targets to Sphinx using the new
18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19 | %: Makefile
20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
--------------------------------------------------------------------------------
/docs/404.rst:
--------------------------------------------------------------------------------
1 | 404 Not Found
2 | -------------
3 |
4 | Sorry, that page doesn't exist. You can use the search feature at `docs.nemslinux.com `__ to find the page you're looking for.
5 |
6 | If you're stuck, reach out to anyone on the Beta team on `our Discord server `__.
7 |
--------------------------------------------------------------------------------
/docs/_static/branding/NEMS_Application_Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/NEMS_Application_Icon.png
--------------------------------------------------------------------------------
/docs/_static/branding/nconf_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nconf_logo.png
--------------------------------------------------------------------------------
/docs/_static/branding/nconf_logo.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nconf_logo.xcf
--------------------------------------------------------------------------------
/docs/_static/branding/ncs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/ncs.png
--------------------------------------------------------------------------------
/docs/_static/branding/nems-01.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-01.eps
--------------------------------------------------------------------------------
/docs/_static/branding/nems-02.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-02.eps
--------------------------------------------------------------------------------
/docs/_static/branding/nems-03.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-03.eps
--------------------------------------------------------------------------------
/docs/_static/branding/nems-04.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-04.eps
--------------------------------------------------------------------------------
/docs/_static/branding/nems-05.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-05.eps
--------------------------------------------------------------------------------
/docs/_static/branding/nems-06.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-06.eps
--------------------------------------------------------------------------------
/docs/_static/branding/nems-fullcolour.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-fullcolour.png
--------------------------------------------------------------------------------
/docs/_static/branding/nems-greyscale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-greyscale.png
--------------------------------------------------------------------------------
/docs/_static/branding/nems-secondary-fullcolour.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-secondary-fullcolour.png
--------------------------------------------------------------------------------
/docs/_static/branding/nems-secondary-greyscale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-secondary-greyscale.png
--------------------------------------------------------------------------------
/docs/_static/branding/nems-secondary-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-secondary-white.png
--------------------------------------------------------------------------------
/docs/_static/branding/nems-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/nems-white.png
--------------------------------------------------------------------------------
/docs/_static/branding/tv-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/_static/branding/tv-icon.png
--------------------------------------------------------------------------------
/docs/_static/css/custom.css:
--------------------------------------------------------------------------------
1 | /* Do not add bottom margin to multi-line bullet points */
2 | .rst-content .line-block {
3 | margin-bottom: 0 !important;
4 | }
5 |
6 | .bolditalic {
7 | font-weight: bold;
8 | font-style: italic;
9 | }
10 |
11 | .underline {
12 | text-decoration: underline;
13 | }
14 |
15 | cite {
16 | color: #333;
17 | font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
18 | font-size: 0.9em;
19 | }
20 |
21 | /* Wrap table cell contents rather than adding a horizontal scroll */
22 | table td, table th {
23 | white-space: normal;
24 | }
25 |
--------------------------------------------------------------------------------
/docs/_static/js/link_new_tab.js:
--------------------------------------------------------------------------------
1 | $(document).ready(function () {
2 | $('a[href^="http://"], a[href^="https://"]').not('a[class*=internal]').attr('target', '_blank');
3 | });
4 |
--------------------------------------------------------------------------------
/docs/accessories/argon1case.rst:
--------------------------------------------------------------------------------
1 | Argon ONE Raspberry Pi 4 Case
2 | =============================
3 |
4 | .. figure:: ../img/argon_one.jpg
5 | :width: 600
6 | :align: center
7 | :alt: Argon ONE Case for Raspberry Pi 4
8 |
9 | Argon ONE Case for Raspberry Pi 4
10 |
11 | The stylish aluminum alloy body, the combination of both passive and
12 | active cooling, and a power button that safely controls the power state
13 | of your NEMS Server are just a few of the points that make the Argon ONE
14 | case a beautiful choice for your Raspberry Pi 4-based NEMS Server.
15 |
16 | The Argon ONE active cooling fan is controlled via I2C, and the fan
17 | speed varies based on how hot the Raspberry Pi SOC is. The power button
18 | on the Argon ONE triggers a safe software shutdown on the Raspberry Pi,
19 | as if you had typed *shutdown now -h*
20 |
21 | Requirements
22 | ------------
23 |
24 | - Raspberry Pi 4 (Any Model)
25 | - NEMS Linux 1.6+
26 |
27 | Where To Buy
28 | ------------
29 |
30 | Please use one of the links in `the Category5 TV
31 | Shop `__ to support NEMS
32 | Linux.
33 |
34 | Power Button
35 | ------------
36 |
37 | =========== ============== ======================
38 | Powered Off Short Press Power On
39 | Powered On Hold 3 Seconds Safe Shutdown
40 | Powered On Hold 5 Seconds Hard (Unsafe) Shutdown
41 | Powered On Double Tap Hard (Unsafe) Reboot
42 | Powered On Short Press Nothing Yet
43 | =========== ============== ======================
44 |
45 | Fan Controller
46 | --------------
47 |
48 | Defaults
49 | ~~~~~~~~
50 |
51 | - CPU temperature below 50°C, fan will be disabled.
52 | - CPU temperature between 50-55°C, fan will run at 5% speed.
53 | - CPU temperature between 55-60°C, fan will run at 10% speed.
54 | - CPU temperature between 60-65°C, fan will run at 30% speed.
55 | - CPU temperature between 65-70°C, fan will run at 55% speed.
56 | - CPU temperature between 70-75°C, fan will run at 75% speed.
57 | - CPU temperature between 75-80°C, fan will run at 85% speed.
58 | - CPU temperature between 80-85°C, fan will run at 90% speed.
59 | - CPU temperature above 85°C, fan will run at 100% speed.
60 |
61 | You may adjust the fan speed settings in `NEMS
62 | SST <../apps/nems-sst.html>`__.
63 |
64 |
--------------------------------------------------------------------------------
/docs/accessories/index.rst:
--------------------------------------------------------------------------------
1 | NEMS Accessories
2 | ================
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: Platform Agnostic
7 |
8 | temper
9 | dhtsensors
10 |
11 | .. toctree::
12 | :maxdepth: 1
13 | :caption: Raspberry Pi
14 |
15 | pivoyager
16 | piwatcher
17 | omzlo-warninglight-phat
18 | argon1case
19 | rpi_pinout
20 |
--------------------------------------------------------------------------------
/docs/accessories/omzlo-warninglight-phat.rst:
--------------------------------------------------------------------------------
1 | Omzlo NEMS Warninglight pHAT
2 | ============================
3 |
4 | The NEMS Warninglight pHAT from Omzlo is an i2c accessory for Raspberry Pi GPIO that provides visual feedback by way of status lights. For testing or convenience, the pHAT features state LEDs on-board, which, like a connected tower signal light, will indicate the state of your environment. In addition to the signal light functionality, a built-in watchdog (based on the :doc:`Omzlo PiWatcher `) keeps an eye on your NEMS Server and will hard reboot it if it becomes unresponsive.
5 |
6 | .. figure:: ../img/omzlo-warninglight-prototype.jpg
7 | :width: 600
8 | :align: center
9 | :alt: An early prototype of the Omzlo NEMS Warninglight pHAT
10 |
11 | The early development prototype of the NEMS Warninglight pHAT from Omzlo.
12 |
13 | Buy a NEMS Warninglight pHAT
14 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 |
16 | The NEMS Warninglight pHAT is in development testing and will be released soon. Pre-orders may become available, so please check back.
17 |
18 | Connection
19 | ~~~~~~~~~~
20 |
21 | The NEMS Warninglight pHAT features a terminal block which allows the connection of a 12V or 24V NPN (sinking) type signal light.
22 |
23 | .. Warning:: Only 12-24V signal lights are supported. Do not connect high-voltage (E.G. 110V/220V) signal lights or power supplies to the pHAT.
24 |
25 | .. figure:: ../img/omzlo-warninglight-phat-connection-diagram.jpg
26 | :width: 600
27 | :align: center
28 | :alt: Omzlo NEMS Warninglight pHAT connection diagram
29 |
30 | Tower signal light connection diagram.
31 |
32 | You will need two separate power sources: one 5V USB input for the pHAT, which powers the Raspberry Pi, and one 12V or 24V power source for the connected tower light, depending on the voltage of the light.
33 |
34 | Indications
35 | ~~~~~~~~~~~
36 |
37 | - **Red/Orange/Green Flashing** NEMS Linux is loading following boot and the pHAT is awaiting Warninglight state information.
38 | - **Green Solid** Your hosts and services are in an OK state.
39 | - **Orange Solid** At least one host or service has entered a Warning state.
40 | - **Green Solid, Orange Flashing** Your hosts and services are in an OK state, however at least one is in Unknown state.
41 | - **Red Solid** At least one host or service has entered a Critical state.
42 |
43 | Manufacture
44 | ~~~~~~~~~~~
45 |
46 | The Omzlo NEMS Warninglight pHAT is designed and assembled in Greece.
47 |
48 | Certification
49 | ~~~~~~~~~~~~~
50 |
51 | None yet. Working on getting CSA certification.
52 |
53 | Developers
54 | ~~~~~~~~~~
55 |
56 | NEMS Warninglight is a software component of NEMS Linux developed by `Robbie Ferguson `__ for `Category5 TV Network `__.
57 |
58 | NEMS Warninglight pHAT is an accessory designed and developed by `Alain Pannetrat `__ for `Omzlo `__.
59 |
--------------------------------------------------------------------------------
/docs/accessories/piwatcher.rst:
--------------------------------------------------------------------------------
1 | Omzlo PiWatcher Smart Watchdog for Raspberry Pi
2 | ===============================================
3 |
4 | .. figure:: ../img/piwatcher.png
5 | :width: 300
6 | :align: center
7 | :alt: PiWatcher
8 |
9 | Omzlo PiWatcher
10 |
11 | The `Omzlo PiWatcher `__ is a very
12 | small hat for Raspberry Pi that allows programmable power events to take
13 | place.
14 |
15 | NEMS Linux includes built-in support for the PiWatcher board. There is
16 | no configuration needed: Simply plug it in and boot up your NEMS Linux
17 | server. If your Raspberry Pi should become unresponsive or otherwise
18 | freeze up, your NEMS server will automatically power cycle after 2
19 | minutes.
20 |
21 | To confirm your PiWatcher devices is detected and active, visit NEMS
22 | Server Overview on your NEMS Dashboard.
23 |
24 | To test if your piWatcher is working, stop the heartbeat and wait 2
25 | minutes:
26 |
27 | .. code-block:: console
28 |
29 | sudo kill -9 $(cat /var/run/nems-piwatcher.pid)
30 |
31 | This should not be done on a production server (it is akin to pulling
32 | the power on a live system).
33 |
34 |
--------------------------------------------------------------------------------
/docs/accessories/rpi_pinout.rst:
--------------------------------------------------------------------------------
1 | ======================================
2 | NEMS Linux: Raspberry Pi GPIO Pinout
3 | ======================================
4 | The pinout diagram is applicable to Raspberry Pi-based NEMS Linux servers, as well as `NEMS Tools GPIO Extender
5 | receivers <../nems-tools/gpioextender.html>`__.
6 |
7 |
8 | ======= ======================================= ======= ===============================
9 | **Pin** **Resrved For** **Pin** **Reserved For**
10 | ======= ======================================= ======= ===============================
11 | 1 Omzlo piWatcher / DHT Sensor 2 Omzlo piWatcher
12 | 3 Omzlo piWatcher 4 Omzlo piWatcher
13 | 5 Omzlo piWatcher 6 Omzlo piWatcher
14 | 7 DHT Sensor 8 --
15 | 9 DHT Sensor 10 --
16 | 11 -- 12 --
17 | 13 -- 14 --
18 | 15 -- 16 --
19 | 17 -- 18 NEMS Warning Light - CRIT
20 | 19 -- 20 --
21 | 21 -- 22 --
22 | 23 NEMS Warning Light - Unknown or WARN 24 NEMS Warning Light - OK
23 | 24 -- 26 --
24 | 27 -- 28 --
25 | 29 -- 30 --
26 | 31 -- 32 --
27 | 33 -- 34 --
28 | 35 -- 36 --
29 | 37 -- 38 --
30 | 39 -- 40 --
31 | ======= ======================================= ======= ===============================
32 |
33 | ********************
34 | Graphical Layout
35 | ********************
36 |
37 | .. figure:: ../img/raspberry-pi-gpio-layout-model-b-plus.png
38 | :width: 400
39 | :align: center
40 | :alt: RPi Pinout
41 |
--------------------------------------------------------------------------------
/docs/advanced/legacyupgrade.rst:
--------------------------------------------------------------------------------
1 | NEMS Migrator: Upgrade NEMS 1.0 or nagiospi to latest NEMS
2 | ==========================================================
3 |
4 | Thanks for being an early-adopter! Whether you're coming from NEMS 1.0
5 | or its predecessor, nagiospi, I want to make it as easy as possible for
6 | you to get the latest and greatest, without having to reconfigure
7 | everything. It's been exciting to see the NEMS project really catching
8 | on, and I endeavor to make it the best it can be. Your suggestions along
9 | the way have helped me focus on some great features for as NEMS
10 | continues to evolve.
11 |
12 | NEMS 1.1+ has a nifty backup and export tool called NEMS Migrator. While
13 | it comes pre-packaged in 1.1+, I designed it specifically to run on
14 | legacy builds as well (NEMS 1.0 or nagiospi), giving you the opportunity
15 | to export your old configuration, deploy the latest version of NEMS, and
16 | then restore the configuration to NEMS. Easy peasy!
17 |
18 | Here's what you need to do:
19 |
20 | .. note:: These instructions are for NEMS 1.0 or nagiospi only. **Do not** do this on NEMS 1.1+ as the tool is already built-in.
21 |
22 | 1. SSH into your legacy NEMS/nagiospi server.
23 |
24 | 2. Become root:
25 |
26 | .. code-block:: console
27 |
28 | sudo su
29 |
30 | 3. Update repository data.
31 |
32 | .. code-block:: console
33 |
34 | apt-get update
35 |
36 | 4. Install Git.
37 |
38 | .. code-block:: console
39 |
40 | apt-get install git
41 |
42 | 5. Install NEMS-Migrator in /tmp.
43 |
44 | .. code-block:: console
45 |
46 | cd /tmp && git clone https://github.com/Cat5TV/nems-migrator
47 |
48 | 6. Create the backup config on your NEMS/nagiospi system.
49 |
50 | If on NEMS 1.0:
51 |
52 | .. code-block:: console
53 |
54 | cd /tmp/nems-migrator && ./backup.sh
55 |
56 | If on nagiospi:
57 |
58 | .. code-block:: console
59 |
60 | cd /tmp/nems-migrator && ./nagiospi2nems.sh
61 |
62 | 7. Download the backup to your computer by opening it in your web
63 | browser. In your favorite web browser, simply add /backup/ to the end
64 | of your NEMS/nagiospi server address. E.G., *http://10.0.0.5/backup/*
65 |
66 | 8. Now that you have your backup.nems file, follow `the instructions to
67 | restore your configuration to a new version of
68 | NEMS <../commands/nems-restore.html>`__.
69 |
--------------------------------------------------------------------------------
/docs/advanced/nems-mesh.rst:
--------------------------------------------------------------------------------
1 | NEMS Mesh: The Self-Hosted NEMS Cloud
2 | =====================================
3 |
4 | NEMS Mesh allows the connection of multiple NEMS Servers together in a pseudo-mesh style self-hosted cloud. This allows sysadmins to place NEMS Servers at client sites but poll and monitor them from one central NEMS Server.
5 |
6 | How You Can Help
7 | ----------------
8 |
9 | NEMS Mesh is under development and will be included in NEMS Linux when it is ready for production use. It requires funding to develop. Please consider `becoming a patron `__ to help fund this exciting feature.
10 |
--------------------------------------------------------------------------------
/docs/advanced/nemsicons.rst:
--------------------------------------------------------------------------------
1 | Copying OS Icons to NEMS
2 | ========================
3 | To add additional or custom OS icons to NEMS, perform the following:
4 |
5 | From a file browser window, open the Home share on the NEMS server (i.e. \\nems_ip\\Home) and log in with your NEMS credentials.
6 |
7 | .. figure:: ../img/icons_02.PNG
8 | :width: 600
9 | :align: center
10 |
11 | Create a folder. In this example, it is "icons"
12 |
13 | .. figure:: ../img/icons_03.PNG
14 | :width: 600
15 | :align: center
16 |
17 | Start an SSH session to the NEMS server and login. The "icons" folder is displayed when ls is run.
18 | Copy the icon images into this new folder.
19 |
20 | .. figure:: ../img/icons_05.PNG
21 | :width: 600
22 | :align: center
23 |
24 | "cd" into the "icons" folder and run ls to verify the icon files are there.
25 | Copy the icon images into this new folder.
26 |
27 | .. figure:: ../img/icons_06.PNG
28 | :width: 600
29 | :align: center
30 |
31 | The icon file can be copied or moved into the /var/www/nconf/img/logos/base folder.
32 |
33 | To copy ``sudo cp *.* /var/www/nconf/img/logos/base``
34 |
35 | To move ``sudo mv *.* /var/www/nconf/img/logos/base``
36 |
37 | .. figure:: ../img/icons_07.PNG
38 | :width: 600
39 | :align: center
40 |
41 | Login to nconf for NEMS.
42 | In this example, the icon for "switch" will be changed.
43 |
44 | .. figure:: ../img/icons_09.PNG
45 | :width: 600
46 | :align: center
47 |
48 | Click on Show for OS, then click on edit (pencil icon) for the OS to be modified.
49 |
50 | .. figure:: ../img/icons_10.PNG
51 | :width: 600
52 | :align: center
53 |
54 | Edit the gif name to the new icon name and click Submit.
55 |
56 | .. figure:: ../img/icons_11.PNG
57 | :width: 600
58 | :align: center
59 |
60 | .. figure:: ../img/icons_12.PNG
61 | :width: 600
62 | :align: center
63 |
64 | Go back to Hosts and verify the icon has changed.
65 |
66 | .. figure:: ../img/icons_13.PNG
67 | :width: 600
68 | :align: center
69 |
70 |
71 | Nagios icon packs
72 | https://exchange.nagios.org/directory/Graphics-and-Logos/Images-and-Logos
73 |
--------------------------------------------------------------------------------
/docs/advanced/nemsupgrade.rst:
--------------------------------------------------------------------------------
1 | Upgrade NEMS Linux to Newer Version
2 | ===================================
3 |
4 | Definition of Version Terms
5 | ---------------------------
6 |
7 | Major Release
8 | ^^^^^^^^^^^^^
9 |
10 | The whole number and first decimal place of any NEMS Linux version
11 | represents the major release. 1.7 is a major release. A major release
12 | requires reinstallation of NEMS Linux. The steps to migrate all your
13 | settings is found below.
14 |
15 | Point Release
16 | ^^^^^^^^^^^^^
17 |
18 | When we designate a version with an 'x', such as NEMS Linux 1.2.x, we
19 | mean anything within the 1.2 rolling release cycle. This means 1.2
20 | (which can also be considered 1.2.0 if desired), 1.2.1, 1.2.2, and
21 | so-on. Point releases within the currently-running major release can be
22 | obtained with the ``sudo nems-upgrade`` command.
23 |
24 | Summary
25 | ^^^^^^^
26 |
27 | 1.7 is a major release. 1.2.1 is the first point release of NEMS Linux's
28 | major release 1.2.
29 |
30 | Major Release Upgrade Instructions
31 | ----------------------------------
32 |
33 | These steps may be followed to upgrade from one major point release to
34 | the next major point release. For example, this process will take you
35 | from NEMS Linux 1.1 to NEMS Linux 1.2, or NEMS Linux 1.2.x to NEMS Linux
36 | 1.3, or even NEMS Linux 1.3 to 1.7, and so-on.
37 |
38 | 1. Connect to your existing NEMS Linux dashboard from your computer and
39 | press Migrator→Backup. That will give you your `backup.nems` file.
40 | 2. Deploy the latest version of NEMS Linux on a **new** card (please use
41 | a new card so you can always revert back to your existing NEMS Linux
42 | if you have a problem).
43 | 3. Boot your NEMS Server with the new NEMS Linux card and initialize it as normal
44 | (instructions are provided via your web browser when you connect).
45 | 4. Once you get to the dashboard simply go through the NEMS Migrator
46 | `nems-restore `__
47 | process to restore your settings from your backup.nems file.
48 |
49 | .. Tip:: To save your backup.nems file to the new installation, you can browse to your home folder using samba (or \\\\nems.local\\home in Windows).
50 |
51 | Rolling Release Upgrade Instructions
52 | ------------------------------------
53 |
54 | A rolling release is a second decimal point release, and rolling
55 | upgrades are available within each major release as made available.
56 | Rolling releases are usually pushed out in order to fix bugs or improve
57 | features. An example of a rolling release would be going from NEMS Linux
58 | 1.2 to 1.2.1, or 1.2.1 to 1.2.3. Once a new NEMS Linux major release is
59 | available, it is recommended to perform a major release upgrade to
60 | ensure you have the latest and greatest NEMS Linux has to offer.
61 |
62 | 1. Login to NEMS Linux via SSH.
63 | 2. Type: ``sudo nems-upgrade``
64 | 3. Reboot.
65 |
66 | **Please Note:** If you receive a notice
67 | that `nems-upgrade <../commands/nems-upgrade.html>`__ is
68 | an unknown program, did you initialize NEMS Linux? Please re-read
69 | the `Initialization
70 | Instructions <../gettingstarted/initialization.html>`__ if that is the
71 | case.
72 |
73 | Legacy Distro Support
74 | ---------------------
75 |
76 | `Upgrade NagiosPi or NEMS 1.0 to the Latest Version of
77 | NEMS `__
78 |
--------------------------------------------------------------------------------
/docs/advanced/resolve_dns_hostnames:
--------------------------------------------------------------------------------
1 | Resolving DNS Hostnames on LAN
2 | ==============================
3 |
4 | NEMS Linux uses two main Linux components to resolve \*.local hostnames:
5 |
6 | 1. **avahi-daemon** - This allows other computers to see NEMS
7 | Linux.local on the
8 | 2. **libnss-mdns** - This allows NEMS Linux to see other \*.local
9 | computers on the
10 |
11 | In order for NEMS Linux to be able to resolve a hostname rather than IP
12 | address, multicast must be enabled on the client system.
13 |
14 | - **Microsoft Windows Target** - If you already have iTunes installed,
15 | you do not need to do anything else (since it's included). Otherwise,
16 | you can install `Apple's Bonjour
17 | service `__ or you
18 | can enable Microsoft's own Link-Local Multicast Name Resolution
19 | (LLMNR) service.
20 | - **Linux Target** - Install *avahi-daemon*. It will automatically
21 | enable itself during installation. It's in your favorite package
22 | manager already.
23 | - **macOS Target** - No need to install anything; it's already
24 | included.
25 |
26 | **Important Note About Firewall** - If the target computer has a
27 | firewall enabled, you'll also need to allow UDP traffic through ports
28 | 5353 and 53791.
--------------------------------------------------------------------------------
/docs/apps/adagios.rst:
--------------------------------------------------------------------------------
1 | ########
2 | Adagios
3 | ########
4 |
5 | Topic content does not yet exist
--------------------------------------------------------------------------------
/docs/apps/cockpit.rst:
--------------------------------------------------------------------------------
1 | Cockpit
2 | =======
3 |
4 | NEMS Linux includes `Cockpit from Red Hat `__. In its NEMS implementation, Cockpit provides browser-based SSH access, some realtime performance graphs, and basic system administration tools such as the ability to reboot or safely shutdown your NEMS server.
5 |
6 | .. figure:: ../img/cockpit-terminal-rpi5.png
7 | :width: 600
8 | :align: center
9 | :alt: Cockpit Terminal
10 |
11 | Cockpit allows terminal access and other system-level tools within a browser session.
12 |
13 | Login to Cockpit
14 | ----------------
15 |
16 | You'll find Cockpit in the System menu on NEMS Dashboard. To login, enter your NEMS Linux username and password.
17 |
18 | **Seeing Disabled Features in Cockpit?**
19 |
20 | When you first login to Cockpit, you will be running in Limited access mode. Simply click the button at the top of the Cockpit window to enable Administrative access:
21 |
22 | .. figure:: ../img/cockpit-limited-access.png
23 | :width: 200
24 | :align: left
25 | :alt: Cockpit Limited Access
26 |
27 | Otherwise your level of access will match the non-elevated user and all features which require root access will be greyed out.
28 |
--------------------------------------------------------------------------------
/docs/apps/mobile.rst:
--------------------------------------------------------------------------------
1 | ######################
2 | NEMS Mobile UI
3 | ######################
4 |
5 | Topic content does not yet exist
--------------------------------------------------------------------------------
/docs/apps/monitorix.rst:
--------------------------------------------------------------------------------
1 | ##########
2 | Monitorix
3 | ##########
4 |
5 | Topic content does not yet exist
--------------------------------------------------------------------------------
/docs/apps/monitservicemonitor.rst:
--------------------------------------------------------------------------------
1 | ################################
2 | Monit Service Monitor
3 | ################################
4 |
5 | Topic content does not yet exist
--------------------------------------------------------------------------------
/docs/apps/nconf.rst:
--------------------------------------------------------------------------------
1 | ######
2 | NConf
3 | ######
4 |
5 | Topic content does not yet exist
--------------------------------------------------------------------------------
/docs/apps/nems-migrator.rst:
--------------------------------------------------------------------------------
1 | NEMS Migrator Local Backup
2 | ==========================
3 |
4 | Introduction
5 | ------------
6 |
7 | SD cards are prone to failure, and NEMS Linux has protections in place
8 | to ensure the longevity of your storage media. However, what happens if
9 | your card does fail?
10 |
11 | NEMS Migrator provides a constant backup of your NEMS Server's
12 | configuration, which can be backed up locally or
13 | `in NEMS Cloud Services <../nems-cloud-services/nems-migrator.html>`__
14 | (or both). Restoring your NEMS Migrator backup gets your configuration
15 | back online within minutes.
16 |
17 | Combined with `NEMS
18 | CheckIn <../nems-cloud-services/checkin.html>`__ to notify you
19 | in event of failure, NEMS Migrator is an excellent way to ensure your
20 | NEMS Server is protected against failure.
21 |
22 | Local Backups
23 | -------------
24 |
25 | Backup
26 | ~~~~~~
27 |
28 | Your NEMS Linux server automatically generates a backup of your
29 | configuration ready for you to download at any time.
30 |
31 | Your NEMS Migrator backup (filename: *backup.nems*) contains your NEMS
32 | server configuration, allowing you to quickly re-deply on a new NEMS
33 | server or re-flashed device without having to re-create your Nagios
34 | configuration manually.
35 |
36 | A NEMS Migrator backup is proprietary to NEMS. It is not intended for
37 | user consumption, but rather can be used to restore NEMS Linux to a
38 | previous configuration, or quickly rebuild after an SD card failure (for
39 | example).
40 |
41 | NEMS Migrator will check your backup status every few minutes. If the
42 | backup is older than 30 minutes, it will replace your backup.nems file
43 | with a current snapshot. Therefore you know that if you make a copy of
44 | your backup.nems file, it is no older than 30 minutes. If however you
45 | make changes to your configuration, those changes may not appear in your
46 | backup for up to 30 minutes.
47 |
48 | To use NEMS Migrator to upgrade from an earlier version of NEMS Linux
49 | (or even NagiosPi), please read `Upgrade NEMS Linux to Newer
50 | Version <../advanced/nemsupgrade.html>`__.
51 |
52 | To automate your NEMS Migrator backup, please see `Backup Your NEMS
53 | Configuration
54 | Automatically <../basic/backupnems.html>`__ for
55 | helpful resources and tips.
56 |
57 | Restore
58 | ~~~~~~~
59 |
60 | Please
61 | see `nems-restore <../commands/nems-restore.html>`__.
62 |
--------------------------------------------------------------------------------
/docs/apps/nems-sst.rst:
--------------------------------------------------------------------------------
1 | NEMS System Settings Tool (SST)
2 | ===============================
3 |
4 | .. note:: NEMS SST requires NEMS Linux 1.3+
5 |
6 | Gone are the days of manually editing your Nagios *resource.cfg* file.
7 |
8 | NEMS SST provides a web-based GUI to allow easy configuration of system
9 | settings such as SMTP server settings.
10 |
11 | To access NEMS SST, click Configuration→NEMS System Settings Tool.
12 |
13 | To login, use your NEMS username and password as configured
14 | during `nems-init <../commands/nems-init.html>`__.
15 |
16 | Custom Appearance
17 | ------------------
18 |
19 | Beginning in NEMS Linux 1.5, NEMS SST features the ability to change the
20 | background on some NEMS screens.
21 |
22 | .. raw:: html
23 |
24 |
25 |
26 | **Background Selection** allows you to select from the following:
27 |
28 | - *Daily Image* (default) - Load a new image every day.
29 | - *Daily Color* - Load a new background base color every day, based on
30 | the color pallet of the daily image.
31 | - *NEMS Legacy* - Classic server room image from NEMS Linux 1.4.
32 | - *Custom Color* - Choose your own base color to use for the
33 | background.
34 | - *Upload Image* - Upload your own preferred wallpaper image.
35 |
36 | **Blur Background Selection** allows you to add a blur effect to
37 | background images:
38 |
39 | - *Slight Blur* will add a subtle Gaussian blur to the background
40 | image.
41 | - *Medium Blur* will add a more pronounced blur to the background
42 | image.
43 | - *Heavy Blur* will blur the background image so heavily that only the
44 | color scheme of the image is recognizable.
45 |
46 | TV Dashboard
47 | ------------
48 |
49 | You can turn it on and off again.
50 | (Placeholder for a ref in TV Dashboard page)
51 |
--------------------------------------------------------------------------------
/docs/apps/nems-tv.rst:
--------------------------------------------------------------------------------
1 | NEMS TV Dashboard
2 | =================
3 |
4 | Introduction
5 | ------------
6 |
7 | NEMS TV Dashboard provides a tactical display specifically designed for
8 | single-screen TV display where a keyboard/mouse are not used. Ideal
9 | as a status monitor in your server room, NEMS
10 | TV Dashboard will report all unacknowledged host and service alerts as
11 | they occur.
12 |
13 | Screenshot
14 | ~~~~~~~~~~
15 |
16 | .. figure:: ../img/tv_dashboard_1.4.1.png
17 | :width: 600
18 | :align: center
19 | :alt: Nems Dashboard Screenshot circa NEMS Linux 1.4.1
20 |
21 | Usage
22 | -----
23 |
24 | To use NEMS TV Dashboard, simply connect a computer (E.G., Raspberry Pi
25 | Zero) to your TV display and open ``https://nems.local/tv`` in the
26 | browser.
27 |
28 | Fullscreen Mode
29 | ---------------
30 |
31 | Ideally, make NEMS TV Dashboard fullscreen by pressing F11. Press it
32 | again to restore the window.
33 |
34 | Security
35 | --------
36 |
37 | For convenience and usability, NEMS TV Dashboard does not prompt for
38 | your NEMS username and password by default. If you prefer to keep the
39 | Dashboard private, please open `NEMS
40 | SST <./nems-sst.html#tv-dashboard>`__ and turn off “Allow
41 | TV Dashboard Without Password” - but make sure you have a keyboard
42 | connected to the computer connected to your TV (or something like VNC
43 | access) to login.
44 |
45 | Under The Hood
46 | --------------
47 |
48 | NEMS TV Dashboard uses the Check_MK Livestatus socket in the back-end,
49 | making it fast, efficient, and lightweight.
50 |
51 | Requirements
52 | ------------
53 |
54 | - NEMS Linux 1.4.1+
55 | - A display of some sort, connected to a computer/SBC with Web Browser
56 | and network connection with access to NEMS server.
57 | - NEMS TV Dashboard requires a modern web browser to operate. If you
58 | experience issues, please test in a different browser.
59 | - NEMS Linux 1.6+ to include Internet speedtest at all times.
60 |
61 | Source Code
62 | -----------
63 |
64 | `nems-tv on Github `__ is based on
65 | *merlin-dashboard* by fnordpojk. Licensed under
66 | `GPL v3 `__.
67 |
--------------------------------------------------------------------------------
/docs/apps/serveroverview.rst:
--------------------------------------------------------------------------------
1 | NEMS Server Overview
2 | ====================
3 |
4 | NEMS Server Overview, found in the Configuration menu of NEMS Dashboard,
5 | is an at-a-glance overview of some important information about your NEMS
6 | Server.
7 |
8 | On this screen, you can obtain your unique NEMS Hardware ID (HWID), IP
9 | address, and other useful information about your running NEMS Server.
10 |
11 | You may also review what anonymous data NEMS Linux shares with the NEMS
12 | API.
13 |
14 | .. figure:: ../img/nems-server-overview.png
15 | :width: 600
16 | :align: center
17 | :alt: NEMS Server Overview
18 |
19 | NEMS Server Overview screen circa NEMS Linux 1.6.
20 |
--------------------------------------------------------------------------------
/docs/apps/tactical_overview.rst:
--------------------------------------------------------------------------------
1 | ###############################
2 | NEMS Tactical Overview
3 | ###############################
4 |
5 | Topic content does not yet exist
--------------------------------------------------------------------------------
/docs/basic/9590.rst:
--------------------------------------------------------------------------------
1 | Features: Port 9590
2 | ===================
3 |
4 | Introduction
5 | ------------
6 |
7 | Port 9590 is a dummy listener on all NEMS 1.4.1+ servers.
8 |
9 | This listener does nothing but reply to TCP requests when it is up. Its
10 | purpose is to provide a safe port to enable and disable while learning
11 | how to use the check
12 | command `check_tcp <../basic/checktcp.html>`__.
13 |
14 | Disable 9590
15 | ------------
16 |
17 | To disable 9590 temporarily, open its process in Monit Service Monitor
18 | and choose “Stop service”. It will however resume normal operation at
19 | next reboot.
20 |
21 | To disable 9590 permanently, first stop it with Monit (otherwise Monit
22 | will re-run the service once it detects it is not running). Then, open
23 | an SSH connection to your NEMS server and type:
24 |
25 | sudo systemctl disable 9590
26 |
27 | To see how 9590 works, simply review `the source
28 | code `__.
29 |
--------------------------------------------------------------------------------
/docs/basic/connect_via_ssh.rst:
--------------------------------------------------------------------------------
1 | Connect to NEMS Server Over SSH
2 | -------------------------------
3 |
4 | The first time you connect to your NEMS server you will use the
5 | `nemsadmin <../basic/default_password.html>`__ account.
6 |
7 | After you have successfully `initialized NEMS <../gettingstarted/initialization.html>`__,
8 | you will instead use the account you create during that process.
9 |
10 | Linux, Microsoft Windows or macOS
11 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 |
13 | - Open a terminal window ("command prompt" on Windows).
14 | - Type: ``ssh nemsadmin@nems.local``
15 |
--------------------------------------------------------------------------------
/docs/basic/default_password.rst:
--------------------------------------------------------------------------------
1 | NEMS Administrator User
2 | =======================
3 |
4 | Default Username and Password
5 | -----------------------------
6 |
7 | The default username on a fresh installation of NEMS Linux is ``nemsadmin``.
8 | This is used to sign-in to your NEMS Server (over SSH or keyboard connected
9 | to your NEMS Server) only until you
10 | run `nems-init <../commands/nems-init.html>`__.
11 |
12 | **Username:** ``nemsadmin``
13 |
14 | **Password:** ``nemsadmin``
15 |
16 | Post-Initialization
17 | -------------------
18 |
19 | Once your ``nems-init`` process is complete, you will need to instead
20 | sign-in as your newly created account (which you specify
21 | during *nems-init*).
22 |
23 | When you initialize NEMS, you will provide a password for the NEMS web
24 | interfaces. This username/password will be what you use to access NEMS
25 | features (eg., nCONF, Nagios Core, NagVis, Check_MK, Samba, Webmin, SSH,
26 | etc.).
27 |
28 | .. Warning:: **Do not** use the traditional *passwd* command to change your NEMS
29 | administrator's password. Doing so will leave your system in a broken
30 | state (which can be fixed by running the correct command). Instead,
31 | use ``sudo nems-passwd``
32 |
33 | Multiple User Environments
34 | --------------------------
35 |
36 | At present, NEMS Linux is single-tenant. This means that if you wish to give
37 | one of your staff access to your NEMS Server, you would need to give them
38 | your NEMS Administrator credentials. This will change as NEMS Linux evolves.
39 | Please consider supporting the project `on Patreon `__
40 | to help fund the development of NEMS Linux.
41 |
42 | Browser Reports Compromized Password
43 | ------------------------------------
44 |
45 | The default ``nemsadmin`` password is a generic, single-use password that allows you
46 | to initialize your NEMS Administrator account / set your own password out-of-the-box.
47 | It is not left enabled on your NEMS Server, nor is your NEMS Server ever available to
48 | the outside world (unless you specifically do so, which is _not_ recommended). Use
49 | best practices, and never setup your NEMS Server to be publicly accessible.
50 |
--------------------------------------------------------------------------------
/docs/basic/power_controller.rst:
--------------------------------------------------------------------------------
1 | Reboot or Power Off NEMS Server
2 | ###############################
3 |
4 | NEMS Power Controller
5 | *********************
6 |
7 | NEMS Linux (since version 1.7) includes NEMS Power Controller.
8 | From within NEMS Power Controller, you can safely reboot or power
9 | off your NEMS Server. This is the preferred method on modern NEMS Servers
10 | since it waits for NEMS tasks (such as updates) to complete before shutting
11 | down.
12 |
13 | .. figure:: ../img/ss_NEMS_Power_Controller.png
14 | :alt: NEMS Power Controller Screenshot
15 |
16 | You'll find NEMS Power Controller on the "System" menu.
17 |
18 |
19 | Cockpit
20 | *******
21 |
22 | On legacy NEMS Servers, login to Cockpit with Administrator access enabled
23 | and look for the power options in the top right.
24 |
25 | .. figure:: ../img/ss_Cockpit_Power.png
26 | :alt: Using Cockpit to Reboot or Power Off
27 |
28 | You'll find Cockpit on the "System" menu.
29 |
--------------------------------------------------------------------------------
/docs/changelogs/1.0.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux 1.0 Changelogs (2016)
2 | ================================
3 |
4 | NEMS Linux 1.0 was released May 8, 2016 and discontinued November 13, 2016. This initial version of NEMS Linux was downloaded 409 Times.
5 |
6 | * Initial release. Built and tested on Raspberry Pi 3. Based on Raspbian Jessie. Inspired by NagiosPi, which in April 2016 was still running on the old Raspbian Wheezy. I started this new distro since NagiosPi seems to be out of date, and I want to have an easy drop-in Nagios img for the Raspberry Pi. Figured I’d share it with the world while I’m at it since there are probably others (possibly less tech savvy) who might want the same thing. I decided to leave most of the settings the same as NagiosPi (eg., usernames, passwords) so those coming from that distro can seamlessly transition, or so if NagiosPi wants to use our build to bring things up to date, they may do so with minimal effort.
7 | * This initial build is using default repositories in a lot of cases and is meant to be rock-solid, not bleeding edge (eg., Nagios 3.5.1 instead of Nagios 4.1.1.
8 | * Using the rpi-4.4.y Linux kernel tree (Currently 4.4.7-v7+ #876 SMP), firmware updated to 1e84c2891c1853a3628aed59c06de0315d13c4f1. Use rpi-update to check for upgrades, if needed.
9 | * Includes rpi-update tool - an easier way to update the firmware on the Raspberry Pi - See https://github.com/Hexxeh/rpi-update
10 | * On-board Bluetooth disabled due to potential stability issues. Use rpi-update to check for kernel updates and see if it is fixed, and then edit /boot/config.txt to re-enable. Until they fix it, use USB Bluetooth dongle if needed.
11 | * Installed and configured: mysql-server mysql-client phpmyadmin apache2 nagios3 nagios-nrpe-plugin
12 | * To keep things consistent for those coming from NagiosPi, I have used the same passwords. MySQL is: User: root Pass: nagiosadmin
13 | * Installed w3m web browser to allow local testing in terminal: w3m localhost/phpmyadmin
14 | * Manually installed NConf 1.3.0-0 “Final”, an Enterprise Nagios configuration tool. This tool was broken on NagiosPi’s instructions due to a missing symlink at /var/www/nconf, so I fixed that in my version. Access NConf via the “Configure Nagios” link on the main menu.
15 | * Includes `NagVis 1.7 `__ - want to do 1.9 but not until out of beta.
16 | * Built and integrated the first version of our menu system, which includes the first version of a custom Nagios skin to begin integrating a more modern interface. Menu accessible at http://nems/ (or http://IPADDRESS if that doesn’t work for you)
17 | * Added `a nice little MOTD `__.
18 | * Added a simple cronjob to check our web site for the currently available version and warn you if yours is out of date.
19 |
--------------------------------------------------------------------------------
/docs/changelogs/1.1.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux 1.1 Changelogs (2016-2017)
2 | =====================================
3 |
4 | NEMS Linux 1.1 was released November 13, 2016 and discontinued May 6, 2017. This version of NEMS Linux was downloaded 979 times during its 6-month lifetime.
5 |
6 | * NagVis upgraded to 1.8.5. (1.9 is still beta).
7 | * Check_MK livestatus upgraded to 1.2.8p13.
8 | * Added Check_MK Multisite 1.2.8p13.
9 | * Added PNP4Nagios 0.6.16-2.
10 | * Added a few sample configurations to NConf to help users figure out the initial setup and/or to use as templates. Included samples are: test if an external web site is up via ping, monitor a Linux server, monitor a Windows server.
11 | * Created NEMS Linux Migrator. New feature allows backing up and restoring your NEMS Linux configuration, making migration or recovery a breeze.
12 | * Added sendemail 1.56-5 and setup email config in /etc/nagios3/resource.cfg (you’ll need to add your SMTP info as per the instructions above).
13 | * Added git, htop.
14 | * raspi-config upgraded to 20161108.
15 | * Linux kernel upgraded to 4.4.26-v7.
16 | * Apache2 upgraded to 2.4.10-10+deb8u7.
17 | * OpenSSL upgraded to 1.0.1t-1+deb8u5.
18 | * MySQL upgraded to 5.5.52-0+deb8u1.
19 | * Exim4 upgraded to 4.84.2-2+deb8u1.
20 | * PHP upgraded to 5.6.27-0+deb8u1.
21 | * PHPMyAdmin upgraded to 4.2.12-2+deb8u2.
22 | * Python upgraded to 2.7.9-2+deb8u1.
23 | * Network and Bluetooth firmwares upgraded.
24 | * Various system components upgraded.
25 | * Reduced the amount of memory dedicated to Raspberry Pi graphics adapter.
26 |
--------------------------------------------------------------------------------
/docs/changelogs/1.3.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux 1.3 Changelogs (2017-2018)
2 | =====================================
3 |
4 | https://web.archive.org/web/20200921052539/https://docs.nemslinux.com/changelogs/nems_1.3
5 |
--------------------------------------------------------------------------------
/docs/changelogs/1.4.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux 1.4 Changelogs (2018-2019)
2 | =====================================
3 |
4 | https://web.archive.org/web/20201020122328/https://docs.nemslinux.com/changelogs/nems_1.4
5 |
--------------------------------------------------------------------------------
/docs/changelogs/1.8.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux 1.8 Changelogs
2 | =========================
3 |
4 | NEMS 1.8 is a future release.
5 |
6 | **Key Development Features and Goals:**
7 |
8 | - **Firewall** - NEMS Linux to include `ConfigServer Security &
9 | Firewall (csf) with Login Failure Daemon (lfd)`_. Internal LAN IP
10 | addresses are whitelisted by default, but if a user tries to access
11 | your NEMS server from outside the LAN (ie., if you have your NEMS
12 | server accessible on the Internet) they will get locked out if they
13 | try an incorrect password too many times.
14 | - Add IPMI (freeipmi) if not added already.
15 | - Begin work on smart home assistant integration: NEMS Skill for Alexa
16 | and Google Assistant.
17 | - **Firewall** - NEMS Linux to include `ConfigServer Security &
18 | Firewall (csf) with Login Failure Daemon (lfd)`_. Internal LAN IP
19 | addresses are whitelisted by default, but if a user tries to access
20 | your NEMS server from outside the LAN (ie., if you have your NEMS
21 | server accessible on the Internet) they will get locked out if they
22 | try an incorrect password too many times.
23 |
24 | - Add IPMI (freeipmi) if not added already.
25 |
--------------------------------------------------------------------------------
/docs/changelogs/index-nems.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux Changelogs
2 | =====================
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: NEMS Linux Changelogs
7 |
8 | 1.7
9 | 1.6
10 | 1.5
11 | 1.4
12 | 1.3
13 | 1.2
14 | 1.1
15 | 1.0
16 |
--------------------------------------------------------------------------------
/docs/changelogs/index-nemseos.rst:
--------------------------------------------------------------------------------
1 | NEMSeOS Changelogs
2 | ==================
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: NEMSeOS Changelogs
7 |
8 | nemseos_0
9 |
--------------------------------------------------------------------------------
/docs/changelogs/nemseos_0.rst:
--------------------------------------------------------------------------------
1 | NEMSeOS 0 Changelogs
2 | ====================
3 |
4 | **December 1, 2020** - NEMSeOS 0.1 alpha Build 1.
5 |
6 | Features:
7 |
8 | - If no configuration found, auto-detect running NEMS Server
9 | | on same subnet when network connection is extablished.
10 | - Ability to extend all GPIO pins hi/low value from running
11 | | NEMS Server.
12 | - At release time, NEMS Warning Light GPIO pins, plus Omzlo
13 | | Warning Light pHAT are supported.
14 | - Accessing IP address of NEMSeOS in browser will show state,
15 | | including an interval provided by the NEMS Server which
16 | | counts up with each iteration. This makes it easy to see
17 | | if your NEMS GPIO Extender has stopped transmitting or
18 | | receiving (as the counter would stop).
19 | - Basic error handling included to show in browser if a
20 | | connection cannot be established.
21 | - Manually editing the ``nems-tools.conf`` file from any
22 | | Linux machine is possible by mounting the SD card's
23 | | *boot* partition.
24 | - Editing your config file manually allows you to connect
25 | | to a NEMS Server on a different network, even WAN (Internet).
26 | - NEMSeOS 0.1 alpha contains Cockpit running on port 9090 and
27 | | accessible from within your browser. Username/Password are
28 | | pi/raspberry. This is only included during alpha/beta testing
29 | | and will later be removed once the system is stable and can be
30 | | run fully as an appliance. Cockpit can be used for now to
31 | | login to the device's terminal, or safely shut down the NEMSeOS
32 | | device.
33 |
34 | Changelogs since Build 1
35 |
36 | - Add i2c support to enable access to Omzlo Warning Light pHAT.
37 |
--------------------------------------------------------------------------------
/docs/check_commands/check_1wire_temp.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_1wire_temp
2 | ===============================
3 |
4 | 1-wire devices are a cheap and simple way to monitor temperature. Each 1-wire device has a unique serial number that allows multiple devices to communicate on one bus.
5 |
6 | check_1wire_temp is a Nagios plugin that is used to monitor temperature using a 1-wire device such as the DS18S20.
7 |
8 | check_1wire_temp is included in NEMS NConf and can be added to any compatible 1-wire temperature device connected to your NEMS Linux server.
9 |
10 | CLI Example
11 | ~~~~~~~~~~~
12 |
13 | `check_1wire_temp -v -h -l low_temp_warn -L low_temp_crit -w high_temp_warn -H high_temp_crit`
14 |
15 | Requirements
16 | ~~~~~~~~~~~~
17 |
18 | Requires NEMS Linux 1.6+.
19 |
20 | Source
21 | ~~~~~~
22 | From https://exchange.nagios.org/directory/Plugins/Hardware/Environmental/1-2DWire-Temperature-Check/details
23 |
--------------------------------------------------------------------------------
/docs/check_commands/check_apc.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_apc
2 | ========================
3 |
4 | APC UPS's use SNMPv1. You can configure SNMP for your UPS from its web
5 | interface or within your UPS's configuration software client.
6 |
7 | *check_apc* provides performance data and range monitoring for a wide
8 | series of data and a large number of APC UPS's, including Symmetra and
9 | SmartUPS models.
10 |
11 | This check command requires NEMS Linux 1.6+.
12 |
13 | check_apc Available Command Arguments
14 | -------------------------------------
15 |
16 | - ``id`` - Return the UPS model name (e.g. 'APC Smart-UPS 600') and interlan info
17 | about Firmware, CPU S/N and manufacturing date
18 | - ``bat_status`` - Return the status of the UPS batteries
19 | - ``bat_capacity`` - Return the remaining battery capacity expressed in percent of full
20 | capacity
21 | - ``bat_temp`` - Return the current internal UPS temperature expressed in Celsius
22 | - | ``bat_run_remaining`` - Return the UPS battery run time remaining before battery exhaustion
23 | | **Note:** thresholds must be expressed in minutes
24 | - ``bat_replace`` - Return whether the UPS batteries need replacing
25 | - ``bat_num_batt`` - Return the number of external battery packs connected to the UPS
26 | - ``bat_num_bad_batt`` - Return the number of external battery packs connected to the UPS that
27 | are defective
28 | - | ``bat_act_volt`` - Return the actual battery bus voltage in Volts
29 | | **Note:** thresholds must be expressed in range as nearest values. ex:
30 | | normal=220, warning=215:225, critical=210:230
31 | | Additionally, the checks will look for Nominal Voltage (as returned
32 | | by the UPS), and exit as CRITICAL if Actual Voltage is LOWER or Equal
33 | - ``power_modules`` - Return the status of the Power Modules
34 | - ``in_phase`` - Return the current AC input phase
35 | - | ``in_volt`` - Return the current utility line voltage in VAC
36 | | **Note** thresholds must be expressed in range as nearest values. ex:
37 | | normal=220, warning=215:225, critical=210:230
38 | - | ``in_freq`` - Return the current input frequency to the UPS system in Hz
39 | | **Note:** thresholds must be expressed in range as nearest values. ex:
40 | | normal=50, warning=45:55, critical=40:60
41 | - ``out_status`` - Return the current state of the UPS
42 | - ``out_phase`` - Return the current output phase
43 | - | ``out_volt`` - Return the output voltage of the UPS system in VAC
44 | | **Note:** thresholds must be expressed in range as nearest values. ex:
45 | | normal=220, warning=215:225, critical=210:230
46 | - | ``out_freq`` - Return the current output frequency of the UPS system in Hz
47 | | **Note:** thresholds must be expressed in range as nearest values. ex:
48 | | normal=50, warning=45:55, critical=40:60
49 | - ``out_load`` - Return the current UPS load expressed in percent of rated capacity
50 | - ``out_current`` - Return the current in amperes drawn by the load on the UPS
51 | - ``comm_status`` - Return the status of agent's communication with UPS.
52 |
53 | If no command is supplied, the script returns OKAY with the UPS model
54 | information.
55 |
--------------------------------------------------------------------------------
/docs/check_commands/check_ibmi.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_ibmi*
2 | ==========================
3 |
4 | Check Commands
5 | ~~~~~~~~~~~~~~
6 |
7 | .. list-table:: IBM i Check Commands in NEMS Linux
8 | :widths: 25 75
9 | :header-rows: 1
10 |
11 | * - Command Name in NEMS NConf
12 | - Description
13 | * - check_ibmi_cpu
14 | - Check the CPU utilization of the entire IBM i host.
15 | * - check_ibmi_job_cpu
16 | - Check the CPU usage of a specific job.
17 | * - check_ibmi_overload_jobs
18 | - Retrieve the number of jobs that exceeds the expected CPU usage.
19 | * - check_ibmi_temp_jobs
20 | - Retrieve top jobs that have the most temp storage usage. Number of jobs is user configurable.
21 | * - check_ibmi_jobs
22 | - Check the number of active jobs.
23 | * - check_ibmi_disk_config
24 | - Report the disk configuration of the host.
25 | * - check_ibmi_disk_usage
26 | - Disk usage.
27 | * - check_ibmi_asp_usage
28 | - Retrieve the ASP usage percentage of the entire system.
29 | * - check_ibmi_disk
30 | - Disk utilization.
31 | * - check_ibmi_messages
32 | - Check IBM i messages. **I do not know what the 'ty' argument represents. If you know, please message me or create a PR.**
33 | * - check_ibmi_message
34 | - Check if a specific message (by Message ID) exists in a specific message queue. May be a comma-separated list of Message IDs.
35 | * - check_ibmi_page_faults
36 | - Check for page faults.
37 | * - check_ibmi_subjobs
38 | - Number of subsystem jobs.
39 | * - check_ibmi_sql
40 | - Retrieve the longest running SQL.
41 | * - check_ibmi_sql_custom
42 | - The user could leverage SQL services to create self-defined matrix. That's what the manual says. Someone, please clarify.
43 | * - check_ibmi_users
44 | - Report the number of users currently logged in (no thresholds or notifications).
45 | * - check_ibmi_info
46 | - Report basic info about the IBM i host.
47 | * - check_ibmi_integration
48 | - Check if the IBM i NEMS Linux integration daemon is running. If not, make sure you enabled it in NEMS SST (it is disabled by default).
49 |
50 | Configuration
51 | ~~~~~~~~~~~~~
52 |
53 | NEMS Linux includes the command `add_ibmi` to allow you to easily configure the credentials for
54 | your IBM i Host or SST. To run it, access your NEMS Linux terminal and type `sudo add_ibmi`
55 |
56 | Once you have added the credentials, you may proceed to add the host to NEMS NConf as usual. Be
57 | sure to add the IBM_i host template to your host configuration in NEMS NConf.
58 |
59 | Environment
60 | -----------
61 |
62 | GROUP PTF
63 | - V7R1: SF99701 LEVEL 38
64 | - V7R2: SF99702 LEVEL 16
65 | - V7R3: SF99703 LEVEL 4
66 |
67 | USER PROFILE
68 | - check-ibmi-long-run-sql needs *ALLOBJ
69 | - check-ibmi-disk-config needs *ALLOBJ,*SERVICE,*IOSYSCFG
70 |
71 | PORT
72 | - as-central 8470
73 | - as-database 8471
74 | - as-dtaq 8472
75 | - as-file 8473
76 | - as-netprt 8474
77 | - as-rmtcmd 8475
78 | - as-signon 8476
79 | - as-svrmap 449
80 |
81 | Requirements
82 | ~~~~~~~~~~~~
83 |
84 | Requires NEMS Linux 1.6+.
85 |
86 | Source
87 | ~~~~~~
88 | From https://www.ibm.com/support/pages/setting-nagios-plug-ibm-i
89 |
--------------------------------------------------------------------------------
/docs/check_commands/check_ilo2_health.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_ilo2_health
2 | =================================
3 |
4 | Check hardware health of HP Proliant Servers by querying the HPE
5 | Integrated Lights-Out (iLO) 2/3/4/5 Management Controller.
6 |
7 | No need for snmp or installation of software.
8 |
9 | Checks if all sensors are ok, returns warning on high temperatures
10 | and fan failures and critical on overall health failure.
11 |
12 | **Note:** The plugin shows only temperature sensors by default.
13 | Faulty hardware components are only listed if iLO returns an error state.
14 |
15 | The plugin makes use of the HP Lights-Out XML scripting interface.
16 |
17 | Arguments [Optional]
18 | --------------------
19 |
20 | - :code:`-e`: plugin ignores "syntax error" messages in the XML output. This may help for older firmwares.
21 | - :code:`-n`: output without temperature listing.
22 | - :code:`-d`: add PerfParse compatible temperature output.
23 | - :code:`-v`: print out the full XML output from the BMC.
24 | - :code:`-3`: support for iLO3|4
25 | - :code:`-a`: check fan redundancy (only some models)
26 | - :code:`-c`: check drive bays (only some models)
27 | - :code:`-o`: check power redundancy (only some models)
28 | - :code:`-b`: temperature output with location
29 | - :code:`-l`: parse iLO eventlog
30 | - :code:`-b`: show temperature with location
31 | - :code:`-x`: ignore battery missing
32 | - :code:`-i`: ignore NIC Link Down status (iLO4).
33 | - :code:`-g`: display additional infos like firmware version and servername (may need increased timeout!)
34 | - :code:`-f`: read input from file instead from iLO, possible to feed -v output to it
35 | - :code:`--sslopts`: Defaults to 'SSL_verify_mode => SSL_VERIFY_NONE'. Use 'SSL_verify_mode => SSL_VERIFY_NONE, SSL_version => "TLSv1"' to avoid TLS Downgrade bug.
36 |
37 | Source
38 | ------
39 |
40 | - https://exchange.nagios.org/directory/Plugins/Hardware/Server-Hardware/HP-%28Compaq%29/check_ilo2_health/details
41 |
--------------------------------------------------------------------------------
/docs/check_commands/check_internet_speed.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_internet_speed
2 | ===================================
3 |
4 | Tests the speed of your Internet connection.
5 |
6 | Demo Data
7 | ---------
8 |
9 | Out of the box, NEMS Linux 1.5+ will check the Internet connectivity speed
10 | using `Cloudflare's Speed Test `__ service.
11 | By default, warning notifications will be generated if your upload or
12 | download speed falls below 10 Mb/s and Critical warnings if either falls
13 | below 7 Mb/s. These are just sample thresholds which can (and should) be
14 | modified to suit your connection speed by modifying the service in NEMS NConf.
15 |
16 | Data Usage Warning
17 | ------------------
18 |
19 | **Every time the speedtest runs, anywhere from 100-400 MB of data is
20 | transferred** (depending on your connection speed). Since the sample
21 | service is set to check every 30 minutes while in a good state, that
22 | could be nearly 5GB of data per day. If your Internet is slow, the sample
23 | service will check (retry) every 5 minutes, increasing the bandwidth
24 | usage significantly.
25 |
26 | While in most cases this is fine, you *must* modify your thresholds to
27 | suit your connection, and modify your service schedule if you have
28 | limited or pay-per-use bandwidth.
29 |
30 | Logging
31 | --------
32 |
33 | A cache log is saved at /var/log/nems/speedtest.log whenever the script
34 | is run. In NEMS Linux 1.6+, this cache is used by NEMS TV Dashboard to
35 | display current Internet speed.
36 |
37 | The format of this multi-line cache file is as follows:
38 |
39 | | State of service
40 | | Ping time
41 | | Ping measurement
42 | | Download speed
43 | | Download speed measurement
44 | | Upload speed
45 | | Upload speed measurement
46 |
47 | Troubleshooting
48 | ---------------
49 |
50 | **Service check timed out after [number] seconds**
51 |
52 | If you are receiving a service check timeout and are certain you do indeed have
53 | Internet connectivity, the most likely culprit is that your NEMS Server is unable
54 | to process the speedtest within 120 seconds. A Raspberry Pi 4 with a reasonably
55 | fast MicroSD card should be able to perform a speedtest in under 40 seconds. Please
56 | upgrade your NEMS Server to an officially-supported platform. Power users may increase
57 | the value of `service_check_timeout` in `/usr/local/nagios/etc/nagios.cfg` however
58 | this may result in cascading checks, which will bring a low-powered SBC to its knees.
59 | You are much safer to upgrade to a board that meets your requirements.
60 |
--------------------------------------------------------------------------------
/docs/check_commands/check_iperf3.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_iperf / check_iperf3
2 | ==========================================
3 |
4 | Monitor the speed between network links using the Linux `iperf` or `iperf3` command respectively.
5 |
6 | Arguments
7 | ---------
8 |
9 | ``Critical`` A number representing the low unit result to treat service as critical.
10 |
11 | ``Warning`` A number representing the low unit result to treat service as warning.
12 |
13 | ``Speed [Optional]`` Set the test speed (E.g., 40M or 1G).
14 |
15 | Source
16 | ------
17 |
18 | - https://exchange.nagios.org/directory/Plugins/Network-Connections%2C-Stats-and-Bandwidth/check_iperf/details
19 | - https://exchange.nagios.org/directory/Plugins/Network-Connections,-Stats-and-Bandwidth/check_iperf3/details
20 |
--------------------------------------------------------------------------------
/docs/check_commands/check_mikrotik.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_mikrotik
2 | =============================
3 |
4 | Commands
5 | --------
6 |
7 | check_mikrotik_voltage
8 | ~~~~~~~~~~~~~~~~~~~~~~
9 |
10 | Warning Voltage
11 | Critical Voltage
12 |
13 | check_mikrotik_cpu
14 | ~~~~~~~~~~~~~~~~~~
15 |
16 | Warning CPU %
17 | Critical CPU %
18 |
19 | check_mikrotik_temp
20 | ~~~~~~~~~~~~~~~~~~~
21 |
22 | Warning Temperature
23 | Critical Temperature
24 |
25 | check_mikrotik_port_sum
26 | ~~~~~~~~~~~~~~~~~~~~~~~
27 |
28 | check_mikrotik_port_sum -ARG1 -ARG2
29 |
30 | - *ARG1: Test Name*
31 | - cpu
32 | - activeFan
33 | - voltage
34 | - temperature
35 | - processorTemperature
36 | - current
37 | - powerConsumption
38 | - psu1State
39 | - psu2State
40 | - disk
41 | - diskTotal
42 | - diskUsed
43 | - mem
44 | - memTotal
45 | - memUsed
46 | - portName
47 | - portOperState
48 | - portAdminState
49 | - portMtu
50 | - portMacAddress
51 | - portRxDiscards
52 | - portTxDiscards
53 | - portTxErrors
54 | - portRxErrors
55 | - portRxPackets
56 | - portTxPackets
57 | - portTxBytes
58 | - portRxBytes
59 | - *ARG2: Switch Ports*
60 | - Can be single, multiple and ranges possible, for example: 1, 5-10, 22-24
61 |
62 | check_mikrotik_port_info
63 | ~~~~~~~~~~~~~~~~~~~~~~~~
64 |
65 | Same as check_mikrotik_port_sum but output info without any thresholds.
66 |
67 | Sample Services
68 | ---------------
69 |
70 | These need to be converted for NEMS NConf.
71 |
72 | **Check Voltage**
73 |
74 | This will check each host that is listed in the MikroTik Switches group. It will issue a warning if the voltage is below 23V or above 26V and a critical error if it is below 22V or above 27V
75 |
76 | .. code-block:: console
77 |
78 | define service {
79 | use generic-service
80 | hostgroup_name MikroTik Switches
81 | service_description MikroTik Voltage
82 | check_command check_mikrotik_voltage!23:26!22:27
83 | }
84 |
85 | **Check TX Errors**
86 |
87 | This test adds up all tx-errors on ports 1-25 (all ports on a CRS125-24G-1S).
88 |
89 | .. code-block:: console
90 |
91 | define service {
92 | use generic-service
93 | hostgroup_name MikroTik Switches
94 | service_description MikroTik TX Errors
95 | check_command check_mikrotik_port_sum!portTxErrors!1-25!10!50
96 | }
97 |
98 | **Port Names**
99 |
100 | This test returns the port names of ports 1, 3, 4, 5 and 25
101 |
102 | .. code-block:: console
103 |
104 | define service {
105 | use generic-service
106 | hostgroup_name MikroTik Switches
107 | service_description MikroTik Port Names
108 | check_command check_mikrotik_port_info!portName!1,3-5,25
109 | }
110 |
111 | Source: https://github.com/bemworld/check_mikrotik_switch
112 |
--------------------------------------------------------------------------------
/docs/check_commands/check_minecraft.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_minecraft
2 | ==============================
3 |
4 | `check_minecraft` provides the current state of the Minecraft server (Online,
5 | Down or Full), and also provides the following performance data:
6 |
7 | - `Online Players` provides the current count of online players, plus the
8 | server maximum. A warning threshold is automatically set when the server
9 | reaches 75% of its set limits, and a critical threshold is met when 90%
10 | of the allowed players are connected.
11 | - `Minecraft Version` informs you of the version of the running Minecraft
12 | server.
13 | - `Response Time` tells you, in milliseconds, how long the Minecraft server
14 | is taking to respond.
15 |
16 | .. figure:: ../img/ss_check_minecraft_perfdata.png
17 | :width: 600
18 | :alt: check_minecraft Service in NEMS Adagios
19 |
20 | `check_minecraft` will first try to connect to your Minecraft server using
21 | a modern (>= 1.7) connection. If it fails to connect, it will then try using
22 | a legacy (<= 1.6) connection. If it fails then, the server is considered
23 | offline. This method allows NEMS Linux to check any version of Minecraft
24 | without your having to specify the version manually and remembering to update
25 | your check command every time you upgrade Minecraft.
26 |
27 | Get Your Own Minecraft Server
28 | -----------------------------
29 |
30 | Need a Minecraft server? Create one for free and host it on a Raspberry Pi!
31 | Download `Pinecraft Installer `__ today!
32 |
33 | `check_minecraft` is compatible with all versions of Pinecraft Installer-powered
34 | Minecraft servers (as well as most other Minecraft, Paper, Spigot, Forge, etc.
35 | servers).
36 |
37 | Command Line
38 | ------------
39 |
40 | `./check_minecraft -H [host_address] -P [game_port]`
41 |
--------------------------------------------------------------------------------
/docs/check_commands/check_mssql_mem.rst:
--------------------------------------------------------------------------------
1 | Check MS SQL Memory Usage (check_mssql_mem)
2 | ###########################################
3 |
4 | Monitor your MS SQL 2008, 2012 or 2019 server memory usage.
5 |
6 | *check_mssql_mem* requires NEMS Linux 1.7 or higher.
7 |
8 |
9 | Configuring MS SQL Server
10 | *************************
11 |
12 | Install NSClient++ w/ NRPE and enable it on your MS SQL server, ensuring
13 | "allow_arguments" and "allow_nasty_meta_chars" options are enabled.
14 |
15 | Enable SQL Server Perfmon Counters.
16 |
17 | **Parameters:**
18 |
19 | - `Port` MS SQL port. [Default 5666]
20 | - `Check` Determines which check to run:
21 | - **db_memory_calc** - Calculates SQL Memory in use [Default]
22 | - **db_pages_used** - Pages in use in MB
23 | - **db_pages_total** - Total pages in MB
24 | - `Warning %` - Specify max percentage for a WARNING state.
25 | - `Critical %` - Specify max percentage for a CRITICAL state.
26 |
27 |
28 | Source
29 | ------
30 |
31 | Originally from https://github.com/grune/Nagios/blob/master/Nagios/nagios-mssql-memory.py
32 | with significant changes for NEMS Linux in order to upgrade to Python 3 and enable Server
33 | 2019 support.
34 |
--------------------------------------------------------------------------------
/docs/check_commands/check_ncpa.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_ncpa
2 | =========================
3 |
4 | Check Command version 1.2.3 added 1.6.
5 |
6 | This plugin works with NCPA 2+ and is backwards compatible with NCPA 1.
7 |
8 | I've included a couple sample check commands in NEMS Linux 1.6 to get you started:
9 |
10 | check_ncpa_mem
11 | Check the memory usage of a system.
12 |
13 | check_ncpa_processes
14 | Check number of running processes on a system.
15 |
16 |
17 | See https://www.nagios.org/ncpa/help/2.0/active.html and https://www.nagios.org/ncpa/
18 |
--------------------------------------------------------------------------------
/docs/check_commands/check_nems_osb.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_nems_osb
2 | =============================
3 |
4 | Monitor the status of your NEMS Migrator Off-Site Backup.
5 | If your backup fails, this check will notify you.
6 |
7 | .. figure:: ../img/check_nems_osb.png
8 | :width: 600
9 | :align: center
10 | :alt: check_nems_osb output in NEMS Adagios
11 |
12 | check_nems_osb output in NEMS Adagios (circa NEMS Linux 1.6)
13 |
14 | If you do not have a NEMS Cloud Services account, ``check_nems_osb``
15 | will return an *UNKNOWN* state.
16 |
17 | Additionally, even if the last backup was successful, ``check_nems_osb``
18 | will go into a *WARNING* state if the backup has not run for a couple days.
19 |
20 | The included sample will not notify you if it is in this state (only
21 | *WARNING*, *CRITICAL* and *RECOVERED* will notify, unless you change
22 | the notification options of the included sample service).
23 |
24 | ``check_nems_osb`` does not have any arguments. By adding it to your
25 | NEMS host, it will check and notify based on the state of your backups.
26 | There are no thresholds required since a failed backup is *CRITICAL*, and
27 | a successful backup is *OK*.
28 |
--------------------------------------------------------------------------------
/docs/check_commands/check_netscaler.rst:
--------------------------------------------------------------------------------
1 | Check NetScaler ADC (check_netscaler)
2 | #####################################
3 |
4 | NEMS Linux monitors Citrix NetScaler Application Delivery Controllers.
5 |
6 | .. note:: *check_netscaler* requires NEMS Linux 1.7 or higher.
7 |
8 |
9 | NEMS NConf Parameters
10 | ---------------------
11 |
12 | - ``Check Name`` - See the table below for the available commands.
13 | - ``Object Name`` - The object name to check.
14 | - ``Username`` - The username to use to connect. This should be a limited account.
15 | - ``Password`` - The password of that limited user.
16 | - ``Warning %`` - The percentage to trigger a WARNING state.
17 | - ``Critical %`` - The percentage to trigger a CRITICAL state.
18 |
19 |
20 | Commands
21 | --------
22 |
23 | - ``state`` - check the current service state of vservers (e.g. lb, vpn, gslb), services, and service groups and servers
24 | - ``matches``, ``matches_not`` - check if a string matches the API response or not
25 | - ``above``, ``below`` - check if a value is above/below a threshold (e.g. traffic limits, concurrent connections)
26 | - ``sslcert`` - check the lifetime for installed SSL certificates
27 | - ``nsconfig`` - check for configuration changes which are not saved to disk
28 | - ``license`` - check the expiry date of a locally installed license file
29 | - ``hastatus`` - check the high availability status of an appliance
30 | - ``staserver`` - check if configured STA (secure ticket authority) servers are available
31 | - ``servicegroup`` - check the state of a service group and its members
32 | - ``hwinfo`` - just print information about the Netscaler itself
33 | - ``interfaces`` - check the state of all interfaces and add performance data for each interface
34 | - ``perfdata`` - gather performance data from all sorts of API endpoints
35 | - ``ntp`` - check the NTP synchronization status
36 | - ``debug`` - debug command, print all data for an endpoint
37 |
38 |
39 | Source
40 | ------
41 |
42 | From https://github.com/slauger/check_netscaler
43 |
--------------------------------------------------------------------------------
/docs/check_commands/check_nrpe.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_nrpe
2 | =========================
3 |
4 | Configuration
5 | -------------
6 |
7 | Firewall Ports
8 | ~~~~~~~~~~~~~~
9 |
10 | If you have a firewall between your NEMS Server and your host, you must
11 | open incoming TCP connections on ports *5666* and *12489* on your host
12 | side.
13 |
14 | Since check_nrpe can pose a security risk, please **do not** open these
15 | ports to the world. Rather, ensure your NEMS Server is the only outside
16 | IP allowed to connect to these ports.
17 |
18 | Host-Side Service
19 | ~~~~~~~~~~~~~~~~~
20 |
21 | The NRPE service must be installed before check_nrpe can be used to
22 | monitor the host.
23 |
24 | See:
25 |
26 | - `NRPE For Linux <../usage/nrpe_on_linux.html>`__
27 | - `NRPE For Windows
28 | Clients <../basic/monitorMsWindowsHosts.html#monitor-windows-machines-with-nrpe>`__
29 |
30 | Important Note for Users of NEMS 1.5 and Under
31 | ----------------------------------------------
32 |
33 | In NEMS Linux 1.5 and lower, an older version of NRPE was used. This can
34 | be upgraded by running *sudo nems-upgrade* however you must also make a
35 | few minor changes in NEMS NConf as follows:
36 |
37 | - Edit *check_nrpe* in *checkcommands*, changing the command line
38 | to: *$USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$* (essentially,
39 | just removing the quotation marks).
40 | - Edit */ Disk Space* and */var Disk Space* in *Advanced Services*,
41 | changing the ARGS to: *check_disk -a '-w 80 -c 90 -p / -u
42 | GB'* and *check_disk -a '-w 80 -c 90 -p /var -u GB'* respectively.
43 |
44 | Sample Args for check_nrpe
45 | --------------------------
46 |
47 | In order to use these commands, NRPE must be installed on the client
48 | system using the NEMS Linux installation procedure found here: `NRPE For
49 | Linux <../usage/nrpe_on_linux.html>`__
50 |
51 | I suggest you always put NRPE in the service titles you create in order
52 | to prevent accidentally assigning a local service to a host who uses
53 | NRPE. So instead of calling the advanced service “Check Disk Space /”
54 | I'd call it “Check Disk Space / via NRPE”.
55 |
56 | Check CPU Temperature of Remote System
57 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
58 |
59 | - **Description:** Detect temperature of remote system CPU.
60 | - **Client Requirements:** Must have *lm-sensors* installed and
61 | working.
62 | - **$ARG1$ Syntax:** check_cpu_temp -a “WARN CRIT”
63 |
64 | **$ARG1$ Examples:**
65 |
66 | Warn if CPU is hotter than 40°C and Critical if over 50°C:
67 |
68 | *check_cpu_temp -a "40 50"*
69 |
70 | Warn if CPU is hotter than 35°C and Critical if over 47°C:
71 |
72 | *check_cpu_temp -a "35 47"*
73 |
74 | Check Disk Usage of Remote System
75 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
76 |
77 | - **Description:** Determine disk usage by percentage.
78 | - **Client Requirements:** None.
79 | - **$ARG1$ Syntax:** check_disk -a “-w WARN -c CRIT -p PATH”
80 |
81 | **$ARG1$ Examples:**
82 |
83 | Warn if the disk at / is 80% full and Critical if over 90% full and
84 | report in gigabytes:
85 |
86 | *check_disk -a '-w 80 -c 90 -p / -u GB'*
87 |
88 | Warn if the disk mounted on /var is 80% full and Critical if over 90%
89 | full and report in gigabytes:
90 |
91 | *check_disk -a '-w 80 -c 90 -p /var -u GB'*
92 |
93 | Warn if the disk mounted on /mnt/backup is 50% full and Critical if over
94 | 70% full and report in gigabytes:
95 |
96 | *check_disk -a '-w 50 -c 70 -p /mnt/backup -u GB'*
97 |
--------------------------------------------------------------------------------
/docs/check_commands/check_ping.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_ping
2 | =========================
3 |
4 | Service Parameters
5 | ------------------
6 |
7 | check_ping requires two parameters: Warn Critical
8 |
9 | Each is a group of one integer (response time) followed by a comma and a
10 | percentage (packet loss).
11 |
12 | In this example, we'll warn when the round trip average is 10ms or
13 | higher, or the packet loss is 2% or more. We'll go critical if the round
14 | trip average is 20ms or higher, or the packet loss is 5% or more.
15 |
16 | .. code-block:: console
17 |
18 | 10,2% 20,5%
--------------------------------------------------------------------------------
/docs/check_commands/check_qnap.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_qnap
2 | =========================
3 |
4 | - ``status`` checks if QNAP is online
5 | - ``diskused`` disk usage in percentage
6 | - ``cpu`` system CPU load in percent
7 | - ``cputemp`` system CPU temperature in C
8 | - ``freeram`` free RAM
9 | - ``temp`` system temperature in C
10 | - ``hdtemp`` Harddrive temperature in C (all hard drives)
11 | - ``hdNtemp`` Nth harddrive temperature in C (ex. hd1temp)
12 | - ``volstatus`` Status of all volumes
13 | - ``volNstatus`` Nth volume status
14 | - ``powerstatus`` Power status
15 | - ``fans`` Fans speed (RPM)
16 | - ``systemuptime`` System uptime
17 | - ``sysinfo`` System info display (model, number of hard drives, volumes, name and firmware)
18 |
19 | Source: `check_qnap3.sh` file (https://github.com/cloudcentral/nagios-plugins-check_qnap/blob/master/check_qnap3.sh)
20 |
--------------------------------------------------------------------------------
/docs/check_commands/check_sbc_temperature.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_sbc_temperature
2 | ====================================
3 |
4 | **Requires:** NEMS 1.5+
5 |
6 | `check_rpi_temperature `__ has
7 | been renamed *check_sbc_temperature* because it is not at all Raspberry
8 | Pi specific: Any system that has sysfs logged to
9 | /sys/class/thermal/thermal_zone0/temp will work.
10 |
11 | Also tested on the NEMS Linux ODROID XU4 build.
12 |
13 | This check command requires two arguments: Warning Temperature °C and
14 | Critical Temperature °C.
15 |
16 | Default Thresholds
17 | ------------------
18 |
19 | NEMS Linux comes with check_sbc_temperature pre-configured on the NEMS
20 | localhost. Here are the default thresholds:
21 |
22 | - **ODROID XU4** 76°C Warn / 82°C Crit
--------------------------------------------------------------------------------
/docs/check_commands/check_tasmota.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_tasmota
2 | ============================
3 |
4 | Check IoT sensor states for sensors running the Tasmota Firmware, such as SONOFF IoT devices.
5 |
6 | Included Check Commands
7 | ~~~~~~~~~~~~~~~~~~~~~~~
8 |
9 | **Note:** I do not have one of these devices for testing in NEMS Linux, so have done my best to
10 | understand the command parameters. If you test your device, please report back to me (Robbie) with
11 | your feedback as to the accuracy of this documentation, or any changes that are required. If you
12 | encounter an issue you cannot resolve, please let me know.
13 |
14 | NEMS Linux includes the two sample check commands provided by the plugin author:
15 |
16 | - `check_tasmota_power` - Check the power state of a compatible IoT device. Warn/Crit should be a
17 | binary threshold: `0` or `1`.
18 | - `check_tasmota_sensor` - Check the state of any compatible sensor. Must specify the device (E.G.,
19 | ENERGY or AM2301) and the sensor (E.G., Humidity, Temperature, Voltage, Current, Total, Today, Yesterday).
20 |
21 | Included Hostgroups
22 | ~~~~~~~~~~~~~~~~~~~
23 |
24 | NEMS Linux includes hostgroups for three styles of IoT devices which use the Tasmoto firmware:
25 |
26 | - Tasmota **ENERGY** WifiPlugs - Assign to the `tasmota-ENERGY` hostgroup to check the following: Ping, Power State, Voltage, Current, Total Consumption (All Time), Total Consumption (Today Only), Total Consumption (Yesterday Only).
27 | - Tasmota **AM2301** WifiPlugs - Assign to the `tasmota-AM2301` hostgroup to check the following: Ping, Humidity, Temperature
28 | - Tasmota **Switch** WifiPlugs - Assign to the `tasmota-switch` hostgroup to check the following: Ping, Power State
29 |
30 | Requirements
31 | ~~~~~~~~~~~~
32 |
33 | Requires NEMS Linux 1.6+.
34 |
35 | Source
36 | ~~~~~~
37 | From https://github.com/dirkheitzmann/nagios-plugin-check_tasmota
38 |
--------------------------------------------------------------------------------
/docs/check_commands/check_tcp.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_tcp
2 | ========================
3 |
4 | Service Parameters
5 | ------------------
6 |
7 | NEMS Linux requires just one argument for the check_tcp check command:
8 | the port number to check.
9 |
10 | Quick Use
11 | ~~~~~~~~~
12 |
13 | 1. Open NEMS NConf.
14 | 2. Click Services→Add.
15 | 3. Give it a friendly name.
16 | 4. Choose the Check Command “check_tcp”.
17 | 5. Set the notification period to 24/7.
18 | 6. Set your intervals and notification settings as normal.
19 | 7. Set ARG1 to the port number. Eg., 8080
20 | 8. Hit submit.
21 |
22 | Then go `generate your
23 | config <../gettingstarted/generate_config.html>`__ and
24 | if you set your intervals correctly, all should be a-okay. If not,
25 | expand the error message to see where you went wrong.
26 |
27 | Exercise
28 | ~~~~~~~~
29 |
30 | .. figure:: ../img/pushover-1.4.1.png
31 | :width: 200
32 | :align: right
33 | :alt: Pushover Notification
34 |
35 | NEMS Linux includes a dummy port listener running on port 9590. The port
36 | listener is cleverly
37 | called `9590 <../basic/port9590.html>`__, and does
38 | nothing other than reply that it is up. This can be used to simulate a
39 | port on another device.
40 |
41 | Let's setup a service monitor on the NEMS host to warn us if port 9590
42 | ever goes offline.
43 |
44 | 1. On the left menu of NConf, you'll see “Services”. Click “Add”.
45 | 2. Set the *Service Name* to: 9590
46 | 3. Leave *Service Enabled* set to: Yes
47 | 4. Set the *Check Command* to: check_tcp
48 | 5. Set *Assigned to Host* to: NEMS (this host comes pre-installed)
49 | 6. Leave *Check Period* set to: 24×7
50 | 7. Set *Notification Period* to: 24/7
51 | 8. Leave *Service Templates* as is, none selected.
52 | 9. Under *Contact Groups* highlight the 'admins' group and press the
53 | arrow pointed right to move it to *Selected Items*.
54 | 10. Leave *Notes*, *Notes* and *Action* blank.
55 | 11. Set *Max Check Attempts* to: 5
56 | 12. Set *Check Interval* to: 30
57 | 13. Set *Retry Interval* to: 5
58 | 14. Set *First Notification Delay* to: 60
59 | 15. Set *Notification Interval* to: 90
60 | 16. Set *Notification Options* to: w,u,c,r,f,s
61 | 17. Leave *Active Checking*, *Passive Checking*, *Notification
62 | Enabled*, *Check Freshness* and *Freshness Threshold* blank.
63 | 18. Leave *Assign Service to servicegroup* as is, none selected.
64 | 19. Set *Params for check command* to the port number: 9590
65 | 20. Press *Submit*
66 | 21. `Generate Nagios
67 | Config <../gettingstarted/generate_config.html>`__
68 |
69 | Once the new config is running, try failing the service by
70 | opening `Monit Service
71 | Manager <../apps/monitservicemonitor.html>`__, click on the
72 | Process named *9590*, and then click “Stop service”. You'll notice
73 | within 30 minutes the status of 9590 will show as a problem in all
74 | status views (Eg., NEMS TV Dashboard, NEMS Adagios, Nagios Core), and
75 | after 60 minutes you will receive a notification (assuming your
76 | notifications settings are configured).
77 |
78 | Once you have received a notification, visit NEMS Adagios to Acknowledge
79 | the outage.
80 |
81 | Then, return to Monit, open the 9590 Process, and click “Enable
82 | Monitoring”. This will re-load 9590 and you'll soon see it change to
83 | a *Recovered* state.
84 |
85 | Another fun experiment is to try changing your “First Notification
86 | Delay” on the NEMS:9590 service in NEMS NConf and disable it again.
87 |
--------------------------------------------------------------------------------
/docs/check_commands/check_truepool.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_truepool
2 | =============================
3 |
4 | .. |check_truepool| image:: ../img/logo_truepool.png
5 | :width: 300px
6 | :alt: TruePool.io Logo
7 |
8 | +-------------------+
9 | | |check_truepool| |
10 | +-------------------+
11 |
12 | **Regrettably, TruePool shut down in 2022. However, leaving this here for now since
13 | this check command can be adapted and used with other Chia pool servers.**
14 |
15 | `TruePool.io `__ is a trusted Chia cryptocurrency farming
16 | (mining) pool. This NEMS check command allows you to check your TruePool.io
17 | farmer status to ensure your Chia farm is online and actively farming to the
18 | pool.
19 |
20 | Learn more about what makes TruePool.io unique in
21 | `this video `__.
22 |
23 | *check_truepool* expects just one argument (Launcher ID) and responds
24 | accordingly. You can create multiple *check_truepool* advanced services to
25 | check any number of Launcher IDs. For example, monitor your own and your
26 | family member's farm status.
27 |
28 | .. figure:: ../img/check_truepool.png
29 | :width: 540
30 | :align: center
31 | :alt: NEMS Adagios output of check_truepool command
32 |
33 | NEMS Adagios output of check_truepool command
34 |
35 | This check command requires NEMS Linux 1.6+.
36 |
37 | Expected Responses
38 | ------------------
39 |
40 | - ``OK`` - Farm is online and actively gaining points on Truepool.io
41 | - ``CRITICAL`` - Either "Not found" (you provided an invalid Launcher ID) or
42 | "Farm Offline" (your farm has gained 0 points since the last check)
43 |
44 | **Sample Output:** `OK - Points: 830 (24 hrs), 243 (this block) / Share: 0.0810% / Diff: 1`
45 |
46 | .. admonition:: [Cache]
47 | :class: note
48 |
49 | If your *check_truepool* response includes `[Cache]` it means you are
50 | running the check command too frequently. Check your farm and determine approximately
51 | how long it takes you to solve a partial, then set your `check_truepool` to run
52 | with a cushion to allow variance. For example, if it takes you 60 seconds to solve
53 | a partial, you should not be running the check more frequently than every 3 minutes
54 | or so (if you need that level of monitoring). I'd say running every 10 minutes would be
55 | appropriate for most users.
56 |
57 | Configuration
58 | -------------
59 |
60 | Obtain your Chia launcher ID. See `this truepool.io knowledgebase article
61 | `__ for help with this.
62 |
63 | **NEMS Configurator Setup**
64 |
65 | - Add a new Advanced Service
66 | - Give the service a name such as "TruePool (Robbie)"
67 | - Give the service a description such as "Chia Farm - Robbie" - I identify my farmer since I monitor multiple farmers
68 | - Set Check Period to `24/7`
69 | - Set Notification Period to Work Hours (I don't need to be awoken if my farm goes down)
70 | - Assign the advanced service to host `NEMS`
71 | - Set max check attempts: `5`
72 | - Set check interval: `10`
73 | - Set retry interval: `10`
74 | - Set first notification delay: `30`
75 | - Set notification interval: `120`
76 | - Set notification options: `w,u,c,r`
77 | - Add your Launcher ID to the appropriate field
78 | - Save, and generate your NEMS Config
79 |
--------------------------------------------------------------------------------
/docs/check_commands/check_win_users.rst:
--------------------------------------------------------------------------------
1 | Check Command: check_win_users
2 | ==============================
3 |
4 | Check the count of users on a Windows server based on a query.
5 |
6 | Valid Query Options
7 | -------------------
8 |
9 | - AccountType
10 | - Caption
11 | - Description
12 | - Disabled
13 | - Domain
14 | - FullName
15 | - InstallDate
16 | - LocalAccount
17 | - Lockout
18 | - Name
19 | - PasswordChangeable
20 | - PasswordExpires
21 | - PasswordRequired
22 | - SID
23 | - SIDType
24 | - Status
25 |
26 | Example Queries
27 | ---------------
28 |
29 | - List all users:
30 |
31 | .. code-block:: console
32 |
33 | status like '%'
34 |
35 | - Show users where the Status is OK:
36 |
37 | .. code-block:: console
38 |
39 | status='OK'
40 |
41 | - Show usernames that contains the string “EX”:
42 |
43 | .. code-block:: console
44 |
45 | name like '%EX%'
46 |
47 | - Show usernames that start with the string “Admin”:
48 |
49 | .. code-block:: console
50 |
51 | name like 'Admin%'
52 |
53 | - Show usernames that end with the string “test”:
54 |
55 | .. code-block:: console
56 |
57 | name like '%test'
58 |
59 | - Show users whose full name contains the String “Exchange”:
60 |
61 | .. code-block:: console
62 |
63 | fullname like '%Exchange%'
64 |
65 | - Show users that belong to the Domain called “TEST”:
66 |
67 | .. code-block:: console
68 |
69 | Domain='TEST'
70 |
71 | - Show users where a password is not required:
72 |
73 | .. code-block:: console
74 |
75 | PasswordRequired!='True'
76 |
77 | - Show users that belong to the Domain called “TEST” and that where a
78 | password is not required:
79 |
80 | .. code-block:: console
81 |
82 | PasswordRequired!='True' AND Domain='TEST'
83 |
84 | - Show users that do not belong to the Domain called “TEST”:
85 |
86 | .. code-block:: console
87 |
88 | Domain!='TEST'
89 |
90 | - Show users that have local accounts:
91 |
92 | .. code-block:: console
93 |
94 | LocalAccount='True'
--------------------------------------------------------------------------------
/docs/check_commands/custom_check_mem.rst:
--------------------------------------------------------------------------------
1 | Check Command: custom_check_mem
2 | ================================
3 |
4 | NEMS Linux includes
5 | the `custom_check_mem `__ checkcommand,
6 | as well as an Advanced Service called *Memory Usage NRPE* to allow
7 | checking of remote systems.
8 |
9 | It is recommended to add *Memory Usage NRPE* to
10 | the *linux-servers* hostgroup.
11 |
12 | For WMI, use *check_win_mem* instead.
13 |
--------------------------------------------------------------------------------
/docs/check_commands/usage/linux/check_nrpe.rst:
--------------------------------------------------------------------------------
1 | Monitor Linux Hosts with NRPE
2 | =============================
3 |
4 | .. Warning:: NRPE is deprecated. Please use the more modern options
5 | provided within NEMS Linux (such as `NCPA `__).
6 |
7 | .. Warning:: These instructions are for your Linux *client*. **NEVER**
8 | run these commands on your NEMS Server.
9 |
10 | The Nagios Remote Plugin Executor (NRPE) allows your Nagios Enterprise
11 | Monitoring Server to communicate with the Linux machines on your server
12 | to determine things like free disk space, CPU load, and detect possible
13 | issues that a simple ping can't determine.
14 |
15 | There are countless instructions online to download tar.gz files and
16 | install manually, or use a PPA to install via apt-get, but NEMS includes
17 | a helpful installer that will configure everything for you.
18 |
19 | .. Warning:: Do not install the NRPE plugin via software repositories as
20 | these are abandoned and lack some important functionality.
21 |
22 | To install the needed NRPE client on Debian / Ubuntu / other
23 | Debian-based Linux operating systems (as root):
24 |
25 | .. code:: bash
26 |
27 | wget -O - https://raw.githubusercontent.com/NEMSLinux/nems-admin/refs/heads/master/build/047-nrpe | bash
28 |
29 | **Please note:** Rudimentary support for RPM-based distros is included,
30 | but may not work. Please consider RPM support as experimental, and
31 | report your findings (especially your solutions or pull requests) so I
32 | can improve it.
33 |
34 | Next, we just have to tell NRPE that it's allowed to communicate with
35 | our Nagios server. On the client system, open the file
36 | */usr/local/nagios/etc/nrpe.cfg*
37 |
38 | Find the line that reads: ``allowed_hosts=127.0.0.1,::1``
39 |
40 | Now there are a few ways we can allow our server. First (and most
41 | obvious) is to add its IP address like this:
42 |
43 | ::
44 |
45 | allowed_hosts=127.0.0.1,::1,192.168.0.5
46 |
47 | Where 192.168.0.5 is our Nagios/NEMS server.
48 |
49 | Alternatively we can tell NRPE that it's allowed to communicate with any
50 | local system:
51 |
52 | ::
53 |
54 | allowed_hosts=127.0.0.1,::1,192.168.0.0/24
55 |
56 | Now, save the file and restart NRPE as follows:
57 |
58 | .. code:: bash
59 |
60 | systemctl restart nrpe
61 |
62 | .. Tip:: If you have a software firewall running on
63 | your Linux machine, setup an exception for your NEMS server IP to gain
64 | access through TCP ports 5666 and 12489.
65 |
66 | And there we have it! Your NEMS Server can now check your Linux machine
67 | at a deeper level using `check_nrpe <../../check_nrpe.html>`__.
68 |
--------------------------------------------------------------------------------
/docs/check_commands/usage/linux/index.rst:
--------------------------------------------------------------------------------
1 | Monitoring Linux Hosts with NEMS Linux
2 | ======================================
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: Tutorials
7 |
8 | check_nrpe
9 |
--------------------------------------------------------------------------------
/docs/check_commands/usage/microsoft-windows/check_nrpe.rst:
--------------------------------------------------------------------------------
1 | Monitor Windows Machines with NRPE
2 | ==================================
3 |
4 | .. admonition:: Note
5 | :class: warning
6 |
7 | NRPE is deprecated. This is not the recommended way to monitor Windows hosts.
8 | Please opt for `WMI `__ instead. NRPE documentation is here for
9 | legacy versions of NEMS Linux (ie., 1.0-1.3.x).
10 |
11 | The Nagios Remote Plugin Executor (NRPE) allows your Nagios Enterprise
12 | Monitoring Server to communicate with the Linux machines on your server
13 | to determine things like free disk space, CPU load, and detect possible
14 | issues that a simple ping can't determine.
15 |
16 | As of NEMS 1.2 NSClient++ is optional for monitoring of Windows computers
17 | (thanks to the addition of WMIC). If you’d like to use it, please follow
18 | the directions below, otherwise use the provided WMIC-based check commands.
19 |
20 | **This is not supported on modern NEMS Linux.**
21 |
22 | 1. Grab the latest Windows client at https://www.nsclient.org/download/
23 |
24 | 2. Install the client with the following settings:
25 |
26 | - Select to install the “Generic mode” NSClient++.
27 | - Choose “Complete installation” and if asked, choose to save config
28 | to ini file.
29 | - Under “Allowed Hosts” it should read 127.0.0.1,\ *NEMSIP* (where
30 | NEMSIP is the IP address of your NEMS server)
31 | - Clear the Password field for ease of deployment. NEMS sample
32 | scripts are setup to use NRPE without a password because I’m
33 | making the assumption that this is being deployed in a trusted LAN.
34 | If you do not blank the password here, you will have to edit all
35 | the scripts before NEMS will be able to communicate with this
36 | computer.
37 | - Enable all modules and change the NRPE mode to Legacy.
38 | - Screen should look a little something like this:
39 |
40 | .. figure:: ../../../img/nsclient-setup.png
41 | :width: 500
42 | :align: center
43 | :alt: NSClient setup
44 |
45 | - Add your Windows host to NEMS.
46 |
47 | .. Tip :: **Important Firewall Note**
48 | If you have a software firewall running on your Windows machine, setup
49 | an exception for your NEMS server IP to gain access through ports 5666
50 | and 12489.
51 |
52 | And there we have it! Your NEMS Server can now check your Windows
53 | machine at a deeper level
54 | using `check_nrpe <../check_commands/check_nrpe.html>`__.
55 |
--------------------------------------------------------------------------------
/docs/check_commands/usage/microsoft-windows/check_ping.rst:
--------------------------------------------------------------------------------
1 | Monitor Windows Machines with Ping
2 | ==================================
3 |
4 | The simplest type of check in NEMS Linux is to ping a host. The reply is
5 | binary: Host is up when ping replies, host is down when ping does not
6 | reply.
7 |
8 | **Using a ping check is an excellent starting point for new NEMS Linux
9 | users to become familiar with an easy-to-administer check command.**
10 |
11 | To begin pinging a Windows host, simply add it to the windows-servers
12 | group. The host check alive command will use check_ping to verify it as
13 | online or offline.
14 |
15 | Most software firewalls, including the Windows [Defender] Firewall,
16 | block ping (ICMP) requests by default. So NEMS will think your host is
17 | down unless you create a rule to allow ICMP echo requests and replies
18 | through your Windows firewall.
19 |
20 | Windows Defender Firewall
21 | -------------------------
22 |
23 | To enable ICMP response when using Windows Defender Firewall, simply run
24 | the Command Prompt as Administrator and type the following:
25 |
26 | IPv4 Networks:
27 |
28 | .. code-block:: console
29 |
30 | netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo
31 | request" protocol=icmpv4:8,any **dir**\ =in action=allow
32 |
33 | IPv6 Networks:
34 |
35 | .. code-block:: console
36 |
37 | netsh advfirewall firewall add rule name="ICMP Allow incoming V6 echo
38 | request" protocol=icmpv6:8,any **dir**\ =in action=allow
39 |
40 | Third Party Firewall
41 | --------------------
42 |
43 | If you are using a different firewall (eg., ESET Endpoint Security) you
44 | will need to consult that software's documentation to allow ICMP echo
45 | responses.
46 |
47 | Here are some things to look for:
48 |
49 | - Many firewalls can exempt certain IP addresses or ranges from being
50 | blocked. This is often called a Trusted Zone, or whitelisted IP. You
51 | could add your NEMS Server as a trusted device. If you do this, make
52 | absolutely certain your NEMS Server is not accessible from the world
53 | (ie., do not port forward anything to NEMS Linux), and your NEMS user
54 | password is a strong one that only you know.
55 | - Most firewalls allow exemption of certain protocols or services. In
56 | those cases, you can simply enable/allow ping replies. It may be
57 | called “ping”, “incoming ping”, “ICMP Echo Reply”, or similar.
58 |
59 | .. Warning:: **DO NOT SIMPLY DISABLE YOUR FIREWALL.** Correctly establish a firewall rule within your firewall application.
60 |
--------------------------------------------------------------------------------
/docs/check_commands/usage/microsoft-windows/index.rst:
--------------------------------------------------------------------------------
1 | Monitoring Microsoft Windows Hosts with NEMS Linux
2 | ==================================================
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: Tutorials
7 |
8 | check_ping
9 | check_wmi
10 | check_nrpe
11 |
--------------------------------------------------------------------------------
/docs/commands/index.rst:
--------------------------------------------------------------------------------
1 | NEMS Commands and Special Features
2 | ==================================
3 |
4 | NEMS Commands
5 | -------------
6 |
7 | The following commands are available in the NEMS Linux terminal, which
8 | may be accessed either by a connected keyboard/monitor, or over SSH.
9 |
10 | `nems-backup <../basic/backupnems.html>`__ - NEMS
11 | Migrator's backup component.
12 |
13 | `nems-benchmark `__ -
14 | Benchmark your NEMS Linux server.
15 |
16 | `nems-cert `__ - Generate
17 | or re-generate NEMS SSL Certificates.
18 |
19 | `nems-info `__ - Displays
20 | info about your NEMS Linux server.
21 |
22 | `nems-init `__ -
23 | Initialize your NEMS Linux server.
24 |
25 | `nems-quickfix `__ -
26 | Quickly run all rolling updates and bring in new patches and fixes with
27 | one quick command.
28 |
29 | `nems-restore `__ -
30 | NEMS Migrator's restore component.
31 |
32 | `nems-update `__ -
33 | Update your NEMS Linux server within the current point release.
34 |
35 | `nems-upgrade `__ -
36 | Upgrade your NEMS Linux server to the latest point release.
37 |
38 | `nems-support `__ -
39 | Generate a special backup file to provide needed information to NEMS
40 | Linux support.
41 |
42 | NEMS Special Features
43 | ---------------------
44 |
45 | `nems-migrator <../features/nems-migrator.html>`__ -
46 | Backup or restore your entire NEMS server configuration.
47 |
--------------------------------------------------------------------------------
/docs/commands/nems-benchmark.rst:
--------------------------------------------------------------------------------
1 | :orphan:
2 |
3 | NEMS Linux Command: nems-benchmark
4 | ==================================
5 |
6 | *nems-benchmark* is a benchmarking tool to determine the performance of
7 | your NEMS Linux server.
8 |
9 | You may run it manually if you like, but shouldn't have to since the
10 | benchmark runs automatically every Sunday morning and you can just cat
11 | the log file located at */var/log/nems/benchmark.log*
12 |
13 | *nems-benchmark* tests the following:
14 |
15 | - LZMA multi-threaded and single-threaded performance
16 | - SD Card Read/Write Speed
17 | - Memory Read/Write Speed
18 | - Free Space on All Media
19 | - Free Memory
20 | - Internet Send/Receive Speed
21 |
22 | By observing the results of the weekly benchmark test, you may be able
23 | to spot a failing SD card or other system problem.
24 |
--------------------------------------------------------------------------------
/docs/commands/nems-quickfix.rst:
--------------------------------------------------------------------------------
1 | Command: nems-quickfix
2 | ======================
3 |
4 | Update all components to the latest rolling release and apply all
5 | available patches and fixes to NEMS Linux.
6 |
7 | If you're experiencing an issue which has been patched, simply run this
8 | command to ensure your NEMS server receives and installs the patch in
9 | one quick command.
10 |
11 | ``sudo nems-quickfix``
12 |
13 | If you ran a patch previously that has failed, you can reset the patch state and re-run the patch as follows:
14 |
15 | ``sudo nems-quickfix --reset PATCHNUM`` where ``PATCHNUM`` is the patch number to reset.
16 |
--------------------------------------------------------------------------------
/docs/commands/nems-support.rst:
--------------------------------------------------------------------------------
1 | NEMS Command: nems-support
2 | ==========================
3 |
4 | *nems-support* automatically creates an encrypted backup file
5 | called **support.nems** which contains all information about your
6 | running NEMS server. This information is intended to be used during
7 | support sessions in event that you are experiencing issues and require
8 | assistance from NEMS Linux support.
9 |
10 | Currently, NEMS Linux is a community project driven by one
11 | individual: **Robbie Ferguson**. You should be wary of sending your
12 | support.nems file to anyone but Robbie, as it contains confidential
13 | information (eg., your email settings from NEMS SST). The file is
14 | encrypted, but can easily be decrypted using your NEMS Hardware ID if
15 | that information is available.
16 |
17 | **For priority support** please visit `HOW TO OBTAIN SUPPORT `__.
18 |
19 | The email address for you to send your support.nems
20 | file to will always be on either @category5.tv or @nemslinux.com
21 | domains. If anyone ever asks you to send it somewhere else, be cautious.
22 |
23 | **To create a support.nems file, run:**
24 |
25 | `sudo nems-support`
26 |
27 | You will then be advised where to send your support.nems file, along
28 | with a 6-digit string you must send with the file. This string is simply
29 | the first 6 digits of your HWID, to prevent sending the full key. Robbie
30 | will use this string to look up your full HWID for decryption.
31 |
32 | If your support request has to do with a Community Forum thread, please
33 | also include the to the thread within the body of your email.
34 |
35 | Once created, you can access the support.nems file from your computer by
36 | navigating
37 | to `https://NEMS.local/backup/support.nems `__ -or-
38 | find the file on the SMB share at \\\\NEMS.local\\backup
39 |
40 | Report
41 | ------
42 |
43 | The command line option *report* forgoes the backup portion
44 | of *nems-support* and only generates a small textual report to assist in
45 | diagnosing problems.
46 |
47 | **To generate this report, run:**
48 |
49 | `sudo nems-support report`
50 |
51 | The support.nems and support-report.txt files self-destruct after 15
52 | minutes.
53 |
--------------------------------------------------------------------------------
/docs/commands/nems-update.rst:
--------------------------------------------------------------------------------
1 | :orphan:
2 |
3 | Command: nems-update
4 | ====================
5 |
6 | FUTURE
7 |
8 | **sudo** nems-update
--------------------------------------------------------------------------------
/docs/commands/nems-upgrade.rst:
--------------------------------------------------------------------------------
1 | :orphan:
2 |
3 | NEMS Command: nems-upgrade
4 | ==========================
5 |
6 | *nems-upgrade* automatically upgrades NEMS Linux. It is very easy to use,
7 | and is how I am able to offer NEMS as a rolling release during each major
8 | release cycle (called NEMS Branch). This way, you do not have to
9 | re-download and re-flash NEMS every time I release a new feature.
10 |
11 | Generally, bugfixes and minor improvements do not require manual
12 | intervention: they are automatically handled by nightly update processes.
13 |
14 | By contrast, rolling release upgrades (I.E., point release upgrades)
15 | require you to manually upgrade with the *nems-upgrade* command, which
16 | requires root access.
17 |
18 | In order to run nems-upgrade your NEMS Server must first
19 | be `initialized <../gettingstarted/initialization.html>`__.
20 |
21 | **Command Line Options**
22 |
23 | - `sudo nems-upgrade` - Upgrade NEMS to the latest rolling release
24 | within the current branch.
25 | - `sudo nems-upgrade reset` - Reset NEMS to the top-level
26 | branch of the currently running version and upgrade from there.
27 | Helpful when fixing a botched upgrade, should one occur.
28 |
--------------------------------------------------------------------------------
/docs/config/smtp_config_gmail.rst:
--------------------------------------------------------------------------------
1 | Using Gmail SMTP For Nagios Notification Sending
2 | ================================================
3 |
4 | When using Gmail for SMTP, a few extra steps are required.
5 |
6 | First, if you are a G Suite user (that is to say, you're using Gmail but
7 | have an @yourdomain.com email address on their service as opposed to an
8 | @gmail.com address), visit `this
9 | page `__ and
10 | configure the SMTP Relay Service like this:
11 |
12 | .. figure:: ../img/admin-ajax.png
13 | :width: 500
14 | :align: center
15 | :alt: Gmail Setup
16 |
17 | Of course, if you happen to have a static public IP address on your NEMS
18 | server, go ahead and enable IP filtering for even more security.
19 |
20 | Then, visit `this
21 | page `__ and
22 | enable *“Allow users to manage their access to less secure apps”*.
23 |
24 | Now that you've done that, **or if you are not a G Suite user**, you'll
25 | need to enable the setting for *“less secure
26 | apps”* here: https://myaccount.google.com/lesssecureapps
27 |
28 | Please note that if you are using Google's two-factor authentication,
29 | then you will **not** be able to enable the "less secure apps" setting.
30 | Instead, you will need to create an "app specific password". For more
31 | information and details on how to configure app specific passwords,
32 | please visit https://support.google.com/accounts/answer/185833?hl=en
33 |
--------------------------------------------------------------------------------
/docs/config/smtp_config_outlook.rst:
--------------------------------------------------------------------------------
1 | Using MS Outlook.com SMTP For Nagios Notifications
2 | ======================================================
3 |
4 | .. figure:: ../img/NemsOutlook.png
5 | :width: 600
6 | :align: center
7 | :alt: SMTP Setup for MS Outlook accounts
8 |
9 | If you are a Microsoft Outlook.com email user configure settings as shown above:
10 |
11 |
12 | **SMTP Server Address:** smtp-mail.outlook.com
13 |
14 | **SMTP Server Port:** 587
15 |
16 | **SMTP Secure Authentication:** Use TLS Secure Authentication
17 |
18 | **“From” Sender Address:** Must be a valid Microsoft account address
19 |
20 | **SMTP Authentication Username (Usually an email address):** Must be a valid Microsoft account address
21 |
22 | **SMTP Password:** App password created from MS account page - Login to your account, click on your avatar, click My Account, click Security, click Advanced security options, under App Passwords click Create New App Password, copy and paste password into this field
23 |
24 | Click Save All Settings
25 |
--------------------------------------------------------------------------------
/docs/credits.rst:
--------------------------------------------------------------------------------
1 | Documentation Contributors
2 | --------------------------
3 |
4 | The following people have contributed to the NEMS Linux documentation:
5 |
6 | * Robbie Ferguson
7 | * Bill Marshall
8 | * Don Jenkins
9 | * Will Blanton
10 | * Luke Kabat
11 |
12 |
13 | Sending a Pull Request? Please make sure to also add your name to this list.
14 |
--------------------------------------------------------------------------------
/docs/gettingstarted/connect.rst:
--------------------------------------------------------------------------------
1 | Connecting to Your NEMS Server
2 | ==============================
3 |
4 | Now that your NEMS Linux server is up and running, you can access its entire feature set via your web browser. Simply point to ``https://nems.local/`` which should work in most networks out of the box, but if you need to, you can alternatively use the IP address of your NEMS server, which you can find in your router's DHCP leases table, or by connecting a TV directly to your NEMS Server.
5 |
6 | .. figure:: ../img/NEMS-Linux-1.5-dashboard-with-a-user-uploaded-background.png
7 | :width: 600
8 | :align: center
9 | :alt: NEMS Dashboard 1.5
10 |
11 | NEMS Dashboard in NEMS Linux 1.5, with User-Uploaded Background
12 |
--------------------------------------------------------------------------------
/docs/gettingstarted/exercises.rst:
--------------------------------------------------------------------------------
1 | Beginner Exercises
2 | ==================
3 |
4 | Having made it through the Getting Started Guide, it's time to put your newly learned skills to the test. The following exercises will not only help you to review what you've learned thus far, but will also expand on your knowledge of how to use NEMS Linux by providing practical use cases, complete with step-by-step instruction.
5 |
6 | .. toctree::
7 | :maxdepth: 1
8 | :caption: Check Commands
9 |
10 | exercises/check_http
11 | exercises/check_tcp
12 |
--------------------------------------------------------------------------------
/docs/gettingstarted/exercises/check_tcp.rst:
--------------------------------------------------------------------------------
1 | Monitor A Non-Standard Port with check_tcp
2 | ==========================================
3 |
4 | Exercise Introduction
5 | ---------------------
6 |
7 | In this exercise you will learn to monitor the state of any TCP/UDP port on a network connected device, and notify yourself if it stops responding. Some quick examples are to tell if your local blockchain node has stopped responding on port 8333, Apache2 has stopped responding on port 443, or even monitor the state of openssh-server running on port 22. The options are limitless.
8 |
9 | NEMS Linux includes a dummy port listener running on port 9590. The port listener is cleverly called `9590 <../../basic/9590.html>`__, and does nothing other than reply that it is up. This can be used to simulate a port on another device. While you can create a check for any port on any host, let's start with using this dummy port just to become familiar with how NEMS Linux works.
10 |
11 | **Our goal:** To setup a service monitor on the NEMS host which warns us if port 9590 ever goes offline.
12 |
13 | Steps
14 | -----
15 |
16 | #. On the left menu of NConf, you'll see “Services”. Click “Add”.
17 | #. Set the Service Name to: *9590*
18 | #. Leave Service Enabled set to: *Yes*
19 | #. Set the Check Command to: *check_tcp*
20 | #. Set Assigned to Host to: *NEMS* (this host comes pre-installed)
21 | #. Leave Check Period set to: *24×7*
22 | #. Set Notification Period to: *24x7*
23 | #. Leave Service Templates as is, none selected.
24 | #. Under Contact Groups highlight the 'admins' group and press the arrow pointed right to move it to Selected Items.
25 | #. Leave Notes, Notes URL and Action URL blank.
26 | #. Set Max Check Attempts to: *30*
27 | #. Set Check Interval to: *1*
28 | #. Set Retry Interval to: *1*
29 | #. Set First Notification Delay to: *5*
30 | #. Set Notification Interval to: *15*
31 | #. Set Notification Options to: *w,u,c,r,f,s*
32 | #. Leave Active Checking, Passive Checking, Notification Enabled, Check Freshness and Freshness Threshold blank.
33 | #. Leave Assign Service to servicegroup as is, none selected.
34 | #. Set Params for check command to the port number: *9590*
35 | #. Press **Submit**
36 | #. Generate your config.
37 |
38 | Testing Your Check Command
39 | --------------------------
40 |
41 | Once the new config is running, try failing the service by opening *Monit Service Manager* under *System* on the NEMS Dashboard. Click on the Process named 9590, and then click “Stop service”. You'll notice in around 1 minute the status of 9590 will show as a problem in all status views (E.G., NEMS TV Dashboard, NEMS Adagios, Nagios Core), and after roughly 5 minutes you will receive a notification (assuming your notifications settings are configured).
42 |
43 | Once you have received a notification, visit NEMS Adagios to Acknowledge the outage, and observe how that impacts your host and service state.
44 |
45 | Then, return to Monit, open the 9590 Process, and click “Enable Monitoring”. This will re-load 9590 and you'll soon see it change to a "Recovered" state.
46 |
47 | Real World Use
48 | --------------
49 |
50 | Once complete, try setting up a new service to monitor a real host on your network. Simply change the name of the service to something appropriate, the host in step 5 (you already know how to add new hosts if you don’t already have it configured), and the port number in step 19.
51 |
--------------------------------------------------------------------------------
/docs/gettingstarted/generate_config.rst:
--------------------------------------------------------------------------------
1 | Generate NEMS Config: Make Your Changes Live
2 | ============================================
3 |
4 | In NEMS Configurator (NConf), you configure all your check commands and notification settings. But until you generate the config, the changes you make are not actually enabled on your running NEMS Server.
5 |
6 | To make your changes live, press the *Generate NEMS Config* link on the left navigation. You should see 0 errors. If you do see errors, review where you went wrong, make the necessary changes, and try again. NConf is very good at showing you where the error is so you can go back and fix it rather quickly.
7 |
8 | .. figure:: ../img/generate-nems-config.png
9 | :width: 600
10 | :align: center
11 | :alt: Generate NEMS Config
12 |
13 | Generate NEMS Config with the NEMS Configurator
14 |
15 | If everything checks out, press *Deploy Config to NEMS Server* and your changes will instantly be activated with your NEMS Server's implementation of Nagios.
16 |
--------------------------------------------------------------------------------
/docs/gettingstarted/initialization.rst:
--------------------------------------------------------------------------------
1 | Initialization
2 | ==============
3 |
4 | .. raw:: html
5 |
6 |
7 |
8 | Generally speaking, the only time you’ll really have to touch the Linux terminal on a NEMS server is during `the initialization procedure <../commands/nems-init.html>`__. This task works magic in automatically configuring your entire server in just a few seconds. It generates self-signed certificates so every NEMS Linux user has a unique certificate, allows you to configure your timezone, creates your Nagios admin user, your Linux account, and so on. To initialize your NEMS Linux server, connect to your server over SSH on the default Port 22 using the following credentials:
9 |
10 | .. code-block:: console
11 |
12 | Username: nemsadmin
13 | Password: nemsadmin
14 |
15 | Once connected, type:
16 |
17 | .. code-block:: console
18 |
19 | sudo nems-init
20 |
21 | You’ll be asked to enter the password again. Follow the prompts. All the complicated stuff is made easy.
22 |
23 | .. figure:: ../img/NEMS-Initialization.png
24 | :width: 600
25 | :align: center
26 | :alt: NEMS Initialization screen
27 |
28 | NEMS Initilization screen.
29 |
30 | Congratulations! Your NEMS Linux server is now online and ready to monitor your network assets.
31 |
--------------------------------------------------------------------------------
/docs/gettingstarted/install-indiedroid-nova.rst:
--------------------------------------------------------------------------------
1 | Install NEMS Linux on an Indiedroid Nova
2 | ========================================
3 |
4 | What You Need
5 | -------------
6 |
7 | * Indiedroid Nova SBC
8 | * 16 GB or higher fast MicroSD card
9 | * A reliable, high-quality power supply for your Nova, preferably connected to a UPS
10 | * An Ethernet cable
11 |
12 | Video Demonstration
13 | -------------------
14 |
15 | While this video was created for the Raspberry Pi version, it is exactly the same process for Indiedroid Nova (just use the correct download for the Indiedroid Nova).
16 |
17 | .. raw:: html
18 |
19 |
20 |
21 | Instructions
22 | ------------
23 |
24 | Install NEMS Linux to MicroSD
25 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26 |
27 | * Download the latest version of NEMS Linux from https://nemslinux.com/
28 | * Install the Raspberry Pi Imager from https://www.raspberrypi.com/software/
29 | * Click "Choose OS"
30 | * Click "Choose Custom" at the bottom of the list
31 | * Browse to your downloaded copy of NEMS Linux
32 | * Click "Choose Storage"
33 | * Insert your MicroSD card or USB Flash Drive
34 | * Carefully select your MicroSD card or USB Flash Drive
35 | * Click "Write"
36 |
37 | First Boot
38 | ~~~~~~~~~~
39 |
40 | * Connect the MicroSD card or USB Flash Drive containing NEMS Linux to your Indiedroid Nova
41 | * Connect the gigabit Ethernet port of the Indiedroid Nova to your network using an Ethernet cable
42 | * Power on the Indiedroid Nova to boot your NEMS Server
43 | * Wait approximately 5 minutes to perform first-boot operations
44 |
45 | During the first-boot operation, the filesystem will be automatically resized to the capacity of your storage and the NEMS Server will reboot.
46 |
47 | After the first-boot operations have completed, visit https://nems.local/ in your web browser. If name resolution doesn’t work, try the IP address of your NEMS device instead, which you can find in your router's DHCP leases table, or on a TV connected to your NEMS Server's HDMI port.
48 |
49 | .. figure:: ../img/NEMS-details-displayed-on-a-connected-TV.png
50 | :width: 600
51 | :align: center
52 | :alt: NEMS Server details
53 |
54 | NEMS Server details as shown on a connected TV circa September 2018.
55 |
56 | Install to eMMC
57 | ~~~~~~~~~~~~~~~
58 |
59 | Now that you are booted into your NEMS Server via the MicroSD card, you may choose to utilize the Indiedroid Nova's built-in eMMC storage (more reliable, faster).
60 |
61 | * Open the browser-based terminal in Cockpit or SSH to your NEMS Server.
62 | * Type `sudo nems-install` and follow the prompts.
63 |
--------------------------------------------------------------------------------
/docs/gettingstarted/install-raspberry-pi.rst:
--------------------------------------------------------------------------------
1 | Install NEMS Linux on a Raspberry Pi
2 | ====================================
3 |
4 | What You Need
5 | -------------
6 |
7 | * Raspberry Pi 3 Model B or higher model RPi
8 | * 16 GB or higher fast MicroSD card or USB Flash Drive
9 | * A reliable, high-quality power supply for your RPi, preferably connected to a UPS
10 | * An Ethernet cable
11 |
12 | Video Demonstration
13 | -------------------
14 |
15 | .. raw:: html
16 |
17 |
18 |
19 | Instructions
20 | ------------
21 |
22 | Install NEMS Linux to MicroSD
23 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24 |
25 | * Download the latest version of NEMS Linux from https://nemslinux.com/
26 | * Install the Raspberry Pi Imager from https://www.raspberrypi.com/software/
27 | * Click "Choose OS"
28 | * Click "Choose Custom" at the bottom of the list
29 | * Browse to your downloaded copy of NEMS Linux
30 | * Click "Choose Storage"
31 | * Insert your MicroSD card or USB Flash Drive
32 | * Carefully select your MicroSD card or USB Flash Drive
33 | * Click "Write"
34 |
35 | First Boot
36 | ~~~~~~~~~~
37 |
38 | * Connect the MicroSD card or USB Flash Drive containing NEMS Linux to your Raspberry Pi
39 | * Connect the gigabit Ethernet port of the Raspberry Pi to your network using an Ethernet cable
40 | * Power on the Raspberry Pi to boot your NEMS Server
41 | * Wait approximately 5 minutes to perform first-boot operations
42 |
43 | During the first-boot operation, the filesystem will be automatically resized to the capacity of your storage and the NEMS Server will reboot.
44 |
45 | After the first-boot operations have completed, visit https://nems.local/ in your web browser. If name resolution doesn’t work, try the IP address of your NEMS device instead, which you can find in your router’s DHCP leases table, or on a TV connected to your NEMS Server's HDMI port.
46 |
47 | .. figure:: ../img/NEMS-details-displayed-on-a-connected-TV.png
48 | :width: 600
49 | :align: center
50 | :alt: NEMS Server details
51 |
52 | NEMS Server details as shown on a connected TV circa September 2018.
53 |
--------------------------------------------------------------------------------
/docs/gettingstarted/install.rst:
--------------------------------------------------------------------------------
1 | Install NEMS Linux
2 | ==================
3 |
4 | NEMS Linux for SOHO/Hobbyist
5 | ----------------------------
6 |
7 | .. toctree::
8 | :maxdepth: 1
9 | :caption: Install NEMS Linux SOHO / Hobbyist
10 |
11 | install-raspberry-pi
12 | install-indiedroid-nova
13 |
--------------------------------------------------------------------------------
/docs/gettingstarted/monitor_assets.rst:
--------------------------------------------------------------------------------
1 | Monitoring Your Assets
2 | ======================
3 |
4 | Introducing Adagios
5 | -------------------
6 |
7 | Now that we’ve configured our first host, let’s see how to check its status. There are several ways to keep tabs on your assets with NEMS Linux. For the Nagios purists, Nagios Core is included on the Reporting menu. But we've included something much more modern: Adagios. This, too, is found on the Reporting menu. Adagios offers the same overall functionality of Nagios Core’s front-end but replaces it with a modern, responsive bootstrap web interface.
8 |
9 | .. figure:: ../img/Adagios-interface-on-NEMS-Linux-1.4.1.png
10 | :width: 600
11 | :align: center
12 | :alt: Monitor assets in Adagios
13 |
14 | Adagios responsive interface
15 |
16 | To check the status of our hosts, simply click “Hosts” on the left navigation.
17 |
18 | .. figure:: ../img/Adagios-hosts-view.png
19 | :width: 600
20 | :align: center
21 | :alt: Adagios hosts view
22 |
23 | Adagios hosts view.
24 |
25 | You’ll see the host `we added previously <./add_first_host.html>`__ (server1) is showing with the status of UP. This means the ping replied. There is no Service Status, since we did not add any extra service monitors. To see an example of what is possible, expand the NEMS host (which is included on your NEMS Linux server) by clicking the triangle next to its name.
26 |
27 | .. figure:: ../img/Expanded-view-of-Host-reveals-configured-service-checks.png
28 | :width: 600
29 | :align: center
30 | :alt: Expanded Adagios host view
31 |
32 | Expanded view of Host reveals configured service checks.
33 |
34 | Problem Acknowledgement
35 | -----------------------
36 |
37 | In the case of a problem, you can open the host or service experiencing the problem to see more information, and even acknowledge the issue so you don't continue receiving notifications.
38 |
39 | Other Ways to Monitor Your Assets
40 | ---------------------------------
41 |
42 | I would also like to encourage you to test `NEMS Mobile UI <../apps/mobile.html>`__, `NEMS TV Dashboard <../apps/nems-tv.html>`__ and `NEMS Tactical Overview <../apps/tactical_overview.html>`__, all of which are also found on the Reporting menu of the NEMS Dashboard. The first is meant to offer you a complete mobile interface for monitoring your assets, and the latter two allow you to set up a TV display in your server room that shows a real-time tactical overview of your NEMS host and service checks.
43 |
44 | .. figure:: ../img/NEMS-TV-Dashboard-on-NEMS-Linux-1.4.1.png
45 | :width: 600
46 | :align: center
47 | :alt: Expanded Adagios host view
48 |
49 | NEMS TV Dashboard circa NEMS Linux 1.4.1.
50 |
--------------------------------------------------------------------------------
/docs/gettingstarted/notification_definitions.rst:
--------------------------------------------------------------------------------
1 | Understanding Notification Definitions
2 | ======================================
3 |
4 | Before you setup your first check commands, you'll need to understand what the single-character notification options mean. Failure to correctly set notification settings could result in no notifications being generated, or an excess of notifications being sent.
5 |
6 | Refer back to this list as needed, as you'll need to understand what commands such as `w,u,c,r,f` mean.
7 |
8 | Host Notification Settings
9 | --------------------------
10 |
11 | When you see `d,u,r,f,s,n`, these are the definitions:
12 |
13 | * **d** Notify if host is down,
14 | * **u** Notify if host is unreachable (E.G. Internet down),
15 | * **r** Notify upon recovery,
16 | * **f** Notify if the host is flapping (up/down/up/down),
17 | * **s** Notify if a scheduled service downtime begins or ends,
18 | * **n** Never notify.
19 |
20 | .. admonition:: Exercise
21 | :class: note
22 |
23 | The NEMS Server sample host uses the *linux-server* Host Template. So rather than having to set the notification options within the host itself, we set these within the template. Can you determine from the above list what the default notification settings are for *linux-server* devices by looking at the host template? You'll find the *linux-server* Host Template in Configuration -> NEMS Configurator. Press the *Show* button next to *Host templates* on the menu, followed by the edit pencil next to *linux-server*.
24 |
25 | Service Notification Settings
26 | -----------------------------
27 |
28 | When you see `w,u,c,r,f,n`, these are the definitions:
29 |
30 | * **w** Notify if in warning state,
31 | * **u** Notify if in unknown state,
32 | * **c** Notify if in critical state,
33 | * **r** Notify if recovered from a previously bad state,
34 | * **f** Notify if the service is flapping (up/down/up/down),
35 | * **n** Never notify.
36 |
--------------------------------------------------------------------------------
/docs/gettingstarted/smtp.rst:
--------------------------------------------------------------------------------
1 | Configuring SMTP for NEMS Email Notifications
2 | =============================================
3 |
4 | Introduction
5 | ------------
6 |
7 | The first thing you’ll want to do on your new NEMS Linux server is configure your SMTP settings. This will allow your NEMS server to email you if a problem is detected.
8 |
9 | Access the NEMS System Settings Tool (SST) from the Configuration menu of your NEMS dashboard. This browser-based tool eliminates the need to use the traditional Nagios `resource.cfg` file to configure your email and other settings.
10 |
11 | One of the nice things about NEMS Linux is that I really don’t have to go into detail about how to do this. It is so intuitive that it does not require explanation. So I’ll just provide a screenshot:
12 |
13 | .. figure:: ../img/smtp_nems-sst-1.6.png
14 | :width: 600
15 | :align: center
16 | :alt: Adding SMTP Credentials in NEMS System Settings Tool
17 |
18 | Configuring your SMTP server in NEMS is as simple as configuring a mail client.
19 |
20 | .. Tip:: If you’re using Gmail as your SMTP provider, be sure to review `the additional steps required <../config/smtp_config_gmail.html>`__.
21 |
22 | Test Email Notification Settings
23 | --------------------------------
24 |
25 | .. note:: If you're using NEMS Linux 1.5.x or lower, the button does not exist in NEMS SST. Instead, open a terminal on your NEMS Server and type: ``sudo nems-mailtest ``
26 |
27 | NEMS Linux features an easy-to-use tool which will load your SMTP
28 | settings as entered in NEMS SST and send you a test email. It will
29 | also show you the results of the attempt, which may be helpful if you
30 | experience an error.
31 |
32 | Once you've added your SMTP server settings in NEMS SST, simply press the
33 | *Test SMTP Settings* button.
34 |
35 | .. raw:: html
36 |
37 |
38 |
39 | Save Your Settings
40 | ------------------
41 |
42 | Once you are confident your SMTP settings are correctly entered, click **Save All Settings (All Pages)**.
43 |
--------------------------------------------------------------------------------
/docs/global.rst:
--------------------------------------------------------------------------------
1 | .. role:: bolditalic
2 | :class: bolditalic
3 |
4 | .. role:: underline
5 | :class: underline
6 |
7 |
--------------------------------------------------------------------------------
/docs/img/20181230-Dashboard.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/20181230-Dashboard.jpg
--------------------------------------------------------------------------------
/docs/img/20230104-Dashboard.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/20230104-Dashboard.jpg
--------------------------------------------------------------------------------
/docs/img/308-cim-general-system-error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/308-cim-general-system-error.png
--------------------------------------------------------------------------------
/docs/img/308-cim-server-service.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/308-cim-server-service.png
--------------------------------------------------------------------------------
/docs/img/Adagios-hosts-view.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Adagios-hosts-view.png
--------------------------------------------------------------------------------
/docs/img/Adagios-interface-on-NEMS-Linux-1.4.1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Adagios-interface-on-NEMS-Linux-1.4.1.png
--------------------------------------------------------------------------------
/docs/img/Add-a-host-1.6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Add-a-host-1.6.png
--------------------------------------------------------------------------------
/docs/img/Add-a-host.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Add-a-host.png
--------------------------------------------------------------------------------
/docs/img/Cockpit-terminal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Cockpit-terminal.png
--------------------------------------------------------------------------------
/docs/img/Create-New-misccommand-to-check-host-alive-Using-IPv4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Create-New-misccommand-to-check-host-alive-Using-IPv4.png
--------------------------------------------------------------------------------
/docs/img/Creating-a-Host-to-Monitor-IPv4-SSL-Web-Site.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Creating-a-Host-to-Monitor-IPv4-SSL-Web-Site.png
--------------------------------------------------------------------------------
/docs/img/Creating-an-Advanced-Service-to-Check-SSL-Web-Sites.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Creating-an-Advanced-Service-to-Check-SSL-Web-Sites.png
--------------------------------------------------------------------------------
/docs/img/Expanded-view-of-Host-reveals-configured-service-checks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Expanded-view-of-Host-reveals-configured-service-checks.png
--------------------------------------------------------------------------------
/docs/img/Host-Preset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Host-Preset.png
--------------------------------------------------------------------------------
/docs/img/Khadas.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Khadas.png
--------------------------------------------------------------------------------
/docs/img/Khadas.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Khadas.webp
--------------------------------------------------------------------------------
/docs/img/NEMS-1.4.1-Dashboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-1.4.1-Dashboard.png
--------------------------------------------------------------------------------
/docs/img/NEMS-Adagios-Shows-nemslinux.com-is-UP.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-Adagios-Shows-nemslinux.com-is-UP.png
--------------------------------------------------------------------------------
/docs/img/NEMS-Initialization.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-Initialization.png
--------------------------------------------------------------------------------
/docs/img/NEMS-Linux-1.5-dashboard-with-a-user-uploaded-background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-Linux-1.5-dashboard-with-a-user-uploaded-background.png
--------------------------------------------------------------------------------
/docs/img/NEMS-SST-CheckIn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-SST-CheckIn.png
--------------------------------------------------------------------------------
/docs/img/NEMS-TV-Dashboard-on-NEMS-Linux-1.4.1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-TV-Dashboard-on-NEMS-Linux-1.4.1.png
--------------------------------------------------------------------------------
/docs/img/NEMS-details-displayed-on-a-connected-TV.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS-details-displayed-on-a-connected-TV.png
--------------------------------------------------------------------------------
/docs/img/NEMS_Application_Icon_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NEMS_Application_Icon_sm.png
--------------------------------------------------------------------------------
/docs/img/NemsOutlook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/NemsOutlook.png
--------------------------------------------------------------------------------
/docs/img/New-Host-Preset-for-IPv4-Web-Sites.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/New-Host-Preset-for-IPv4-Web-Sites.png
--------------------------------------------------------------------------------
/docs/img/New-hostgroup-for-web_site_ssl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/New-hostgroup-for-web_site_ssl.png
--------------------------------------------------------------------------------
/docs/img/PerfLogUsers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/PerfLogUsers.png
--------------------------------------------------------------------------------
/docs/img/PerfLogUsersAdd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/PerfLogUsersAdd.png
--------------------------------------------------------------------------------
/docs/img/PerfLogUsersCheck.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/PerfLogUsersCheck.png
--------------------------------------------------------------------------------
/docs/img/RPi_5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/RPi_5.png
--------------------------------------------------------------------------------
/docs/img/RPi_5_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/RPi_5_400.png
--------------------------------------------------------------------------------
/docs/img/Sample-NEMS-CheckIn-notification.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/Sample-NEMS-CheckIn-notification.png
--------------------------------------------------------------------------------
/docs/img/admin-ajax.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/admin-ajax.png
--------------------------------------------------------------------------------
/docs/img/argon_one.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/argon_one.jpg
--------------------------------------------------------------------------------
/docs/img/asus_tinker_board_s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/asus_tinker_board_s.png
--------------------------------------------------------------------------------
/docs/img/asus_tinker_board_s_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/asus_tinker_board_s_400.png
--------------------------------------------------------------------------------
/docs/img/back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/back.png
--------------------------------------------------------------------------------
/docs/img/branding/nconf_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nconf_logo.png
--------------------------------------------------------------------------------
/docs/img/branding/nconf_logo.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nconf_logo.xcf
--------------------------------------------------------------------------------
/docs/img/branding/ncs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/ncs.png
--------------------------------------------------------------------------------
/docs/img/branding/nems-01.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-01.eps
--------------------------------------------------------------------------------
/docs/img/branding/nems-02.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-02.eps
--------------------------------------------------------------------------------
/docs/img/branding/nems-03.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-03.eps
--------------------------------------------------------------------------------
/docs/img/branding/nems-04.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-04.eps
--------------------------------------------------------------------------------
/docs/img/branding/nems-05.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-05.eps
--------------------------------------------------------------------------------
/docs/img/branding/nems-06.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-06.eps
--------------------------------------------------------------------------------
/docs/img/branding/nems-fullcolour.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-fullcolour.png
--------------------------------------------------------------------------------
/docs/img/branding/nems-greyscale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-greyscale.png
--------------------------------------------------------------------------------
/docs/img/branding/nems-secondary-fullcolour.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-secondary-fullcolour.png
--------------------------------------------------------------------------------
/docs/img/branding/nems-secondary-greyscale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-secondary-greyscale.png
--------------------------------------------------------------------------------
/docs/img/branding/nems-secondary-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-secondary-white.png
--------------------------------------------------------------------------------
/docs/img/branding/nems-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/nems-white.png
--------------------------------------------------------------------------------
/docs/img/branding/tv-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/branding/tv-icon.png
--------------------------------------------------------------------------------
/docs/img/bug-nic-cache.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/bug-nic-cache.png
--------------------------------------------------------------------------------
/docs/img/check_host_alive-check-command-details.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/check_host_alive-check-command-details.png
--------------------------------------------------------------------------------
/docs/img/check_nems_osb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/check_nems_osb.png
--------------------------------------------------------------------------------
/docs/img/check_pve-version.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/check_pve-version.png
--------------------------------------------------------------------------------
/docs/img/check_truepool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/check_truepool.png
--------------------------------------------------------------------------------
/docs/img/cockpit-limited-access.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/cockpit-limited-access.png
--------------------------------------------------------------------------------
/docs/img/cockpit-terminal-rpi5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/cockpit-terminal-rpi5.png
--------------------------------------------------------------------------------
/docs/img/dht11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/dht11.jpg
--------------------------------------------------------------------------------
/docs/img/dht11_dht22_pinout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/dht11_dht22_pinout.png
--------------------------------------------------------------------------------
/docs/img/dht22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/dht22.jpg
--------------------------------------------------------------------------------
/docs/img/dia_DHT11_RPi_GPIO.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/dia_DHT11_RPi_GPIO.png
--------------------------------------------------------------------------------
/docs/img/dia_KY-015_DHT_RPi_GPIO.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/dia_KY-015_DHT_RPi_GPIO.png
--------------------------------------------------------------------------------
/docs/img/discord-nems-webhook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/discord-nems-webhook.png
--------------------------------------------------------------------------------
/docs/img/first_nems_server.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/first_nems_server.jpg
--------------------------------------------------------------------------------
/docs/img/generate-nems-config.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/generate-nems-config.png
--------------------------------------------------------------------------------
/docs/img/hamburger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/hamburger.png
--------------------------------------------------------------------------------
/docs/img/icons_02.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_02.PNG
--------------------------------------------------------------------------------
/docs/img/icons_03.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_03.PNG
--------------------------------------------------------------------------------
/docs/img/icons_05.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_05.PNG
--------------------------------------------------------------------------------
/docs/img/icons_06.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_06.PNG
--------------------------------------------------------------------------------
/docs/img/icons_07.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_07.PNG
--------------------------------------------------------------------------------
/docs/img/icons_09.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_09.PNG
--------------------------------------------------------------------------------
/docs/img/icons_10.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_10.PNG
--------------------------------------------------------------------------------
/docs/img/icons_11.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_11.PNG
--------------------------------------------------------------------------------
/docs/img/icons_12.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_12.PNG
--------------------------------------------------------------------------------
/docs/img/icons_13.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/icons_13.PNG
--------------------------------------------------------------------------------
/docs/img/indiedroid_nova_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/indiedroid_nova_400.png
--------------------------------------------------------------------------------
/docs/img/khadas_vim3_basic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/khadas_vim3_basic.png
--------------------------------------------------------------------------------
/docs/img/khadas_vim3_basic_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/khadas_vim3_basic_400.png
--------------------------------------------------------------------------------
/docs/img/khadas_vim3_basic_600.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/khadas_vim3_basic_600.png
--------------------------------------------------------------------------------
/docs/img/logo_truepool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/logo_truepool.png
--------------------------------------------------------------------------------
/docs/img/mrtg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/mrtg.png
--------------------------------------------------------------------------------
/docs/img/nanopc-t4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nanopc-t4.png
--------------------------------------------------------------------------------
/docs/img/nanopc-t4_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nanopc-t4_400.png
--------------------------------------------------------------------------------
/docs/img/nconf_add_advanced_service.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nconf_add_advanced_service.png
--------------------------------------------------------------------------------
/docs/img/nconf_advanced_services_check_wmi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nconf_advanced_services_check_wmi.png
--------------------------------------------------------------------------------
/docs/img/nconf_logo_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nconf_logo_sm.png
--------------------------------------------------------------------------------
/docs/img/ncs_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/ncs_sm.png
--------------------------------------------------------------------------------
/docs/img/nems-extender-os.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-extender-os.png
--------------------------------------------------------------------------------
/docs/img/nems-fitlet2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-fitlet2.png
--------------------------------------------------------------------------------
/docs/img/nems-fullcolour_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-fullcolour_sm.png
--------------------------------------------------------------------------------
/docs/img/nems-greyscale_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-greyscale_sm.png
--------------------------------------------------------------------------------
/docs/img/nems-secondary-fullcolour_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-secondary-fullcolour_sm.png
--------------------------------------------------------------------------------
/docs/img/nems-secondary-greyscale_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-secondary-greyscale_sm.png
--------------------------------------------------------------------------------
/docs/img/nems-secondary-white_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-secondary-white_sm.png
--------------------------------------------------------------------------------
/docs/img/nems-server-overview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-server-overview.png
--------------------------------------------------------------------------------
/docs/img/nems-white_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems-white_sm.png
--------------------------------------------------------------------------------
/docs/img/nems_sst_windows_domain_credentials.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nems_sst_windows_domain_credentials.png
--------------------------------------------------------------------------------
/docs/img/nemsswap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nemsswap.png
--------------------------------------------------------------------------------
/docs/img/nsclient-setup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/nsclient-setup.png
--------------------------------------------------------------------------------
/docs/img/odroid-xu4q.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/odroid-xu4q.png
--------------------------------------------------------------------------------
/docs/img/odroid-xu4q_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/odroid-xu4q_400.png
--------------------------------------------------------------------------------
/docs/img/omzlo-warninglight-phat-connection-diagram.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/omzlo-warninglight-phat-connection-diagram.jpg
--------------------------------------------------------------------------------
/docs/img/omzlo-warninglight-prototype.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/omzlo-warninglight-prototype.jpg
--------------------------------------------------------------------------------
/docs/img/orange-pi-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/orange-pi-3.png
--------------------------------------------------------------------------------
/docs/img/orange-pi-3_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/orange-pi-3_400.png
--------------------------------------------------------------------------------
/docs/img/pinea64-plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/pinea64-plus.png
--------------------------------------------------------------------------------
/docs/img/pinea64-plus_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/pinea64-plus_400.png
--------------------------------------------------------------------------------
/docs/img/pivoyager.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/pivoyager.jpg
--------------------------------------------------------------------------------
/docs/img/piwatcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/piwatcher.png
--------------------------------------------------------------------------------
/docs/img/pushover-1.4.1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/pushover-1.4.1.png
--------------------------------------------------------------------------------
/docs/img/pushover_notifications.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/pushover_notifications.jpg
--------------------------------------------------------------------------------
/docs/img/qnap_controlPanelSSH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/qnap_controlPanelSSH.png
--------------------------------------------------------------------------------
/docs/img/raspberry-pi-gpio-layout-model-b-plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/raspberry-pi-gpio-layout-model-b-plus.png
--------------------------------------------------------------------------------
/docs/img/raspberry_pi_3_b_plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/raspberry_pi_3_b_plus.png
--------------------------------------------------------------------------------
/docs/img/raspberry_pi_3_b_plus_400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/raspberry_pi_3_b_plus_400.png
--------------------------------------------------------------------------------
/docs/img/raspberry_pi_3_b_plus_600.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/raspberry_pi_3_b_plus_600.png
--------------------------------------------------------------------------------
/docs/img/rightarrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/rightarrow.png
--------------------------------------------------------------------------------
/docs/img/screenshot_2019-08-19-19-28-48-089_org.telegram.messenger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/screenshot_2019-08-19-19-28-48-089_org.telegram.messenger.png
--------------------------------------------------------------------------------
/docs/img/screenshot_2019-08-19-19-32-50-622_org.telegram.messenger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/screenshot_2019-08-19-19-32-50-622_org.telegram.messenger.png
--------------------------------------------------------------------------------
/docs/img/screenshot_2019-08-19-19-41-44-985_org.telegram.messenger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/screenshot_2019-08-19-19-41-44-985_org.telegram.messenger.png
--------------------------------------------------------------------------------
/docs/img/screenshot_2019-08-19-19-43-25-138_org.telegram.messenger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/screenshot_2019-08-19-19-43-25-138_org.telegram.messenger.png
--------------------------------------------------------------------------------
/docs/img/screenshot_from_2017-11-09_22-40-23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/screenshot_from_2017-11-09_22-40-23.png
--------------------------------------------------------------------------------
/docs/img/smtp_nems-sst-1.6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/smtp_nems-sst-1.6.png
--------------------------------------------------------------------------------
/docs/img/smtp_nems-sst.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/smtp_nems-sst.png
--------------------------------------------------------------------------------
/docs/img/snmp_001.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_001.png
--------------------------------------------------------------------------------
/docs/img/snmp_002.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_002.png
--------------------------------------------------------------------------------
/docs/img/snmp_003.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_003.png
--------------------------------------------------------------------------------
/docs/img/snmp_004.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_004.png
--------------------------------------------------------------------------------
/docs/img/snmp_005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_005.png
--------------------------------------------------------------------------------
/docs/img/snmp_006.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_006.png
--------------------------------------------------------------------------------
/docs/img/snmp_007.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/snmp_007.png
--------------------------------------------------------------------------------
/docs/img/sponsor_logos/RNIT_Logo_Full_Dark.eps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/sponsor_logos/RNIT_Logo_Full_Dark.eps
--------------------------------------------------------------------------------
/docs/img/sponsor_logos/RNIT_Logo_Full_Dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/sponsor_logos/RNIT_Logo_Full_Dark.png
--------------------------------------------------------------------------------
/docs/img/sponsor_logos/cat5tv_network_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/sponsor_logos/cat5tv_network_dark.png
--------------------------------------------------------------------------------
/docs/img/ss_Cockpit_Power.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/ss_Cockpit_Power.png
--------------------------------------------------------------------------------
/docs/img/ss_NEMS_Power_Controller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/ss_NEMS_Power_Controller.png
--------------------------------------------------------------------------------
/docs/img/ss_check_minecraft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/ss_check_minecraft.png
--------------------------------------------------------------------------------
/docs/img/ss_check_minecraft_perfdata.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/ss_check_minecraft_perfdata.png
--------------------------------------------------------------------------------
/docs/img/ssvendorbranding.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/ssvendorbranding.png
--------------------------------------------------------------------------------
/docs/img/std_pivoyager-conn-bat.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/std_pivoyager-conn-bat.jpg
--------------------------------------------------------------------------------
/docs/img/std_pivoyager-pins.001.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/std_pivoyager-pins.001.jpeg
--------------------------------------------------------------------------------
/docs/img/synology-adagios-checks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/synology-adagios-checks.png
--------------------------------------------------------------------------------
/docs/img/synology-dsm-snmp-setup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/synology-dsm-snmp-setup.png
--------------------------------------------------------------------------------
/docs/img/synology-nas-800.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/synology-nas-800.png
--------------------------------------------------------------------------------
/docs/img/synology-nas.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/synology-nas.png
--------------------------------------------------------------------------------
/docs/img/telegram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/telegram.png
--------------------------------------------------------------------------------
/docs/img/temper-calibration-in-nems-sst.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/temper-calibration-in-nems-sst.png
--------------------------------------------------------------------------------
/docs/img/temper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/temper.png
--------------------------------------------------------------------------------
/docs/img/tv-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/tv-icon.png
--------------------------------------------------------------------------------
/docs/img/tv_dashboard_1.4.1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/tv_dashboard_1.4.1.png
--------------------------------------------------------------------------------
/docs/img/vm-virtualbox-001.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/vm-virtualbox-001.png
--------------------------------------------------------------------------------
/docs/img/warninglight.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/warninglight.jpg
--------------------------------------------------------------------------------
/docs/img/wmi_windows_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_01.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_02.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_03.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_04.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_05.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_06.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_07.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_07.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_08.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_08.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_09.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_09.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_10.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_11.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_12.png
--------------------------------------------------------------------------------
/docs/img/wmi_windows_13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NEMSLinux/nems-docs/ba428e3dfb5217057db8ff0daba1af44db5a6506/docs/img/wmi_windows_13.png
--------------------------------------------------------------------------------
/docs/misc/anonymousstats.rst:
--------------------------------------------------------------------------------
1 | NEMS Anonymous Stats
2 | ====================
3 |
4 | NEMS Linux sends anonymous, non-confidential usage data to the NEMS
5 | Linux Stats API. This data is aggregated by our system in a non-unique,
6 | entirely anonymous way.
7 |
8 | .. Note:: To ensure the privacy of our users' data, none of the data
9 | collected is identifying, nor is it even private information. We
10 | do not receive nor store any account information, passwords or the
11 | like.
12 |
13 | The data included in the anonymous stats contain:
14 |
15 | - Which platform you're running NEMS Linux on,
16 | - How many hosts you have configured,
17 | - How many services you have configured,
18 | - Your NEMS Linux version,
19 | - The size of your NEMS Linux storage medium (E.G., SD card),
20 | - How much free space you have on that same medium,
21 | - Your NEMS Linux server average system load,
22 | - Your NEMS Linux server uptime,
23 | - Your NEMS Linux server CPU temperature.
24 |
25 | In order to uniquely, but anonymously identify your NEMS Linux server
26 | (E.G., so we do not duplicate data if you send it twice and so others
27 | cannot pretend to be you) your NEMS Linux server will also provide us
28 | with your NEMS Linux API Key (which it generates automatically) as well as
29 | your NEMS Linux Hardware ID, which you can see within `NEMS Server
30 | Overview <../apps/serveroverview.html>`__.
31 |
32 | We store this information to give us an idea how many people are using
33 | NEMS Linux, how many hosts they're monitoring, and how we can better improve
34 | performance based on the information provided. We also provide an
35 | aggregated stats display to help other users see the average performance
36 | of each platform.
37 |
38 | To see how this data is made publicly available, please visit the `NEMS
39 | Linux Stats page `__.
40 |
41 | If you'd like to review what data we collect, please observe `the source
42 | code `__ or
43 | open `NEMS Server Overview <../apps/serveroverview.html>`__ on your
44 | NEMS Server.
45 |
--------------------------------------------------------------------------------
/docs/misc/backupnemsfile.rst:
--------------------------------------------------------------------------------
1 | Why support may ask for your backup.nems file
2 | =============================================
3 |
4 | ... and why you should never share it with others
5 | -------------------------------------------------
6 |
7 | During support sessions I often request either SSH access or a copy of
8 | the user’s *backup.nems* file. SSH access, it should be obvious, should
9 | not be shared with just anyone. Also, you should never, ever, ever, open
10 | SSH to the world on your NEMS server if you have not yet initialized it.
11 | This is because there are botnets that look for omputers which use the
12 | default passwords, and then compromize them.
13 |
14 | SSH aside, as it is pretty obvious why it is sometimes the best way for
15 | me to provide support, I wanted to document why I may ask for
16 | your *backup.nems* file, what this file tells me, and why you should not
17 | just send it to anyone offering to help.
18 |
19 | Your *backup.nems* file contains your complete NEMS configuration
20 | including those for your Nagios hosts, services, and your plain text
21 | resource.cfg file. This file contains your SMTP credentials which can be
22 | used by me to help diagnose email notification problems, but could also
23 | be used by a malicious user to compromize the mail account. This file
24 | also contains the administrator login information for your Windows
25 | machines, as entered by you. This too can be used by me to help diagnose
26 | an issue with hosts not responding, but can also be used by a malicious
27 | user to compromize your systems should this information get into the
28 | wrong hands.
29 |
30 | All this to say, store your *backup.nems* file as you would any other
31 | unencrypted backup set. It contains private information which is very
32 | helpful in diagnosing and helping resolve issues, but should be treated
33 | as a very confidential file.
34 |
35 | .. note:: **UPDATE:** As of February 2, 2018, NEMS Migrator encrypts sensitive configuration files before compiling backup.nems if you enter an encryption/decryption password in NEMS SST. While the backup itself is unencrypted, this prevents access to sensitive data such as your passwords.
36 |
37 | Please **do not** share your *backup.nems* file with third parties unless
38 | you are certain you can trust them. If you have any questions related to
39 | this document, please comment in the Community Forum.
--------------------------------------------------------------------------------
/docs/misc/nemslicensing.rst:
--------------------------------------------------------------------------------
1 | NEMS Licensing
2 | ==============
3 |
4 | Copyright © 2016-2021 Category5 TV Network.
5 |
6 | NEMS Linux is licensed under the GNU General Public License Version 2.
7 |
8 | GNU General Public License
9 | --------------------------
10 |
11 | Version 2
12 | ~~~~~~~~~
13 |
14 | **License:** https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
15 |
16 | - NEMS Linux
17 | - Nagios Core
18 | - NagVis
19 |
20 | Plugins
21 | -------
22 |
23 | - `wmic` Copyright 2015 David Lundgren. MIT License. See `LICENSE `__.
24 |
25 | Various Licenses
26 | ----------------
27 |
28 | - NEMS Cloud Services colored icons (red, yellow, green) created
29 | by `1RadicalOne `__.
30 |
--------------------------------------------------------------------------------
/docs/misc/nemszram.rst:
--------------------------------------------------------------------------------
1 | How NEMS Linux Uses ZRAM To Maximize Memory
2 | ===========================================
3 |
4 | .. figure:: ../img/nemsswap.png
5 | :width: 600
6 | :align: center
7 | :alt: NEMS Swap Screenshot
8 |
9 | On June 23, 2017 I disabled swap on NEMS 1.2 to decrease the read/writes
10 | to NEMS server SD cards on the Raspberry Pi.
11 |
12 | On February 5, 2018 you might notice your swap is … well … back. Or is
13 | it?
14 |
15 | Rather than a traditional swap partition or file, I'm doing things
16 | differently with NEMS 1.3. Your pseudo swap is actually (are you ready
17 | for this?) RAM! Well, ZRAM to be exact!
18 |
19 | The Raspberry Pi has very little RAM. 1GB. That's not much when it comes
20 | to all the things a NEMS Linux server has to do in its day to day. So
21 | how can I possibly give you more RAM on that wee hardware while not
22 | reducing the lifespan of your hardware? Allow me to explain…
23 |
24 | ZRAM allows me to create a ramdisk that can be used as swap. But what's
25 | really unique about ZRAM (which is a Linux kernel module) is that it
26 | compresses the data in the ramdrive on the fly.
27 |
28 | So here's how it works: your NEMS server starts to fill up the RAM and
29 | what happens? Well, it starts to swap stuff that should be in RAM to the
30 | swap. Only we disabled swap to extend the life of your SD card… so now,
31 | with this new ZRAM swap, it begins swapping instead to that. A swap
32 | “drive” that is actually compressed RAM. Therefore, if your RAM becomes
33 | full or close to full, it will begin swapping … or rather … compressing!
34 |
35 | So, when you see the 1GB swap on your NEMS 1.3 server, don't fear! It is
36 | not using your SD card, and it's actually a brilliant way to increase
37 | the RAM capacity of your Raspberry Pi.
38 |
--------------------------------------------------------------------------------
/docs/misc/vendorbranding.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux Vendor Branding
2 | ==========================
3 |
4 | .. figure:: ../img/ssvendorbranding.png
5 | :width: 600
6 | :align: center
7 | :alt: Vendor Branding Image
8 |
9 | Whether you're a vendor, distributor or IT professional, it's
10 | nice to include your own branding if you install a NEMS Server at a
11 | client site, or if you're building and selling NEMS Linux appliances.
12 |
13 | Currently the NEMS Linux Vendor Branding feature supports:
14 |
15 | 1. Vendor Logo
16 | 2. Vendor URL (optional)
17 | 3. Vendor License (optional)
18 |
19 | When you add your vendor logo, it will be scaled to a maximum height of
20 | 60 pixels and placed on the NEMS Dashboard above sponsor logos, and the
21 | sponsor logos will be shrunk to a smaller size. If you include a URL, the
22 | logo will be clickable and will open a new tab to your URL when clicked.
23 |
24 | Add Your Vendor Branding
25 | ------------------------
26 |
27 | .. Tip:: When creating your vendor image master, do not boot the image. Instead, add your vendor files using a card reader on a computer, and then create an img of the card containing your vendor files. If you boot the system from your card, the filesystem will be resized to fill the card, so your resulting img will be huge. You may then have trouble re-imaging it to new cards since the capacity from card to card may vary by a byte or two.
28 |
29 |
30 | 1. Mount your NEMS Linux drive (Eg., SD card) on your computer.
31 | 2. Place your logo in the *vendor* folder on the *boot* partition. It
32 | must be named **logo.png**
33 | 3. If you would like your logo to be clickable (eg., link to your
34 | company web site), create a file in that same folder
35 | called **url.txt** and paste your full URL into the file.
36 | 4. A Vendor License may be purchased, if desired. If a valid Vendor
37 | License is included, all users who share this build will be able to
38 | utilize your NEMS Cloud Services account. This means you will be able
39 | to monitor every server that is distributed under your account. This
40 | feature is intended for IT administrators who need to monitor
41 | widespread networks.
42 |
43 | Logo Tips
44 | ---------
45 |
46 | - Your logo should have a transparent background.
47 | - Your logo should scale nicely and be recognizable when it is scaled
48 | to 60 pixels high.
49 | - You should assume the logo will always be presented on a dark
50 | background. If your logo is dark, consider adding a light border to
51 | your logo.png file.
52 | - URLs need to be complete. For example, **nemslinux.com** is
53 | incorrect, whereas **https://nemslinux.com/** is correct.
54 | - Be mindful that you are placing your logo file within
55 | the *boot* partition, which is generally quite small. Ensure your
56 | file is of reasonable size, especially considering it will be scaled
57 | down to a height of 60 pixels. So a massive high-res logo.png is
58 | really unnecessary. If you run out of space on *boot* you could
59 | experience problems.
60 |
61 | Whitelabel Branding
62 | -------------------
63 |
64 | Whitelabel branding of NEMS Linux is available on a subscription basis
65 | for enterprise users looking to fully brand NEMS Linux to their company.
66 | Whitelabel service includes VIP support, custom feature production, and
67 | is always confidential. NEMS Linux is in use within government, healthcare,
68 | telecommunications and travel (both on earth and beyond).
69 |
70 | To enquire about Whitelabel Branding, please contact nems@category5.tv (serious
71 | enquiries only).
72 |
--------------------------------------------------------------------------------
/docs/nems-cloud-services/api.rst:
--------------------------------------------------------------------------------
1 | NEMS Cloud Services API
2 | =======================
3 |
4 | NEMS Cloud Services features some basic API functionality to improve the
5 | NEMS Linux experience. These are more like helper tools to make NEMS
6 | just a bit better.
7 |
8 | - https://nemslinux.com/api/mac - Generate a Random MAC Address. Can be
9 | helpful when configuring a new `NEMS Virtual
10 | Appliance <../gettingstarted/platforms.html#nems-linux-virtual-appliance>`__.
11 |
12 | - https://nemslinux.com/api/ip - IP Address detection. Can be used to
13 | determine the public IP address of your network.
14 |
15 | .. code-block:: console
16 |
17 | curl https://nemslinux.com/api/ip
18 |
--------------------------------------------------------------------------------
/docs/nems-cloud-services/checkin.rst:
--------------------------------------------------------------------------------
1 | NEMS CheckIn
2 | ============
3 |
4 | Introduction
5 | ------------
6 |
7 | NEMS CheckIn is a feature of NEMS Cloud Services designed to address concerns that if a NEMS Server was to go offline, the admin would stop receiving notifications and may not realize this for some time. In early versions of NEMS Linux, this led to some users setting up multiple NEMS Servers--NEMS Servers to monitor NEMS Servers.
8 |
9 | NEMS CheckIn is the answer to this. If enabled, NEMS CheckIn will tell the NEMS Cloud Services API that your NEMS server is online. If your NEMS server goes offline (stops reporting in), the NEMS Cloud Services server will send you an email letting you know it lost contact with your NEMS server.
10 |
11 | Configuration
12 | -------------
13 |
14 | NEMS CheckIn can be enabled within NEMS System Settings Tool under NEMS Cloud Services. It is disabled by default.
15 |
16 | .. figure:: ../img/NEMS-SST-CheckIn.png
17 | :width: 600
18 | :align: center
19 | :alt: NEMS CheckIn Settings in NEMS SST
20 |
21 | Configuring NEMS CheckIn in NEMS SST is a breeze
22 |
23 | Should the server not hear from your NEMS Linux server within a set time frame, an email will be sent to the email address you've specified in NEMS System Settings Tool, alerting you that your NEMS Server has failed to check in. It is a simple but highly effective solution.
24 |
25 |
26 | Notifications
27 | -------------
28 |
29 | A total of up to 5 notifications will be sent should your NEMS server fail to check in. Notices are sent at intervals of:
30 |
31 | 1. The interval you choose in NEMS SST (Default is after your NEMS server has been offline for 2 hours)
32 | 2. After 6 hours of downtime.
33 | 3. After 24 hours of downtime.
34 | 4. After 48 hours of downtime.
35 | 5. Following recovery.
36 |
37 | .. figure:: ../img/Sample-NEMS-CheckIn-notification.png
38 | :width: 600
39 | :align: center
40 | :alt: NEMS CheckIn Notification
41 |
42 | A sample NEMS CheckIn notification
43 |
44 | Anti-Spam
45 | ---------
46 |
47 | All NEMS CheckIn notifications will come from `noreply@nemslinux.com` and will match our DKIM. However, aggressive anti-spam may move these important messages to your junk folder. Please be sure to proactively whitelist `noreply@nemslinux.com` so you always see your NEMS CheckIn notifications.
48 |
49 | System Requirements
50 | -------------------
51 |
52 | NEMS CheckIn requires the following:
53 |
54 | * An active NEMS Cloud Services account,
55 | * NEMS Linux 1.5 or higher,
56 | * A working recipient email account to send notifications to.
57 |
58 | NEMS CheckIn does not require that you have a sending email service.
59 |
60 | Troubleshooting
61 | ---------------
62 |
63 | **State shows "Enabled [Not Functional]"**
64 |
65 | In order to use NEMS Cloud Services, you must have a valid account linked to your NEMS Server. Please sign in using the NEMS Cloud Services Key in order to use NEMS CheckIn.
66 |
--------------------------------------------------------------------------------
/docs/nems-cloud-services/index.rst:
--------------------------------------------------------------------------------
1 | NEMS Cloud Services
2 | ===================
3 |
4 | Quick points
5 |
6 | - *nems-info cloudauth* will show if your NEMS Cloud Services account
7 | is active or not.
8 | - When active, NEMS Cloud Services will receive the updated status of
9 | all your NEMS servers every 60 seconds.
10 |
11 | Requirements
12 | ------------
13 |
14 | In order to use NEMS Cloud Services, you must be running NEMS Linux 1.5
15 | or higher. You must also be a Patron of `NEMS Linux on
16 | Patreon `__ at a tier that includes NEMS
17 | Cloud Services.
18 |
19 | Included Services
20 | -----------------
21 |
22 | .. toctree::
23 | :maxdepth: 1
24 | :caption: Components
25 |
26 | nems-migrator
27 | checkin
28 | api
29 |
30 | NEMS Cloud Services Dashboard
31 | -----------------------------
32 |
33 | Features
34 | ~~~~~~~~
35 |
36 | - View your NEMS Linux state information from anywhere.
37 | - Open NEMS TV Dashboard for any of your NEMS Servers from anywhere.
38 | - Connect multiple NEMS Servers to a single dashboard to be able to see
39 | the state of multiple distributed NEMS Servers on one screen.
40 | - Extend NEMS Warning Light and NEMS GPIO Extender to support multiple
41 | NEMS Servers and be geographically located anywhere in the world.
42 |
43 | Security Points
44 | ~~~~~~~~~~~~~~~
45 |
46 | - Cloud Dashboard password is set in NEMS SST
47 | - Password is salted with a 256-byte key before the data from nems is
48 | encrypted
49 | - data includes state information only (same info that appears on nems
50 | tv dashboard)
51 | - multiple NEMS servers may be linked together to a single cloud
52 | dashboard
53 | - since nobody knows your custom password, only you can see your data
54 | (it cannot be decrypted without your password)
55 | - leaving dashboard open continually extends cookie, so it is suitable
56 | for server room (don't need to continually login)
57 |
58 | Frequently Asked Questions
59 | ~~~~~~~~~~~~~~~~~~~~~~~~~~
60 |
61 | **Why do I have to enter my NEMS HWID, NEMS Cloud Services Key and
62 | Decryption Password to login? Can't you make it so I can create a
63 | username and password and login that way?**
64 |
65 | Your NEMS HWID and NEMS Cloud Services Key authenticates your session.
66 | Your Decryption Password on the other hand allows NEMS Cloud Services to
67 | decrypt your NEMS State information. For your safety, your decryption
68 | password is never stored on the server, and only you know it. I will not
69 | create a mechanism for your private decryption password to be associated
70 | with your account. You must enter it every time you login, since it is
71 | never stored within NEMS Cloud Services.
72 |
73 | **Since I have to enter my decryption password only once per session,
74 | how can you say it is not stored?**
75 |
76 | When you enter your encryption password, it is transmitted over your
77 | browser's SSL connection to the NEMS Cloud Services server. There, it is
78 | not stored in the session. Rather, your password is salted and hashed,
79 | and this hash is what is stored in the session. Once your session has
80 | expired, your hash is discarded.
81 |
--------------------------------------------------------------------------------
/docs/nems-saas/api.rst:
--------------------------------------------------------------------------------
1 | NEMS SaaS API
2 | =============
3 |
4 | Trends API
5 | ^^^^^^^^^^
6 |
7 | Obtain the JSON output of your NEMS SaaS endpoint trends for a duration of time.
8 |
9 | ``https://api-saas.nemslinux.com/trends/SAASKEY?ver=[num]``
10 |
11 | ``SAASKEY`` = Your NEMS SaaS Key
12 |
13 | ``ver``:
14 |
15 | - ``0`` = [Default] The current state of your NEMS SaaS endpoints
16 | - ``1`` = The last hour's trends for your NEMS SaaS endpoints
17 | - ``2`` = The past 6 hours trends
18 | - ``3`` = The past 12 hours trends
19 | - ``4`` = 24 hour trend for your NEMS SaaS endpoints
20 | - ``5`` = 7 days worth of trends
21 | - ``6`` = 1 month trend
22 | - ``7`` = Last 10 state changes
23 | - ``8`` = Last 25 state changes
24 | - ``9`` = Last 50 state changes
25 |
26 | Sample JSON Output:
27 |
28 | ``{"results":[{"ok":4,"warn":0,"crit":0,"statechange":"2022-08-27 07:51:40"}]}``
29 |
30 | Results are presented most recent to oldest. Timezone of statechange matches the user's defined timezone.
31 |
--------------------------------------------------------------------------------
/docs/nems-saas/index.rst:
--------------------------------------------------------------------------------
1 | NEMS SaaS
2 | =========
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: NEMS SaaS
7 |
8 | api
9 | nems-saas-probe
10 | probes/qnap
11 |
--------------------------------------------------------------------------------
/docs/nems-saas/nems-saas-probe.rst:
--------------------------------------------------------------------------------
1 | NEMS SaaS Probe
2 | ===============
3 |
4 | Introduction
5 | ^^^^^^^^^^^^
6 |
7 | The NEMS SaaS Probe is a small daemon which runs on your endpoints, collecting performance data about the endpoint. This data is then sent to NEMS SaaS, where it is aggregated and provided to your account for reporting and alerting.
8 |
9 | The NEMS SaaS Probe is a benign application which gathers non-identifying information such as CPU load, disk space usage, and so-on.
10 |
11 | The NEMS SaaS Probe is designed to be easy to deploy, with no firewall rules to create and no check commands to configure.
12 |
13 | Its source code is available for your review at https://github.com/NEMSLinux/nems-saas-probe/blob/main/src/nems-saas-probe
14 |
15 | Security
16 | ^^^^^^^^
17 |
18 | NEMS SaaS Probe sends your data packet to the NEMS SaaS servers via an encrypted connection, which is authenticated to your account with your NEMS SaaS Key.
19 |
20 | The NEMS SaaS built-in JSON web server provides JSON responses only when the correct NEMS SaaS Key is provided as POST data. This server is intended for LAN or VPN use. If (and only if) absolutely necessary, please consider opening port ``6367`` only to the IP addresses you will be running your application on. While unlikely, it should be noted that a MITM attack could steal your NEMS SaaS Key if you connect to port 6367 successfully from an Internet location (as opposed to LAN or VPN). Do not open port 6367 to the world.
21 |
22 | Built-In Web Server
23 | ^^^^^^^^^^^^^^^^^^^
24 |
25 | As of version 1.0.050, the NEMS SaaS Probe is able to serve JSON responses containing the data packet. The server is running by default on port ``6367``.
26 |
27 | This is provided as a helpful feature to developers and power users, but is a requirement of using NEMS SaaS. You do not need to configure your firewall to use this server if you are not a developer tapping into the JSON data, and an in-house NEMS Server (on the same LAN) can use this data to monitor your endpoints in-house.
28 |
29 | You may optionally parse this data in your own app, or create a NEMS Linux check command to query this data.
30 |
31 | In addition to the standard data packet, there are two other defined keys:
32 |
33 | **packet**
34 |
35 | Packet will be ``0`` or ``1``. 0 means the packet has not succeeded in sending to NEMS SaaS. 1 means the packet was successfully sent to NEMS SaaS. For more details on why a packet has not been sent, check your nems-saas.log on the system running the NEMS SaaS Probe.
36 |
37 | **timer**
38 |
39 | Timer is the value, in seconds, of how long the NEMS SaaS Probe is waiting before it sends the next packet to the NEMS SaaS servers. This number is dynamic and changes with each packet. It can be used to set a sleep timer on your own queries to the probe. There is no point in quering the probe again sooner since the probe will not have any new information to report (the packet will be the same).
40 |
41 | Disable
42 | -------
43 |
44 | Turn off the built-in web server with the ``--noserver`` command line argument.
45 |
46 | Query Example
47 | -------------
48 |
49 | Your query must contain a POST containing only your account's NEMS SaaS Key (found in your user settings when logged into NEMS SaaS).
50 |
51 | ``curl --http0.9 -d "00000000-0000-0000-0000-00000000" -X POST http://192.168.0.5:6367``
52 |
53 | Replace ``00000000-0000-0000-0000-00000000`` with your actual NEMS SaaS Key.
54 |
55 | Replace ``192.168.0.5`` with the actual IP of the system running the probe.
56 |
--------------------------------------------------------------------------------
/docs/nems-saas/probes/qnap.rst:
--------------------------------------------------------------------------------
1 | NEMS SaaS Probe Installation on QNAP NAS
2 | ========================================
3 |
4 | Introduction
5 | ^^^^^^^^^^^^
6 |
7 | QNAP NAS devices run a Linux distribution called `QTS `__. As such, the NEMS SaaS probe is able to monitor your QNAP NAS device as if it was any other Linux server.
8 |
9 | Ensure Your QNAP Is Prepared
10 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
11 |
12 | Step 1. Enable SSH Access.
13 | --------------------------
14 |
15 | In order to access the Linux terminal on your QNAP device, you must enable SSH access.
16 |
17 | Open ``Control Panel -> Network & File Services -> Telnet / SSH`` and place a checkbox next to ``Allow SSH Connections``.
18 |
19 | .. figure:: ../../img/qnap_controlPanelSSH.png
20 | :width: 800
21 | :align: center
22 | :alt: Enable SSH in QNAP Control Panel
23 |
24 | If you use a different account than ``admin`` as your administrator account (which you should!) click ``Edit Access Permissions`` and add your user.
25 |
26 | Once you're finished, you can later return to this screen to disable SSH access.
27 |
28 | Step 2. Connect to your QNAP SSH Terminal.
29 | ------------------------------------------
30 |
31 | Step 3. Install nems-saas-config
32 | --------------------------------
33 |
34 | Step 4. Install nems-saas-probe
35 | -------------------------------
36 |
37 | ``sudo wget -O /usr/local/bin/nems-saas-probe https://github.com/NEMSLinux/nems-saas-probe/raw/main/linux/amd64/nems-saas-probe && sudo chmod +x /usr/local/bin/nems-saas-probe``
38 |
39 | Step 5. Enable auto-load at boot.
40 | ---------------------------------
41 |
--------------------------------------------------------------------------------
/docs/nems-tools/gpioextender.rst:
--------------------------------------------------------------------------------
1 | nems-tools: GPIO Extender
2 | -------------------------
3 |
4 | If your NEMS Linux server is not powered by a Raspberry Pi, or if it is
5 | not located where you'd like your NEMS Warning Light, plugging a NEMS
6 | Warning Light device into the GPIO isn't possible. That's where the NEMS
7 | Tools GPIO Extender comes in.
8 |
9 | To use the NEMS Tools GPIO Extender, you'll need any Raspberry Pi to act
10 | as the receiver, but your NEMS Linux server can be any supported
11 | platform, including Virtual Appliance. A Pi Zero WH would do very nicely
12 | for the task. Since the GPIO Extender receiver is separate from your
13 | NEMS Linux server, you can add Raspberry Pi's GPIO to your ODROID-N2
14 | NEMS Server, for example. Or install your NEMS Warning Light on a
15 | ceiling-mounted unit closer to the area where your technicians work,
16 | connected to the GPIO Extender server (your NEMS Linux server) over
17 | wifi. Or install your NEMS Warning Light on the other side of the world:
18 | Since the NEMS Tools GPIO Extender is IP-based, it can be anywhere as
19 | long as it has network access to your NEMS Linux server (TCP port 9595).
20 |
21 | To top it off, you can use an *unlimited* number of NEMS
22 | Tools GPIO Extender receivers with a single NEMS Linux Server.
23 |
24 | NEMS Linux 1.5+ has the NEMS Tools GPIO Extender server running on
25 | port 9595.
26 |
27 | To connect to the NEMS Linux GPIO Extender, simply boot up a separate
28 | device running `NEMS Extender OS `__.
29 |
--------------------------------------------------------------------------------
/docs/nems-tools/nems-hero.rst:
--------------------------------------------------------------------------------
1 | nems-tools: NEMS Hero
2 | ---------------------
3 |
4 | In the event of a catastrophic issue, such as a corrupt NEMS user or
5 | forgotten password, NEMS Linux technical support may use NEMS Hero to
6 | recover your NEMS Server, or to provide technical assistance.
7 |
8 | NEMS Hero grants temporary root access to a NEMS Server which has been
9 | freshly rebooted, and only if the NEMS Server is accessible (via a LAN
10 | or WAN connection).
11 |
12 | NEMS Hero Security
13 | ~~~~~~~~~~~~~~~~~~
14 |
15 | NEMS Hero uses an RSA key pair to establish an SSH trust relationship
16 | between a NEMS Server and the NEMS Linux technical support team. This
17 | trust relationship self destructs once a NEMS Server has been running
18 | for more than 15 minutes.
19 |
20 | In order for a connection to be established, the following conditions
21 | must be met:
22 |
23 | #. port forwarding must be setup on the network of the NEMS Server to
24 | allow a support technician remote SSH access to port 22 on the NEMS
25 | Server,
26 | #. the NEMS Server must have been rebooted within the past 15 minutes,
27 | #. the NEMS Server must not have a ``/boot/no-hero`` file in place,
28 | #. the NEMS Linux technical support representative must have our
29 | private RSA key,
30 | #. the NEMS Linux technical support representative must know our
31 | strong password to access the private RSA key.
32 |
33 | .. Tip:: If desired, this functionality can be disabled on a
34 | self-hosted NEMS Server by creating a file ``/boot/no-hero``
35 | on your NEMS Server. Because the ``/boot`` partition can be
36 | viewed and modified by plugging your NEMS Server's storage into
37 | a Windows, macOS or Linux computer, you can easily delete that
38 | file later and reboot your NEMS Server to re-enable NEMS Hero.
39 |
40 | System Requirements
41 | ~~~~~~~~~~~~~~~~~~~
42 |
43 | NEMS Hero requires NEMS Linux 1.6 or higher.
44 |
--------------------------------------------------------------------------------
/docs/nems-tools/nemseos.rst:
--------------------------------------------------------------------------------
1 | nems-tools: NEMS Extender OS
2 | ----------------------------
3 |
4 | The NEMS Extender OS (NEMSeOS) turns any Raspberry Pi device into a NEMS
5 | GPIO Extender receiver, complete with NEMS Warning Light connectivity.
6 |
7 | .. figure:: ../img/nems-extender-os.png
8 | :width: 600
9 | :align: center
10 | :alt: NEMS Extender OS
11 |
12 | Browser view of NEMS Extender OS
13 |
14 | With NEMS Extender OS, your NEMS Server is the transmitter, and
15 | the Raspberry Pi running NEMS Extender OS is the receiver. In this
16 | way, you can run your NEMS Server on a different platform, such as
17 | virtual appliance, ODROID-XU4 or PINE64 RockPro64, but then connect
18 | a NEMS Warning Light (or other compatible GPIO devices) to a separate
19 | Raspberry Pi device.
20 |
21 | A single NEMS Server can provide data to an unlimited number of NEMS
22 | GPIO Extender receivers. This means, for example, you can place a
23 | NEMS Warning Light in your server room, and one in your office.
24 | You can even place one at home if you're really that committed to
25 | uptime.
26 |
27 | NEMS Extender OS will be released at the same time as NEMS Linux 1.6.
28 |
29 | Following first boot, a file `nems-tools.conf` will be created in the
30 | /boot partition. If you need to change the configuration, simply shutdown
31 | NEMS Extender OS and plug the card into a computer to edit the file.
32 |
--------------------------------------------------------------------------------
/docs/notifications/index.rst:
--------------------------------------------------------------------------------
1 | NEMS Linux Notifications
2 | ========================
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 | :caption: Notifications
7 |
8 | ../gettingstarted/smtp
9 | pushover
10 | telegram
11 | pushover-vs-telegram
12 | sms
13 | webhook
14 |
15 |
--------------------------------------------------------------------------------
/docs/notifications/pushover-vs-telegram.rst:
--------------------------------------------------------------------------------
1 | Pushover vs. Telegram
2 | =====================
3 |
4 | Why Choose One Or The Other?
5 | ----------------------------
6 |
7 | This is not a comprehensive comparison. But rather, this document serves
8 | to help you select which push app is right for your needs.
9 |
10 | Pushover
11 | ~~~~~~~~
12 |
13 | See: `Notifications Using
14 | Pushover `__
15 |
16 | Pros
17 | ^^^^
18 |
19 | - Notifications feature colorization based on status, which helps
20 | critical alerts stand out.
21 | - There is a free trial, allowing you to test it before committing to
22 | buying.
23 | - You can set up delivery groups so your entire team is able to receive
24 | the notifications.
25 |
26 | Cons
27 | ^^^^
28 |
29 | - It costs $4.99 USD to buy the app. Multiply this by the number of
30 | people in your team who need to receive the notifications.
31 | - Having paid for the app, you receive 7,500 “free” notifications per
32 | month. If you exceed this, you must purchase more to continue
33 | receiving notifications.
34 |
35 | Telegram
36 | ~~~~~~~~
37 |
38 | See: `Push Notifications Using
39 | Telegram `__
40 |
41 | .. _pros-1:
42 |
43 | Pros
44 | ^^^^
45 |
46 | - Entirely Free. Your whole team can install the app and it will cost
47 | you nothing. There is no fee to purchase the app, and no subscription
48 | fees. There are not even any ads.
49 | - Viewing notifications is not limited to the app: You can open your
50 | bot in your web browser on your computer to see alerts.
51 | - You can add team members to the room so they also receive the
52 | notifications on their device.
53 | - Rich, easy-to-read notifications. Notices include a relevant emoji
54 | (eg., exclamation mark in event of problem, checkmark if all is well)
55 | and clean layout.
56 |
57 | .. _cons-1:
58 |
59 | Cons
60 | ^^^^
61 |
62 | - It cannot make me a latte.
63 |
--------------------------------------------------------------------------------
/docs/notifications/pushover.rst:
--------------------------------------------------------------------------------
1 | Configuring Pushover for NEMS Notifications
2 | ===========================================
3 |
4 | .. figure:: ../img/pushover_notifications.jpg
5 | :width: 300
6 | :align: right
7 | :alt: Pushover Image
8 |
9 | .. Warning:: **notify-service-by-pushover** and **notify-host-by-pushover** require NEMS 1.4+
10 |
11 | 1. Install the `Pushover `__ app on
12 | your `iOS `__ or `Android `__ Device.
13 | 2. `Sign up for an account `__, which is
14 | free to try (perfect for setting up and testing) but when you decide
15 | to use it indefinitely, there is an in-app purchase of around $5 to
16 | get the full license.
17 | 3. Login to their web site on your computer and `create an
18 | app `__. This will give you the Key
19 | you need to add to NEMS SST, along with your USER ID (also provided
20 | when you login to the web site).
21 | 4. Copy and paste your key and User key into NEMS SST and click “Save”.
22 | 5. In NEMS NConf,
23 | add **notify-service-by-pushover** and **notify-host-by-pushover** to
24 | your contact(s).
25 | 6. Done!
26 |
--------------------------------------------------------------------------------
/docs/notifications/sms.rst:
--------------------------------------------------------------------------------
1 | Notifications via SMS
2 | =====================
3 |
4 | Many mobile service providers offer the ability to receive SMS messages
5 | via an SMS Gateway. This means by sending an email to a special email
6 | address provided by your phone service company, you will receive the
7 | email as an SMS message.
8 |
9 | Of course, this is ideal for NEMS Linux notifications.
10 |
11 | Finding Your SMS Gateway Email Address
12 | --------------------------------------
13 |
14 | Rather than maintain a massive list here (reinventing the wheel), please
15 | see `mfitzp's List of SMS
16 | Gateways `__ CSV
17 | file.
18 |
19 | How To Configure
20 | ----------------
21 |
22 | Simply set your contact email address in NEMS
23 | NConf to the appropriate SMS Gateway address.
24 |
--------------------------------------------------------------------------------
/docs/notifications/webhook.rst:
--------------------------------------------------------------------------------
1 | Receiving Notifications via Webhook
2 | ===================================
3 |
4 | .. figure:: ../img/discord-nems-webhook.png
5 | :width: 300
6 | :align: right
7 | :alt: Webhook Notification
8 |
9 | Webhooks provide a means of publishing notifications to applications in real-time.
10 |
11 | NEMS Linux can use webhooks to send alerts about server downtime or performance issues
12 | directly to a designated Microsoft Teams or Slack channel, or Discord server. This allows
13 | you and your team to stay informed in real-time without having to continuously monitor
14 | your NEMS Server or email.
15 |
16 | Webhook functionality was first introduced in NEMS Linux 1.5, but that
17 | version was deprecated in favor of notify-by-webhook. Therefore, webhook
18 | notifications require NEMS Linux 1.7+. NEMS only sends
19 | webhooks. It does not receive them.
20 |
21 | How To Use
22 | ----------
23 |
24 | To have your NEMS Server notify you via webhook, simply add your
25 | webhook URL to `NEMS SST <../apps/nems-sst.html>`__ (under *Notifications*)
26 | and then add ``notify-by-webhook`` to both the Host and Service notifications
27 | for your contact in NEMS Configurator.
28 |
29 | Supported Webhooks
30 | ------------------
31 |
32 | - Microsoft Teams
33 | - Discord
34 | - Slack
35 |
36 | If you would like support added for another application, please post a
37 | feature request in the
38 | `nems-plugins Issue Tracker `__.
39 |
40 | Test Your Webhook
41 | -----------------
42 | .. code-block:: console
43 |
44 | sudo nems-webhooktest
45 |
46 | Webhook Icon
47 | ------------
48 |
49 | You may wish to include an icon when setting up your webhook. You can create your own, or `download one we have created for you from the NEMS Branding page <../../misc/nemsbranding.html#nems-generic-icons>`__.
50 |
--------------------------------------------------------------------------------
/docs/platforms/index.rst:
--------------------------------------------------------------------------------
1 | .. include:: ../global.rst
2 |
3 | Available Platforms
4 | ===================
5 |
6 | NEMS Linux is available on many platforms, such as Single Board Computer,
7 | Virtual Appliance, Cloud Deployment or Docker.
8 |
9 | Visit `the NEMS Linux web site `__ for a
10 | complete list of supported platforms.
11 |
12 | .. toctree::
13 | :maxdepth: 1
14 | :caption: Platforms
15 |
16 | sbc
17 | vm
18 | ami
19 | docker
20 |
--------------------------------------------------------------------------------
/docs/platforms/sbc.rst:
--------------------------------------------------------------------------------
1 | .. include:: ../global.rst
2 |
3 | NEMS Linux on Single Board Computers
4 | ====================================
5 |
6 | When choosing your hardware, general SBC comparisons are not necessarily
7 | relevant since you will be deploying a NEMS Linux server specifically.
8 | As an example, an ODROID-C2 vs Raspberry Pi 3 comparison will say
9 | Raspberry Pi 3 has better support for video drivers. Well, that won't
10 | matter to you; you're using NEMS Linux and we've pre-built the distro
11 | for you, and nothing about it requires good video driver support.
12 | So because of this, it is helpful to review `the NEMS Linux
13 | Stats page `__, and even `discuss it on our
14 | Discord Server `__ to make an educated
15 | decision.
16 |
17 | Here are some general guidelines.
18 |
19 | 1. eMMC storage is better than an SD Card. This is a universal truth. SD
20 | Cards have a high failure rate whereas eMMC tends to operate with
21 | perceptively similar reliability and performance to a traditional SSD.
22 | NEMS Linux performs
23 | a lot of read/write operations, as you can imagine, so the more
24 | reliable your storage medium, the more reliable your NEMS Server.
25 | 2. More RAM means better performance. The minimum recommended RAM is 1GB,
26 | though 2GB or higher will greatly improve performance and reliability
27 | of your NEMS Server.
28 |
29 | Raspberry Pi
30 | ------------
31 |
32 | .. figure:: ../img/raspberry_pi_3_b_plus.png
33 | :width: 500
34 | :align: center
35 | :alt: Raspberry Pi 3 B Plus
36 |
37 | `BUY NOW `__
38 |
39 | Pine64
40 | ------
41 |
42 | .. figure:: ../img/pinea64-plus.png
43 | :width: 500
44 | :align: center
45 | :alt: Pine64 A64 Plus
46 |
47 | Hardkernel ODROID XU4
48 | ---------------------
49 |
50 | .. figure:: ../img/odroid-xu4q.png
51 | :width: 500
52 | :align: center
53 | :alt: Odroid XU4Q
54 |
55 | FriendlyElec
56 | ------------
57 |
58 | .. figure:: ../img/nanopc-t4.png
59 | :width: 400
60 | :align: center
61 | :alt: NanoPC T4
62 |
63 | Orange Pi
64 | ---------
65 |
66 | .. figure:: ../img/orange-pi-3.png
67 | :width: 500
68 | :align: center
69 | :alt: Orange Pi 3
70 |
71 | ASUS Tinker Board / S
72 | ---------------------
73 |
74 | .. figure:: ../img/asus_tinker_board_s.png
75 | :width: 500
76 | :align: center
77 | :alt: Asus Tinkerboard S
78 |
79 | ASUS Tinker Board S must be switched to Maskrom boot mode in order to
80 | boot from SD card. The built-in eMMC is not big enough to run NEMS Linux
81 | from.
82 |
83 | Khadas VIM3
84 | -----------
85 |
86 | .. figure:: ../img/khadas_vim3_basic.png
87 | :width: 400
88 | :align: center
89 | :alt: Khadas VIM 3
90 |
91 | You can boot from SD or USB, then install NEMS Linux to the integrated
92 | eMMC storage by typing;
93 |
94 | .. code-block:: console
95 |
96 | sudo nems-install
97 |
98 | .. toctree::
99 | :maxdepth: 1
100 | :caption: Single Board Computers
101 |
102 | sbc/khadas
103 |
--------------------------------------------------------------------------------
/docs/platforms/sbc/khadas.rst:
--------------------------------------------------------------------------------
1 | .. include:: ../../global.rst
2 |
3 | NEMS Linux for Khadas Single Board Computers
4 | ============================================
5 |
6 | Khadas VIM3
7 | -----------
8 |
9 | .. figure:: ../../img/khadas_vim3_basic.png
10 | :width: 400
11 | :align: center
12 | :alt: Khadas VIM 3
13 |
14 | If you are unable to boot NEMS Linux from your microSD card or USB flash drive on a Khadas VIM3 board, please be sure to use the Krescue tool first to perform a full erase of your eMMC. https://dl.khadas.com/Firmware/Krescue/dump/VIM3.krescue.sd.img.gz
15 |
16 | You can boot from SD or USB, then install NEMS Linux to the integrated
17 | eMMC storage by typing;
18 |
19 | .. code-block:: console
20 |
21 | sudo nems-install
22 |
23 | LED Indicators
24 | ^^^^^^^^^^^^^^
25 |
26 | The Khadas VIM3 contains two buil-in LEDs which NEMS Warning Light utilizes by default.
27 |
28 | .. list-table:: Warning Light on VIM3
29 | :header-rows: 1
30 |
31 | * - LED
32 | - Meaning
33 | * - White Flashing
34 | - Unknown State or System is Booting
35 | * - White Solid
36 | - OK state
37 | * - White Solid, Red Flashing
38 | - Warning State
39 | * - Red Solid
40 | - Critical State
41 |
--------------------------------------------------------------------------------
/docs/requirements.txt:
--------------------------------------------------------------------------------
1 | alabaster==0.7.12
2 | babel==2.11.0
3 | certifi==2022.12.7
4 | charset-normalizer==2.1.1
5 | docutils==0.18.1
6 | idna==3.4
7 | imagesize==1.4.1
8 | jinja2==3.1.2
9 | markupsafe==2.1.1
10 | packaging==22.0
11 | pygments==2.13.0
12 | pytz==2022.7
13 | readthedocs-sphinx-search==0.1.1
14 | requests==2.28.1
15 | snowballstemmer==2.2.0
16 | sphinx==5.3.0
17 | sphinxcontrib-applehelp==1.0.2
18 | sphinxcontrib-devhelp==1.0.2
19 | sphinxcontrib-htmlhelp==2.0.0
20 | sphinxcontrib-jsmath==1.0.1
21 | sphinxcontrib-qthelp==1.0.3
22 | sphinxcontrib-serializinghtml==1.1.5
23 | sphinx-notfound-page==0.6
24 | sphinx_rtd_theme==1.3.0
25 | urllib3==1.26.13
26 |
--------------------------------------------------------------------------------
/docs/todolist/reportissues.rst:
--------------------------------------------------------------------------------
1 | How To Report Issues
2 | ====================
3 |
4 | Submit an Issue
5 | ---------------
6 |
7 | Please use the GitHub Issue Tracker for the appropriate repository.
8 | See `Source Code `__
9 |
--------------------------------------------------------------------------------
/docs/troubleshooting/multicast_name_resolution.rst:
--------------------------------------------------------------------------------
1 | Resolving DNS Hostnames on LAN
2 | ==============================
3 |
4 | Introduction
5 | ------------
6 |
7 | NEMS Linux uses two main Linux components to resolve `*`.local
8 | hostnames:
9 |
10 | 1. **avahi-daemon** - This allows other computers to see the `nems.local` host on the LAN.
11 | 2. **libnss-mdns** - This allows NEMS Linux to see other `*`.local computers on the LAN.
12 |
13 | Enabling Multicast Name Resolution
14 | ----------------------------------
15 |
16 | In order for NEMS Linux to be able to resolve a DNS hostname to its IP address, multicast must be enabled on the client system.
17 |
18 | Most modern systems will already provide multicast in one shape or another, so you only need to take action if a host is not replying to its hostname.
19 |
20 | - **Microsoft Windows Target** - Multicast is provided by the *Link-Local Multicast Name Resolution (LLMNR)* service which can be enabled or disabled using the computer's group policy (Local Computer Policy -> Computer Configuration -> Administrative Templates -> Network -> DNS Client). Otherwise, it is also included with a local installation of iTunes, or alternatively you can install `Apple's Bonjour service `__.
21 | - **Linux Target** - Simply install *avahi-daemon*. It will automatically enable itself during installation. avahi-daemon is in your distro's official repositories, so can be installed via any package manager.
22 | - **macOS Target** - No need to install anything; it's already included.
23 |
24 | .. note::
25 |
26 | If the target computer has a firewall enabled, you'll also need to allow UDP traffic through ports 5353 and 53791.
27 |
--------------------------------------------------------------------------------