84 lines
1.8 KiB
Markdown
84 lines
1.8 KiB
Markdown
# 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 devices in YAML, with `!include` directives
|
|
- **Device type templates**: Reusable command sets per device type, overridable per individual device
|
|
- **Flexible authentication**: SSH agent, key files, or password
|
|
|
|
## 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 files**:
|
|
|
|
**Main config** (`config.yaml`):
|
|
```yaml
|
|
devices:
|
|
asw100:
|
|
user: netops
|
|
type: srlinux
|
|
asw120:
|
|
user: netops
|
|
type: srlinux
|
|
```
|
|
|
|
**Device types** (`00-device-types.yaml`):
|
|
```yaml
|
|
types:
|
|
srlinux:
|
|
commands:
|
|
- show version
|
|
- show platform linecard
|
|
- info flat from running
|
|
```
|
|
|
|
2. **Run backup**:
|
|
|
|
```bash
|
|
# Backup all devices
|
|
ipng-router-backup --yaml *.yaml --output-dir /backup
|
|
|
|
# Backup specific devices
|
|
ipng-router-backup --yaml *.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
|