333 lines
4.8 KiB
Markdown
333 lines
4.8 KiB
Markdown
|
|
# SSH Access Commands for Proxmox Nodes
|
||
|
|
|
||
|
|
**Date**: 2025-12-13
|
||
|
|
**Status**: ✅ **READY**
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Quick Reference
|
||
|
|
|
||
|
|
### Site-1 (ML110-01)
|
||
|
|
```bash
|
||
|
|
ssh root@192.168.11.10
|
||
|
|
```
|
||
|
|
|
||
|
|
### Site-2 (R630-01)
|
||
|
|
```bash
|
||
|
|
ssh root@192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Detailed Commands
|
||
|
|
|
||
|
|
### 1. SSH to ML110-01 (Site-1)
|
||
|
|
|
||
|
|
**Basic SSH**:
|
||
|
|
```bash
|
||
|
|
ssh root@192.168.11.10
|
||
|
|
```
|
||
|
|
|
||
|
|
**With hostname** (if DNS configured):
|
||
|
|
```bash
|
||
|
|
ssh root@ml110-01
|
||
|
|
```
|
||
|
|
|
||
|
|
**With SSH key** (if configured):
|
||
|
|
```bash
|
||
|
|
ssh -i ~/.ssh/proxmox_key root@192.168.11.10
|
||
|
|
```
|
||
|
|
|
||
|
|
**With specific options**:
|
||
|
|
```bash
|
||
|
|
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null root@192.168.11.10
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### 2. SSH to R630-01 (Site-2)
|
||
|
|
|
||
|
|
**Basic SSH**:
|
||
|
|
```bash
|
||
|
|
ssh root@192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
**With hostname** (if DNS configured):
|
||
|
|
```bash
|
||
|
|
ssh root@r630-01
|
||
|
|
```
|
||
|
|
|
||
|
|
**With SSH key** (if configured):
|
||
|
|
```bash
|
||
|
|
ssh -i ~/.ssh/proxmox_key root@192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
**With specific options**:
|
||
|
|
```bash
|
||
|
|
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null root@192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Connectivity Verification
|
||
|
|
|
||
|
|
### Test Network Connectivity
|
||
|
|
|
||
|
|
**Ping ML110-01**:
|
||
|
|
```bash
|
||
|
|
ping -c 3 192.168.11.10
|
||
|
|
```
|
||
|
|
|
||
|
|
**Ping R630-01**:
|
||
|
|
```bash
|
||
|
|
ping -c 3 192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
### Test SSH Access
|
||
|
|
|
||
|
|
**Test ML110-01 SSH**:
|
||
|
|
```bash
|
||
|
|
ssh -o ConnectTimeout=5 root@192.168.11.10 'hostname'
|
||
|
|
# Expected output: ML110-01 or similar
|
||
|
|
```
|
||
|
|
|
||
|
|
**Test R630-01 SSH**:
|
||
|
|
```bash
|
||
|
|
ssh -o ConnectTimeout=5 root@192.168.11.11 'hostname'
|
||
|
|
# Expected output: R630-01 or similar
|
||
|
|
```
|
||
|
|
|
||
|
|
### Test Proxmox API Access
|
||
|
|
|
||
|
|
**ML110-01 API**:
|
||
|
|
```bash
|
||
|
|
curl -k https://192.168.11.10:8006/api2/json/version
|
||
|
|
# Requires authentication - will show API version if accessible
|
||
|
|
```
|
||
|
|
|
||
|
|
**R630-01 API**:
|
||
|
|
```bash
|
||
|
|
curl -k https://192.168.11.11:8006/api2/json/version
|
||
|
|
# Requires authentication - will show API version if accessible
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Useful Commands After SSH
|
||
|
|
|
||
|
|
### System Information
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Proxmox version
|
||
|
|
pveversion
|
||
|
|
|
||
|
|
# System information
|
||
|
|
hostnamectl
|
||
|
|
uname -a
|
||
|
|
|
||
|
|
# CPU information
|
||
|
|
lscpu
|
||
|
|
|
||
|
|
# Memory information
|
||
|
|
free -h
|
||
|
|
|
||
|
|
# Disk information
|
||
|
|
df -h
|
||
|
|
lsblk
|
||
|
|
```
|
||
|
|
|
||
|
|
### Proxmox Status
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Cluster status
|
||
|
|
systemctl status pve-cluster
|
||
|
|
|
||
|
|
# Proxmox services
|
||
|
|
systemctl status pveproxy
|
||
|
|
systemctl status pvedaemon
|
||
|
|
|
||
|
|
# List all VMs
|
||
|
|
qm list
|
||
|
|
|
||
|
|
# List all containers
|
||
|
|
pct list
|
||
|
|
```
|
||
|
|
|
||
|
|
### Storage Information
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Storage status
|
||
|
|
pvesm status
|
||
|
|
|
||
|
|
# Storage details
|
||
|
|
pvesm list
|
||
|
|
|
||
|
|
# Ceph status (if configured)
|
||
|
|
ceph status
|
||
|
|
ceph df
|
||
|
|
ceph osd tree
|
||
|
|
```
|
||
|
|
|
||
|
|
### Network Information
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Network interfaces
|
||
|
|
ip addr show
|
||
|
|
|
||
|
|
# Network configuration
|
||
|
|
cat /etc/network/interfaces
|
||
|
|
|
||
|
|
# Network bridges
|
||
|
|
brctl show
|
||
|
|
|
||
|
|
# Routing table
|
||
|
|
ip route show
|
||
|
|
```
|
||
|
|
|
||
|
|
### VM Management
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# List all VMs
|
||
|
|
qm list
|
||
|
|
|
||
|
|
# Get VM details
|
||
|
|
qm config <VMID>
|
||
|
|
|
||
|
|
# VM status
|
||
|
|
qm status <VMID>
|
||
|
|
|
||
|
|
# Start VM
|
||
|
|
qm start <VMID>
|
||
|
|
|
||
|
|
# Stop VM
|
||
|
|
qm stop <VMID>
|
||
|
|
|
||
|
|
# Restart VM
|
||
|
|
qm reboot <VMID>
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## SSH Configuration (Optional)
|
||
|
|
|
||
|
|
### Create SSH Config Entry
|
||
|
|
|
||
|
|
Add to `~/.ssh/config`:
|
||
|
|
|
||
|
|
```
|
||
|
|
Host ml110-01
|
||
|
|
HostName 192.168.11.10
|
||
|
|
User root
|
||
|
|
IdentityFile ~/.ssh/proxmox_key
|
||
|
|
StrictHostKeyChecking no
|
||
|
|
|
||
|
|
Host r630-01
|
||
|
|
HostName 192.168.11.11
|
||
|
|
User root
|
||
|
|
IdentityFile ~/.ssh/proxmox_key
|
||
|
|
StrictHostKeyChecking no
|
||
|
|
```
|
||
|
|
|
||
|
|
Then use:
|
||
|
|
```bash
|
||
|
|
ssh ml110-01
|
||
|
|
ssh r630-01
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Troubleshooting
|
||
|
|
|
||
|
|
### Connection Refused
|
||
|
|
|
||
|
|
**Check if SSH is running**:
|
||
|
|
```bash
|
||
|
|
# On the Proxmox node
|
||
|
|
systemctl status ssh
|
||
|
|
systemctl status sshd
|
||
|
|
```
|
||
|
|
|
||
|
|
**Check firewall**:
|
||
|
|
```bash
|
||
|
|
# On the Proxmox node
|
||
|
|
iptables -L -n | grep 22
|
||
|
|
ufw status # if using ufw
|
||
|
|
```
|
||
|
|
|
||
|
|
### Authentication Issues
|
||
|
|
|
||
|
|
**Check SSH key permissions**:
|
||
|
|
```bash
|
||
|
|
chmod 600 ~/.ssh/id_rsa
|
||
|
|
chmod 644 ~/.ssh/id_rsa.pub
|
||
|
|
```
|
||
|
|
|
||
|
|
**Test with password**:
|
||
|
|
```bash
|
||
|
|
ssh -o PreferredAuthentications=password root@192.168.11.10
|
||
|
|
```
|
||
|
|
|
||
|
|
### Network Issues
|
||
|
|
|
||
|
|
**Check routing**:
|
||
|
|
```bash
|
||
|
|
# From your machine
|
||
|
|
traceroute 192.168.11.10
|
||
|
|
traceroute 192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
**Check if port is open**:
|
||
|
|
```bash
|
||
|
|
nc -zv 192.168.11.10 22
|
||
|
|
nc -zv 192.168.11.11 22
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Security Notes
|
||
|
|
|
||
|
|
### Best Practices
|
||
|
|
|
||
|
|
1. **Use SSH Keys**: Avoid password authentication
|
||
|
|
```bash
|
||
|
|
ssh-keygen -t rsa -b 4096 -f ~/.ssh/proxmox_key
|
||
|
|
ssh-copy-id -i ~/.ssh/proxmox_key.pub root@192.168.11.10
|
||
|
|
ssh-copy-id -i ~/.ssh/proxmox_key.pub root@192.168.11.11
|
||
|
|
```
|
||
|
|
|
||
|
|
2. **Disable Root Login**: Create a non-root user with sudo
|
||
|
|
3. **Use Strong Passwords**: If password auth is required
|
||
|
|
4. **Limit SSH Access**: Use firewall rules to restrict access
|
||
|
|
5. **Use VPN**: For production environments
|
||
|
|
|
||
|
|
### Current Configuration
|
||
|
|
|
||
|
|
- **User**: `root` (default Proxmox user)
|
||
|
|
- **Port**: 22 (default SSH port)
|
||
|
|
- **Authentication**: Password or key-based
|
||
|
|
- **Network**: 192.168.11.0/24
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Quick Access Script
|
||
|
|
|
||
|
|
Use the provided script:
|
||
|
|
```bash
|
||
|
|
./scripts/ssh-proxmox-nodes.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
This displays all SSH commands and verification steps.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Related Documentation
|
||
|
|
|
||
|
|
- [Proxmox Base Configuration Review](./PROXMOX_BASE_CONFIGURATION_REVIEW.md)
|
||
|
|
- [Pre-Deployment Actions](./PRE_DEPLOYMENT_COMPLETE.md)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**Last Updated**: 2025-12-13
|
||
|
|
**Status**: ✅ **READY**
|
||
|
|
|