From d8d743fe63bc32e72c1b38dc2fc41eba382d15ea Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Thu, 22 Jul 2021 23:09:14 +0200 Subject: pki: wireguard: T3642: remove obsolete op-mode script As the keys are now stored inside the CLI configuration and no longer in a file on the filesystem, this command is no longer required. Also there are dedicated CLI commands available to display the additional Wireguard information. - show interfaces wireguard wg10 - show interfaces wireguard wg10 summary --- .../show-interfaces-wireguard.xml.in | 2 +- src/op_mode/wireguard.py | 87 ---------------------- 2 files changed, 1 insertion(+), 88 deletions(-) delete mode 100755 src/op_mode/wireguard.py diff --git a/op-mode-definitions/show-interfaces-wireguard.xml.in b/op-mode-definitions/show-interfaces-wireguard.xml.in index ecbb903f8..863357ef7 100644 --- a/op-mode-definitions/show-interfaces-wireguard.xml.in +++ b/op-mode-definitions/show-interfaces-wireguard.xml.in @@ -11,7 +11,7 @@ - sudo ${vyos_op_scripts_dir}/wireguard.py --showinterface "$4" + ${vyos_op_scripts_dir}/show_interfaces.py --intf="$4" diff --git a/src/op_mode/wireguard.py b/src/op_mode/wireguard.py deleted file mode 100755 index 3ed8e17ca..000000000 --- a/src/op_mode/wireguard.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2018-2021 VyOS maintainers and contributors -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 or later as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -import argparse -import sys -import tabulate - -from vyos.config import Config -from vyos.ifconfig import WireGuardIf -from vyos.util import cmd -from vyos import ConfigError - -base = ['interfaces', 'wireguard'] - -def get_public_keys(): - config = Config() - headers = ['Interface', 'Peer', 'Public Key'] - out = [] - if config.exists(base): - wg_interfaces = config.get_config_dict(base, key_mangling=('-', '_'), - get_first_key=True, - no_tag_node_value_mangle=True) - - for wg, wg_conf in wg_interfaces.items(): - if 'peer' in wg_conf: - for peer, peer_conf in wg_conf['peer'].items(): - out.append([wg, peer, peer_conf['public_key']]) - - print("Wireguard Public Keys:") - print(tabulate.tabulate(out, headers)) - -def get_private_keys(): - config = Config() - headers = ['Interface', 'Private Key', 'Public Key'] - out = [] - if config.exists(base): - wg_interfaces = config.get_config_dict(base, key_mangling=('-', '_'), - get_first_key=True, - no_tag_node_value_mangle=True) - - for wg, wg_conf in wg_interfaces.items(): - private_key = wg_conf['private_key'] - public_key = cmd('wg pubkey', input=private_key) - out.append([wg, private_key, public_key]) - - print("Wireguard Private Keys:") - print(tabulate.tabulate(out, headers)) - -if __name__ == '__main__': - parser = argparse.ArgumentParser(description='wireguard key management') - parser.add_argument( - '--showpub', action="store_true", help='shows public keys') - parser.add_argument( - '--showpriv', action="store_true", help='shows private keys') - parser.add_argument( - '--showinterface', action="store", help='shows interface details') - args = parser.parse_args() - - try: - if args.showpub: - get_public_keys() - if args.showpriv: - get_private_keys() - if args.showinterface: - try: - intf = WireGuardIf(args.showinterface, create=False, debug=False) - print(intf.operational.show_interface()) - # the interface does not exists - except Exception: - pass - - except ConfigError as e: - print(e) - sys.exit(1) -- cgit v1.2.3