Once you've joined our Discord server, initiating your container setup is a breeze. Simply execute the /generate command to create a container that runs on the Ubuntu operating system.

To select a different operating system for your container, utilize the /genos command and make your choice from the available options in the dropdown menu.

Any containers that were not extended for 7 days will be automatically deleted every day at 6 PM EST (Eastern Standard Time).
Run the following command: /start-ssh-port
The bot will provide you a command to use for connection. You will then be provided with a host and port.
Once you've successfully created your container, a unique SSH ID is automatically generated and linked to your account on our platform. This SSH ID is specifically associated with your current account and serves as your user identifier for various purposes. To quickly retrieve your SSH ID, simply execute the /my-id command.
The containers have a standard lifespan of seven days, after which they will automatically expire and be deleted. To extend the duration of your free container, you can use the /extend command, which will add another seven days to the expiration date from the moment you issue the command.
The maximum amount of days extended will not exceed seven days.
Here's an example of how to check the remaining time on your container:

To extend time of your container, follow this example:

Our system will automaically notify you 24 hours before your container expire date.
Please note that notifications regarding container removal will be sent only to users within the same server as the @dlinux-Notifs Discord bot, with Direct Messages enabled.
Upon generating your container, you will receive a password via Direct Message. This password can be changed at your discretion, and you have the flexibility to modify it as many times as necessary.
To change your container's password, execute the following command:
echo "root:newpasswordhere" | chpasswd
Furthermore, you can alter the password by logging in through SSH and employing default Linux commands as shown below:
passwd root
Ensure that you enable privacy mode with /privacy before submitting the command. Prior to executing the command, verify that the slash command has loaded correctly.
In addition to these methods, our API provides an option to reset your container's root password. For further details, please refer to: API Documentation
Please note that if a command initiated through Discord-Linux bots necessitates user input, the process will indefinitely wait, as interactive commands are NOT supported.
You can conveniently submit commands to your container using the /x <command> syntax after generating it. Each container is exclusively linked to a user through a unique User ID, guaranteeing that no other users can execute commands on your container, ensuring its security.
Here's an illustrative example of how to utilize the /x <command> syntax:

The output of the executed command will be displayed once it has completed:

With the /x <command> syntax, you have the flexibility to run Linux commands within any public Discord channel where the bot has been granted access. It's important to note that while each user has "root" access to their own container, it does not equate to full "root" user privileges, leading to certain limitations in terms of kernel access and capabilities.
Upon your initial use of the container, you'll encounter a script named start.sh located in the root directory. This script is executed during boot time and provides you with the opportunity to configure commands or services you wish to run during startup, including systemctl services.
Let's dissect the purpose of each line within the start.sh file:
#!/bin/sh
export CID=$(basename $(cat /proc/1/cpuset))
service ssh start
sh /var/tools/getsystemctl.sh
tail -f /dev/null
#!/bin/sh: This line instructs the system to set a container ID within ENV.export CID=$(basename $(cat /proc/1/cpuset)): Here, the container ID is exported as a system variable for reference.service ssh start: This command initiates the SSH server during system boot.sh /var/tools/getsystemctl.sh: This line executes a replacement for systemctl, which is required for managing system services.tail -f /dev/null: The final line is responsible for keeping the container running. It's essential not to remove this line.Once you've finished editing the start.sh file, it's crucial to run the chmod +x /start.sh command to make it executable. Additionally, it's important to edit the file using SSH rather than the bot to ensure that changes are properly saved and applied.
Our service now incorporates an integrated Notification Service designed to keep you informed about the progress of your installations using auto-installer and other important notifications from our team to you. This Linux program serves as a notifier, sending alerts to your Direct Messages.
To utilize this service, simply employ the following commands:
$ notif "This is a test message"
It has also been engineered to generate a message from arguments in the following manner:
$ notif This is a test message
Both of these commands will produce the same notification message, streamlining your experience.
This will only work if you are within our Support Server OR you have added the notification bot: @dLinux-Notifs#1282 you can invite the bot using /invite-notifs-bot.
In its latest update, the bot introduces support for modals, allowing you to seamlessly write files to your container's filesystem using the /write-file slash command. Upon executing this command, a form will appear, as depicted below:

The resulting output will appear as follows:

Subsequently, you can examine the contents of your newly created file:

Use the /edit-file command with the full path to a file to edit it from within your container. A form with the file's contents will appear, allowing you to make changes easily. However, only use this command for small files and not large ones with hundreds of lines.

Uploading files to your container is a breeze, and we offer three straightforward methods for your convenience:
You can easily upload files to your container by connecting to its SSH port using an SFTP client.
Connection details:
Our Command Line Uploader Tool enables you to upload files directly from your computer's command line. To get started, use the /upload-key command to generate an upload key. Once you have the key, execute the following command on your personal computer:
Linux/WSL:
bash <(curl -s https://files.ssh.surf/uploadInstall)
Mac:
bash <(curl -s https://files.ssh.surf/uploadInstallMac)
This initiates the tool installation process and prompts you for your SSHID and KEY. During installation, a Linux binary called sshup will be set up at /usr/bin/sshup, and appropriate file permissions will be configured using the chmod command. To upload a file, utilize the command sshup <filename>. Upon successful upload, you'll receive output messages similar to this:
~ β― sshup woo.js
######################################################### 100.0%
π woo.js πΎ (418.00 Bytes) β‘ π³ / β‘ π SSH34457493201438
If you prefer not to use the client, you can manually upload a file using the curl command, like so:
curl -X POST -F myFile=@YOURFILE "https://up.ssh.surf/?cid=SSHIDHERE&key=KEYHERE"
You can upload files without any restrictions using the script, as long as you stay within your file system's quota.
Additionally, we now offer the ability to upload files directly within Discord-Linux using the /upload command. However, please be aware that this command is subject to your account's upload limits, and it requires an attachment.
WARNING: Files uploaded using /upload will also be stored in Discord's Content Delivery Network (CDN). Avoid uploading sensitive files or confidential data to this service.
Experience easier port setup with our new commands:
/start-ssh-port: Quickly initiate an SSH port./start-port name:http port:80: Generate the Connector and remote connection, and receive your designated port./remove-port name:http: Remove the specified port from both local and jump connections./restart-port name:http: Restart the specified port for both local and jump connections./holesail-connectors: View your holesail connectors for P2P connection outside of JUMP.Should you require a fresh connection, simply rerun the command; the system will seamlessly replace your previous setup with a new one.
To learn how to do advanced configurations using holesail, please visit: https://wiki.ssh.surf/en/connections
We provide a free website proxy service that can proxy any of your ssh.surf JUMP HOST ports. Once you have a valid ssh.surf port assigned, you can continue with the following:
If you do not have an account with our vhost feature yet, run /register-vhost-account. You only need to do this once.
To create a VHOST run /create-vhost this will ask for a name and a port. You can choose any subdomain from the following: dcord.us, ipnet.ink, gnu-linux.me, holepunch.online.
Once submitted the bot will generate your URL. To list your currently owned vhosts, run /list-vhosts. You may delete a vhost with /delete-vhost domain: test.domain.com.
π Exciting Update: Automatic URL Relay Mapping! π
We are thrilled to introduce our new Automatic URL Relay Mapping feature! Now, users can instantly generate a URL for an HTTP-based service without the need to open a port on our JUMP node. π
β¨ New Command: /relay-port
π Relays vs Ports:
do not expire and remain online 24/7.do not reset on Sundays, unlike the other port system.always provide a crypto subdomain from *.ssh.surf.To get started: Run /relay-port port: PORTHERE. You will instantly receive a URL for your service! Simplify your service accessibility with our new URL Relay Mapping feature today! β
Service URL: https://secret.ssh.surf/
Our service includes a complimentary Secrets Service, allowing you to securely share sensitive information like passwords, authentication data, or tokens, all fully encrypted.
When you use this service, all data is encrypted within the container before it's transmitted. This ensures that your data remains confidential and inaccessible to anyone, including our network administrators.
The service is powered by a binary named sec. You can interact with it in two ways, either via the command line interface (CLI) or through the website:
Using Program Pipe:
root@SSH32345643456:/# echo "hello" | sec
Secret is now available at:
https://secret.ssh.surf/#23fc2f8d-7a11-4942-aad4-db2917d0005a%7CgksaOYP7LKKgG9uYlOCU
Using Program Argument:
root@SSH32345643456:/# sec "hello"
Secret is now available at:
https://secret.ssh.surf/#46fe99bd-adb4-49b8-9342-8fbe6c1913ba%7CwNtBYnlBSghUFTwvCyXN
To ensure the encryption process, you can view the client's raw bash script here.
PLEASE NOTE: Once a secret has been viewed, it will self-destruct. Ensure that the receiving party is informed to save their secret data.
Keep an eye on your container's resource utilization directly within Discord using the /stats command:

We're thrilled to announce the return of our Send-To-Log feature, now better than ever with automatic URLs from SSH.SURF! Share your terminal in read-only mode with many users, attach to your terminal in any shell session, and showcase or show off your container safely! π
β¨ New Features Include:
βοΈ Requirements:
To get started:
auto-install send-to-log within an SSH session, or via /xTo send commands to your log:
s2l command here
/x cmd:s2l command here
To take interactive control of the log:
s2l-ctl within an interactive terminal session.CTRL+A then CTRL+D.Get started today and make the most of our revamped Send-To-Log feature! β
Easily obtain a download link for your entire container's filesystem with the /export command. This feature comes in handy for creating backups or transitioning to a different host.
Exports can be imported into another docker host of your choice. However, you must be using an x64 CPU within the host you import the image to.
Starting afresh is a breeze with our system. Simply use the /destroy command to delete your current container, and then spin up a new one using /generate or /genos. You'll be back up and running in no time.
Please exercise caution when using the /destroy command as it will delete all data within your container. Take a moment to consider your decision before proceeding.

Holesail Manager is a command-line tool that allows you to manage connections for a service called Holesail. It provides functionality to create, remove, edit connections, start all connections using PM2, browse existing connections, and list PM2 processes.
Holesail is a revolutionary Peer-to-Peer (P2P) tunneling solution that provides instant access to your local network without the need for complex configurations. With Holesail, you can create P2P tunnels that bypass network, firewall, and NAT restrictions, securely exposing your services to the internet without requiring Dynamic DNS. This open-source tool enables you to share websites, Minecraft servers, VNC connections, and more with ease.
By utilizing Holepunching techniques, Holesail reliably bypasses firewalls and NATs, ensuring seamless connectivity while maintaining security through end-to-end encryption using libsodium. Whether you're a developer, gamer, or remote worker, Holesail empowers you to build secure connections and streamline your workflow without the hassle of traditional hosting methods.
To learn about holesail: https://holesail.io/
Holesail Manager is an in-house tool, if you encounter issues open a ticket.
Holesail Manager supports the following command-line arguments:
--new <port> <name>: Creates a new connection with the specified port and name.--delete <name>: Removes the connection with the specified name.--start: Starts all connections using PM2.--list: View a list of existing connections.To start Holesail Manager, run the following command:
connections
Alias:
con
This will launch the interactive menu where you can choose various options.
To create a new connection, use the --new argument followed by the port number and name:
connections --new 3000 MyConnection
connections.json in /var/connections.json.To remove an existing connection, use the --delete argument followed by the connection name:
connections --delete MyConnection
To start all connections using PM2 without displaying the menu, use the --start argument:
connections --start
After listening on a port, simply open the port to your localhost using holesail:
holesail connectionKeyHere
If you need to install holesail, run npm i holesail -g
Experience easier port setup with our new commands:
/start-ssh-port: Quickly initiate an SSH port./start-port name:http port:80: Generate the Connector and remote connection, and receive your designated port./remove-port name:http: Remove the specified port from both local and jump connections./restart-port name:http: Restart the specified port for both local and jump connections./holesail-connectors: View your holesail connectors for P2P connection outside of JUMP.Should you require a fresh connection, simply rerun the command; the system will seamlessly replace your previous setup with a new one.
All ports on JUMP are deleted every Sunday at 12 AM EST.
As an alternative: Users can instantly generate a URL for an HTTP-based service without the need to open a port on our JUMP node. π
β¨ New Command: /relay-port
π Relays vs Ports:
do not expire and remain online 24/7.do not reset on Sundays, unlike the other port system.always provide a crypto subdomain from *.ssh.surf.To get started: Run /relay-port port: PORTHERE. You will instantly receive a URL for your service! Simplify your service accessibility with our new URL Relay Mapping feature today! β
π Introducing RayAI π
π We are excited to announce the release of RayAI, a user-installable app designed to bring the power of AI directly to your Discord profile! Whether you need conversational AI, automated assistance, or powerful command handling, RayAI is here to make your experience smoother and more fun! π
What can RayAI do?
π₯ Follow these steps to install and start using RayAI:
You can easily install the bot on your server by visiting this link: π Install RayAI
Source: RayAI Source
π Introducing dlinux β User Installable! π
π We are thrilled to announce the release of dlinux, a user-installable app designed to empower you with seamless container management directly from your Discord profile!
βΉοΈ This bot requires registration within the @Linux#7064 system and that you have a container generated within our system.
Source: dlinux Source
dlinuxYou can easily install the bot on your server by visiting this link: π Install dlinux
π’ Introducing Our New URL Shortener Bot! π
π Weβre excited to announce the release of our brand-new URL Shortener Bot! π This bot helps you quickly and easily shorten URLs directly in your Discord server, with support for multiple domains!
s.shells.lols.hehe.rests.dcord.rest (default)s.nodejs.lols.dht.rests.tcp.quest/shortenurl followed by the URL, select a domain, and youβre done!You can easily install the bot on your server by visiting this link: π Install URL Shortener Bot
π We're excited to announce the launch of the Discord Server Shop, offering new ways to enhance your Discord-Linux experience! π
All subscriptions now include persistent containers that stay active for the entire month with no expiration!
Enjoy a container that remains active all month long, ensuring uninterrupted access to your server.
Power up your server with these enhanced features:
Extra Information:
Note: Boost Server Upgrades have been disabled. To upgrade your server, please purchase a subscription from the store. This change was implemented to support the platform's sustainability, as Server Boosts previously provided no direct benefit to the service.
Thank you for being part of the Discord-Linux community! π»