alpacon
Deploy Shell

Deploy Shell

Deploy Shell is a powerful feature that allows you to execute shell commands on servers registered within a Workspace without directly accessing them via Websh.
You can send commands to multiple servers at once and optionally schedule them for a future time.

Deploy Shell also supports scheduled execution and cancellation before the command is run.

You can access this feature by navigating to the Deploy Shell menu after entering your Workspace.


Features Provided


Submit a Command

To send a shell command to one or more registered servers:

  1. Click the Select servers button.
  2. In the server selection modal, choose one or more target servers.
  3. Click Confirm to apply the selection.
  4. The selected servers will be shown next to the Select servers button.
    • Click the × icon to remove individual servers.
    • Click the reset icon to remove all selections at once.
  5. Enter your shell command into the Command input field.
  6. (Optional) Use the Scheduled time field to choose a future execution time.
    • If omitted, the command will execute immediately.
  7. Click Execute to submit the command.

View Command Results

Once you click Execute, Alpacon sends the command to the selected servers.
You can track the request’s processing and outcome in the Command history section.

Command Status Values

StatusDescription
SuccessCommand was successfully executed
FailedCommand execution failed
ScheduledCommand is scheduled and awaiting execution

Execution logs are shown per server and include timestamp and initiator information.


Cancel a Scheduled Command

You can cancel scheduled commands before they are executed.

To cancel a command:

  1. Locate the command in the Command history list with a status of Scheduled.
  2. Click the Cancel command link next to it.
  3. In the confirmation modal, review the details and click Confirm.
  4. The canceled command will disappear from the history list.

⚠️ Commands that have already been executed cannot be canceled.


Root Privilege Policy

Whether a command is executed with root privileges depends on the following three conditions:

  • Username: The account used for executing the command on the server
  • Groupname: The group associated with the user
  • User Role: The user’s role in Alpacon (User, Staff, or Superuser)

Root Access Matrix

IDUser RoleUsernameGroupnameRoot Access
1UserUser's nameAlpacon users
2UserUser's nameCustom group
3UserUser's nameroot
4Userrootroot
5StaffUser's nameAlpacon users
6StaffUser's nameCustom group
7StaffUser's nameroot
8Staffrootroot
9SuperuserUser's nameAlpacon users
10SuperuserUser's nameCustom group
11SuperuserUser's nameroot
12Superuserrootroot

A command will only be executed with root privileges if both the user’s role and the account/group pair satisfy the required conditions.


Summary

  • Deploy Shell enables direct command execution across multiple servers without needing to open individual terminal sessions.
  • Commands can be run immediately or scheduled, with cancelation available for pending executions.
  • Root access is tightly controlled based on user privilege and server-side identity to ensure security.