Info Security Memo
  • Blog
  • Sitemap
    • Categories
  • Contact
  • About
  • Resources
  • Tools
  • 51sec.org

Build Confidence

Focusing on Information Security 

Info Security Notes

Next Terminal - Another Interactive Auditing Bastion System (Simple to Install and Easy to Use)

4/4/2023

0 Comments

 
Next Terminal - Another Interactive Auditing Bastion System (Simple to Install and Easy to Use)
My previous post  introduced two bastion host. In this post, I am going to introduce another one, Next Terminal, which it calls itself as a next generation bastion host, and a simple, easy-to-use and secure open source interactive audit system that supports RDP, SSH, VNC, Telnet, and Kubernetes protocols. Next Terminal replaces traditional accounts with real identities, providing a phishing-proof, zero-trust access solution for every engineer connected to the infrastructure.


Introduction

Currently Next Terminal supports the following functions:

  • Authorization credential management
  • Asset management (support RDP, SSH, VNC, TELNET protocol)
  • command management
  • Execute commands in batches
  • Online session management (monitoring, forced disconnection)
  • Offline session management (viewing screen recordings)
  • two-factor authentication
  • asset tag
  • Asset Authorization
  • Multiple Users & User Groups
  • Scheduled Tasks
  • ssh server
  • login policy
  • System monitoring

Related Sites: 
  • Documents : https://next-terminal.typesafe.cn/docs/
  • Github: https://github.com/dushixiang/next-terminal
  • Quick Installation: https://next-terminal.typesafe.cn/docs/install/pro-install.html
  • Website: https://next-terminal.typesafe.cn/
  • Demo site: https://next.typesafe.cn/
    • Account : test 
    • Password: test

Docker Installation Steps





Following docker depoloyment is using sqlite to store data. You will need to create a new folder,  next-terminal, then create docker-compose.yml file and copy following information in:
yaml
version: '3.3'
services:
  guacd:
    image: dushixiang/guacd:latest
    volumes:
      - ./data:/usr/local/next-terminal/data
    restart:
          always
  next-terminal:
    image: dushixiang/next-terminal:latest
    environment:
      DB: sqlite
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
    ports:
      - "8088:8088"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
    restart:
      always



Make sure you run it from x86/x64 platform. Else you will find the Error when using net-terminal docker in ARM based CPU environment.

root@arm-ubuntu-xrdp-docker:~# docker-compose up
Recreating root_next-terminal_1 ... done
Starting root_guacd_1           ... done
Attaching to root_guacd_1, root_next-terminal_1
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
guacd_1          | guacd[6]: INFO:      Guacamole proxy daemon (guacd) version 1.4.0 started
guacd_1          | guacd[6]: INFO:      Listening on host 0.0.0.0, port 4822
root_next-terminal_1 exited with code 2
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
root_next-terminal_1 exited with code 2
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
root_next-terminal_1 exited with code 2
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
root_next-terminal_1 exited with code 2
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
root_next-terminal_1 exited with code 2
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
root_next-terminal_1 exited with code 2
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
next-terminal_1  | ./next-terminal: line 1:ELF: not found
next-terminal_1  | ./next-terminal: line 2: �P: not found
next-terminal_1  | ./next-terminal: line 4: syntax error: unexpected ")"
root_next-terminal_1 exited with code 2



We can use Docker Pro Version Deployment to resolve this issue:

shell
curl -sSL https://f.typesafe.cn/next-terminal/docker-compose.yml > docker-compose.yml
docker-compose up -d



Herr are my docker-compose.yml file's contents:


root@arm-ubuntu-xrdp-docker:~# cat docker-compose.yml
version: '3.3'
services:
  guacd:
    image: dushixiang/guacd:latest
    restart:
      always
  next-terminal:
    image: dushixiang/next-terminal-pro:latest
    environment:
      DB: sqlite
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
    ports:
      - "8088:8088"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
    restart:
      always

root@arm-ubuntu-xrdp-docker:~#




Usage

 Log in to system using default admin/admin credentail:

login

Control Panel:

dashboard




References

  • Fast Deploy Two Open Source Bastion Server Projects - Webterminal and Jumpserver
  • Using Portainer to Deploy Guacamole As Web Based Remote Access Gateway (Updated)



via Blogger http://blog.51sec.org/2023/04/next-terminal-another-interactive.html
April 04, 2023 at 08:14AM Docker
0 Comments



Leave a Reply.

    Categories

    All
    Architecture
    Blog
    Checkpoint
    Cisco
    Cloud
    CyberArk
    F5
    Fortigate
    Guardium
    Juniper
    Linux
    Network
    Others
    Palo Alto
    Qualys
    Raspberry Pi
    Security
    SIEM
    Software
    Vmware
    VPN
    Wireless

    Archives

    March 2024
    February 2024
    January 2024
    December 2023
    November 2023
    October 2023
    September 2023
    August 2023
    July 2023
    June 2023
    May 2023
    April 2023
    March 2023
    February 2023
    January 2023
    December 2022
    November 2022
    October 2022
    September 2022
    August 2022
    July 2022
    June 2022
    May 2022
    April 2022
    March 2022
    February 2022
    January 2022
    December 2021
    November 2021
    October 2021
    September 2021
    August 2021
    July 2021
    June 2021
    May 2021
    April 2021
    March 2021
    February 2021
    January 2021
    December 2020
    November 2020
    October 2020
    September 2020
    August 2020
    July 2020
    October 2019
    September 2019
    June 2019
    July 2018
    May 2018
    December 2017
    August 2017
    April 2017
    March 2017
    January 2017
    December 2016
    November 2016
    October 2016
    September 2016
    August 2016
    July 2016
    June 2016
    May 2016
    April 2016
    March 2016
    February 2016
    January 2016
    December 2015
    November 2015
    October 2015
    September 2015
    August 2015
    July 2015
    June 2015
    May 2015
    April 2015
    March 2015

    Print Page:

    RSS Feed

    Email Subscribe
Powered by Create your own unique website with customizable templates.
  • Blog
  • Sitemap
    • Categories
  • Contact
  • About
  • Resources
  • Tools
  • 51sec.org