GNU/Linux >> Tutoriels Linux >  >> Linux

[Linux] :Shellinabox – Un accès web à votre Terminal SSH

Dans ce tutoriel, nous verrons comment installer Shellinabox (Prononcé comme "Shell In A Box") pour l'accès à distance au terminal Linux SSH à l'aide de navigateurs Web compatibles AJAX/JavaScript et CSS. En supposant que votre serveur Linux est activé avec le pare-feu et n'autorise que les ports nécessaires (par exemple HTTP(s)), alors Shellinabox est une solution idéale pour fournir un terminal Shell basé sur le Web aux utilisateurs.

Installer Shellinabox sur Linux

Par défaut, Shellinabox Le package est inclus dans tous les référentiels de distribution Linux, y compris Debian, Ubuntu et CentOS. Assurez-vous que votre référentiel est activé et disponible pour installer shellinabox.

Sur Debian et Ubuntu

root@ubuntu:~# apt-cache search shellinabox
 shellinabox - publish command line shell through AJAX interface
 root@ubuntu:~#
root@ubuntu:~# apt-get install shellinabox
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 The following NEW packages will be installed:
 shellinabox
 ....
 ....
 Setting up shellinabox (2.14-1) ...
 Processing triggers for ureadahead (0.100.0-16) ...
 root@ubuntu:~#

Sur RHEL, CentOS et Fedora

Configurez le référentiel yum sur les distributions basées sur RedHat. Ensuite, vous devez configurer le référentiel EPEL :

Comment activer le référentiel EPEL :

Pour EL5 :

[root@centos export]# rpm -Uvh
http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

Pour EL6 :

[root@centos export]# rpm -Uvh
 http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

Pour EL7 :

[root@centos export]# rpm -Uvh
 http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

Ensuite, installez shellinabox en utilisant le yum suivant commande.

#yum install shellinabox
 Loaded plugins: security
 Setting up Install Process
 Resolving Dependencies
 --> Running transaction check
 ---> Package shellinabox.x86_64 0:2.14-27.git88822c1.el5 set to be updated
 --> Finished Dependency Resolution
 ....
 ....
 ....
Complete!

Configurer Shellinabox

Shellinabox dispose d'un serveur Web intégré qui s'exécute en tant que client SSH basé sur le Web et écoute sur le port 4200. Pour des raisons de sécurité, vous pouvez remplacer ce port par défaut par un port aléatoire (par exemple :4312 ou celui qui est libre). Par défaut, un nouveau certificat SSL auto-signé est créé automatiquement sous "/var/lib/shellinabox ” pour utiliser le protocole HTTPS.

Comment trouver un port libre

#telnet localhost <port_no>
or
#netstat -anp | grep <port_no>

Sur Debian et Ubuntu

#vim /etc/default/shellinabox
# TCP port that shellinboxd's webserver listens on
 SHELLINABOX_PORT=4200

Sur RHEL, CentOS et Fedora

# vi /etc/sysconfig/shellinaboxd
# TCP port that shellinboxd's webserver listens on
 PORT=4200

Démarrer le démon du service Shellinabox

Une fois la configuration terminée, vous pouvez démarrer le service en lançant la commande suivante :

Sur Debian et Ubuntu

#service shellinabox start

Sur RHEL et CentOS

#service shellinaboxd start

Vérifier le service

Vérifiez si le service a démarré correctement et écoute sur le port 4200 (le port peut être différent en fonction de la configuration ci-dessus) à l'aide de netstat commande comme indiqué ci-dessous :

root@ubuntu:# netstat -anp | grep shellinabox
 tcp        0      0 0.0.0.0:4200            0.0.0.0:*               LISTEN      31331/shellinaboxd

Comment utiliser Shellinabox sur le navigateur

Ouvrez votre navigateur Web et accédez à https://server-ip:4200 . Vous devriez maintenant pouvoir voir un terminal SSH basé sur le Web, comme indiqué ci-dessous, vous invitant à vous connecter. Vous pouvez vous connecter en utilisant votre nom d'utilisateur et votre mot de passe SSH et en cas de succès, une invite du shell vous sera présentée.

À la déconnexion :


Linux
  1. Enregistrez votre session terminale avec Asciinema

  2. Quelle est votre astuce de terminal Linux préférée ?

  3. Quel est votre émulateur de terminal préféré ?

  4. Ssh - Journalisation des tentatives d'accès Ssh ?

  5. Limiter l'accès SSH par adresse IP

Apache Guacamole - Accédez à votre ordinateur depuis n'importe où via un navigateur Web

Terminus - Un terminal moderne basé sur la technologie Web

Comment partager votre terminal sur le Web à l'aide de Streamhut

Bashhub - Accédez à l'historique de votre terminal depuis n'importe où

Comment se connecter à votre serveur Web via SSH

Sécurisation de vos serveurs d'hébergement Web