# IPng Networks Router Backup SSH-based network device configuration backup tool with support for multiple device types and flexible authentication methods. ## Features - **Multi-device backup**: Configure multiple routers in YAML - **Device type templates**: Reusable command sets per device type - **Flexible authentication**: SSH agent, key files, or password - **Selective execution**: Backup specific devices with `--host` flags - **Professional CLI**: Standard flags, version info, and help ## Quick Start ### Installation ```bash # Install Debian package sudo dpkg -i ipng-router-backup_X.Y.Z_amd64.deb # Or build from source make build ``` ### Basic Usage 1. **Create configuration file** (`config.yaml`): ```yaml types: srlinux: commands: - show version - show platform linecard - info flat from running devices: asw100: user: admin type: srlinux asw120: user: admin type: srlinux ``` 2. **Run backup**: ```bash # Backup all devices ipng-router-backup --config config.yaml --output-dir /backup # Backup specific devices ipng-router-backup --config config.yaml --host asw100 --output-dir /backup ``` 3. **Check output**: ```bash ls /backup/ # asw100 asw120 cat /backup/asw100 # ## COMMAND: show version # Hostname : asw100 # Software Version : v25.3.2 # ... ``` ## Authentication The tool automatically tries authentication methods in this order: 1. **SSH Agent** (if `SSH_AUTH_SOCK` is set) 2. **SSH Key File** (`--key-file` or default locations) 3. **Password** (`--password` flag) ## Documentation - **[Detailed Documentation](docs/DETAILS.md)** - Complete feature guide, configuration reference, and examples - **[Manual Page](docs/router_backup.1)** - Unix manual page - **[Changelog](debian/changelog)** - Version history and changes