Download the PHP package omniglies/laravel-server-manager without Composer
On this page you can find all versions of the php package omniglies/laravel-server-manager. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download omniglies/laravel-server-manager
More information about omniglies/laravel-server-manager
Files in omniglies/laravel-server-manager
Package laravel-server-manager
Short Description A Laravel package for server management with SSH connectivity, git deployment, monitoring, and log viewing
License MIT
Informations about the package laravel-server-manager
Laravel Server Manager Package
A comprehensive Laravel package for server management with SSH connectivity, git deployment, monitoring, and log viewing capabilities.
Features
- SSH Connection Management: Connect to remote servers using password or private key authentication
- Terminal Access: Dual-mode terminal support (Simple + WebSocket with xterm.js)
- Git Deployment: Deploy applications from git repositories with customizable build scripts
- Server Monitoring: Real-time monitoring of CPU, memory, disk usage, processes, and services
- Log Management: View, search, download, and manage server log files
- Web Interface: Clean, responsive web interface built with Tailwind CSS and Alpine.js
Installation
-
Install the package via Composer:
-
Publish the configuration file:
-
Publish and run migrations (optional, for storing server configurations):
-
Publish views (optional, for customization):
- For full terminal functionality, install Node.js dependencies and start the WebSocket server:
Configuration
The package publishes a configuration file to config/server-manager.php
. You can customize:
- SSH connection settings
- Terminal configurations (Simple and WebSocket modes)
- WebSocket server settings and authentication
- Deployment configurations
- Monitoring thresholds
- Log management settings
- Security restrictions
- UI preferences
WebSocket Terminal Configuration
Add these environment variables to your .env
file:
Usage
Web Interface
Visit /server-manager
in your Laravel application to access the web interface.
Terminal Access
The package provides two terminal modes:
Simple Terminal Mode (Default)
- Works immediately, no additional setup required
- Execute commands independently
- View command output in real-time
- Perfect for basic server administration
WebSocket Terminal Mode (Full Terminal)
Provides complete terminal functionality with interactive programs.
Start the WebSocket server:
Features:
- Real-time terminal emulation via xterm.js
- Interactive programs (nano, vim, top, htop)
- Full keyboard support and terminal resizing
- Copy/paste functionality
- WebSocket-based communication
SSH Connection
Deployment
Monitoring
Log Management
API Routes
The package provides several API endpoints:
Server Management
GET /server-manager/servers/status
- Get server statusPOST /server-manager/servers/connect
- Connect to serverPOST /server-manager/servers/disconnect
- Disconnect from serverGET /server-manager/servers/processes
- Get running processesGET /server-manager/servers/services
- Get service status
Deployment
POST /server-manager/deployments/deploy
- Deploy applicationPOST /server-manager/deployments/rollback
- Rollback deploymentGET /server-manager/deployments/status
- Get deployment status
Terminal Management
POST /server-manager/terminal/create
- Create terminal session (Simple or WebSocket mode)POST /server-manager/terminal/execute
- Execute command in Simple modePOST /server-manager/terminal/close
- Close terminal sessionPOST /server-manager/terminal/websocket/token
- Generate WebSocket authentication tokenPOST /server-manager/terminal/websocket/revoke
- Revoke WebSocket tokenGET /server-manager/terminal/websocket/status
- Check WebSocket server statusPOST /server-manager/terminal/websocket/start-server
- Start WebSocket serverPOST /server-manager/terminal/websocket/stop-server
- Stop WebSocket server
Log Management
GET /server-manager/logs/files
- List log filesGET /server-manager/logs/read
- Read log fileGET /server-manager/logs/search
- Search in log fileGET /server-manager/logs/tail
- Tail log fileGET /server-manager/logs/download
- Download log filePOST /server-manager/logs/clear
- Clear log filePOST /server-manager/logs/rotate
- Rotate log file
Security
The package includes several security features:
- Command filtering (allowed/blocked commands)
- Connection limits
- Credential encryption options
- SSH key authentication support
- CSRF protection on all forms
Make sure to:
- Use strong SSH credentials
- Limit SSH access to specific IP addresses
- Regularly rotate SSH keys
- Monitor server access logs
Requirements
- PHP 8.2+
- Laravel 10.0+, 11.0+, or 12.0+
- phpseclib/phpseclib ^3.0
- firebase/php-jwt ^6.0
- Node.js 18+ (for WebSocket terminal server)
Node.js Dependencies (for WebSocket Terminal)
- ws ^8.14.2
- ssh2 ^1.15.0
- jsonwebtoken ^9.0.2
- dotenv ^16.3.1
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This package is open-sourced software licensed under the MIT license.
Support
For support, please create an issue in the GitHub repository or contact the maintainers.
All versions of laravel-server-manager with dependencies
illuminate/support Version ^10.0|^11.0|^12.0
phpseclib/phpseclib Version ^3.0
firebase/php-jwt Version ^6.11