82 lines
1.8 KiB
Markdown
82 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 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
|