Compare commits

..

7 Commits

Author SHA1 Message Date
cffcd9bd3e makefile: utilisation de variable globale 2018-03-04 18:29:42 +01:00
3f80d6be6e scanner: activation du service + driver HP 2018-03-04 13:13:13 +01:00
e94b16fce7 ahout de "." dans les descriptions 2018-03-02 08:02:41 +01:00
3f038be64a template : ajout d'un exemple d'assertion 2018-03-02 07:57:10 +01:00
76fce51cf0 munin: config notifications 2018-02-16 00:32:52 +01:00
264a782227 ajout options de config pour quagga 2018-01-18 22:56:20 +01:00
e56040b333 u2f: import configuration pour activer le support des clefs FIDO / u2f
Notes :
- import de conf active sur radx
- fonctionne avec Chromium & Github
- ne fonctionne pas avec Firefox & Github
2018-01-17 21:08:25 +01:00
8 changed files with 94 additions and 9 deletions

View File

@@ -43,9 +43,8 @@ show-roots:
nix-store --gc --print-roots
show-time:
-@$(CHRONY_STATUS)
#CHRONY_STATUS='chronyc tracking' CHRONY_STATS='chronyc sources -v' ${CHRONY_STATS} && watch -d -n 20 "${CHRONY_STATUS} && echo "--" && ${CHRONY_STATS}"
-@watch -d -n 20 "$(CHRONY_STATUS) && echo "--" && $(CHRONY_STATS)"
-@$(CHRONY_STATUS) && $(CHRONY_STATS)
-@watch -d -n 5 "$(CHRONY_STATUS) && echo "--" && $(CHRONY_STATS)"
store-repair:
$(TIME) nix-store --verify --check-contents --repair

View File

@@ -21,7 +21,7 @@ environment.systemPackages = with pkgs; [
clawsMail
hexchat
quasselClient
mumble
#mumble
pidgin
thunderbird

View File

@@ -15,6 +15,7 @@ in
./localisation.nix
./network.nix
#./network-ipv6.nix
./u2f.nix
./udev.nix
# commandées par config-generator

41
configuration/u2f.nix Normal file
View File

@@ -0,0 +1,41 @@
{ config, lib, pkgs, ... }:
let
inherit (lib) mkIf mkMerge mkThenElse;
annuaire = config.r6d.machines;
currentMachine = annuaire."${config.networking.hostName}";
flags = currentMachine.configurationFlags;
in
mkIf true {
# Ajout du support des yobikey & hyperfido
## source des valeurs udev : https://github.com/Yubico/libu2f-host/blob/master/70-u2f.rules
## source car udev sur nixos semble ancien : https://raw.githubusercontent.com/Yubico/libu2f-host/master/70-old-u2f.rules
services.udev.extraRules = ''
# this udev file should be used with udev older than 188
ACTION!="add|change", GOTO="u2f_end"
# Yubico YubiKey
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1050", ATTRS{idProduct}=="0113|0114|0115|0116|0120|0402|0403|0406|0407|0410", GROUP="plugdev", MODE="0660"
# Happlink (formerly Plug-Up) Security KEY
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="f1d0", GROUP="plugdev", MODE="0660"
# Neowave Keydo and Keydo AES
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1e0d", ATTRS{idProduct}=="f1d0|f1ae", GROUP="plugdev", MODE="0660"
# HyperSecu HyperFIDO
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="096e", ATTRS{idProduct}=="0880", GROUP="plugdev", MODE="0660"
LABEL="u2f_end"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2838", GROUP="audio", MODE="0666", SYMLINK+="rtl_sdr"
'';
security.pam.enableU2F = true;
environment.systemPackages = with pkgs; [
libu2f-host
];
}

View File

@@ -22,4 +22,11 @@ mkIf true {
allowedUDPPorts = [
];
};
} // {
assertions = [
{
assertion = true;
message = "Assetion toujours valide.";
}
];
}

View File

@@ -62,10 +62,10 @@ let
configurationOptions = {
ipAddress = mkOption {
description = "Adresse IP";
description = "Adresse IP.";
type = lib.types.string;
};
nix-serve-server = mkEnableOption "nix-serve server";
nix-serve-server = mkEnableOption "nix-serve server.";
nix-serve-client = {
enable = mkEnableOption "nix-serve client";
servers = mkOption {
@@ -76,7 +76,7 @@ let
};
tinc = {
enable = mkEnableOption "Enable tinc service";
enable = mkEnableOption "Enable tinc service.";
dnsFQDN = mkOption {
example = "device.example.net.";
description = "DNS name of host pointing to tunnel IP.";
@@ -105,11 +105,26 @@ let
Mode = router
ConnecTo = bar
'';
description = "Configuration supplémentaire pour tinc";
description = "Configuration supplémentaire pour tinc.";
type = lib.types.string;
};
};
quagga = {
enable = mkEnableOption "Enable Quagga + BGP service";
bgpConfig = mkOption {
type = types.lines;
default = "";
example =''
router bgp 65001
neighbor 10.0.0.1 remote-as 65001
'';
description = ''
BGP configuration statements.
'';
};
};
windowsBoot = {
enable = mkEnableOption "Activation du démarrage de Windows par Grub";
drive = mkOption {

View File

@@ -48,9 +48,22 @@ mkIf flags.munin {
hosts = ''
[${config.networking.hostName}]
address 127.0.0.1
df._dev_sda2.warning 35
use_node_name yes
#contacts syslog
contacts email
'';
# http://sametmax.com/monitorez-vos-serveurs-avec-munin-et-notifications-par-email/
# http://guide.munin-monitoring.org/en/latest/tutorial/alert.html#syntax-of-warning-and-critical
extraGlobalConfig = ''
contact.email.command ${pkgs.mutt}/bin/mutt -F /etc/nixos/base/services/munin-muttrc -s "Munin notification for ''${var:host}" root@prunetwork.fr
#---
#contact.email.command ${pkgs.mutt}/bin/mutt -F /etc/nixos/base/services/munin-muttrc -s "Munin notification for ${config.networking.hostName}" root@ocean.prunetwork.fr
contact.email.command /run/current-system/sw/bin/mutt -F /etc/nixos/base/services/munin-muttrc -s "Munin notification for ${config.networking.hostName}" root@ocean.prunetwork.fr
contact.syslog.command /run/current-system/sw/bin/logger -p user.crit -t "Munin notification for ${config.networking.hostName}"
#---
contact.email.always_send ok,warning,critical,unknown
contact.syslog.always_send ok,warning,critical,unknown
'';
};

View File

@@ -11,11 +11,20 @@ mkIf flags.scanner {
# Paquets
environment.systemPackages = with pkgs; [
# Driver
hplip # Scanner HP
python27Packages.pyqt4 # dépendance hplip
# Outils pour exploiter les scanners
simple-scan
];
# Services
hardware.sane.enable = true;
services.saned = {
enable = true;
extraConfig = "192.168.0.0/24";
};
# Réseau
networking.firewall = {