Image default
How To

Shell In A Box: Como acessar um servidor SSH via navegador (sem plugin)

Normalmente quando acessamos um servidor SSH, fazemos isso por meio de um software cliente ou por aqueles plugins de navegador. Em ambos os casos é necessário que a porta 22 (ou outra definida pelo administrador) esteja configurada e liberada para acesso.

Existem situações que, o acesso via SSH não está liberado, o que normalmente ocorre por conta de alguma PSI (Política de Segurança da Informação).

Mostrarei a você como instalar o Shell In A Box, um emulador de terminal que funciona sob o navegador, criado por Markus Gutschke. O Shelinabox foi embutido em um servidor web que funciona como um cliente SSH em navegador sob uma porta específica e permitirá à você controlar e acessar remotamente o shell de um servidor SSH usando qualquer navegador que possua suporte ao AJAX/JavaScript e CSS, sem a necessidade de qualquer plugin, como o FireSSH.

1 – Instalando o Shell In A Box no Linux

Por padrão o Shellinabox é incluído em diversas distribuições através de seus repositórios, como o Debian, Ubuntu e Linux Mint.

Obs: Instalei o Shellinabox no CentOS 7.2, mas você verá abaixo informações sobre outras distribuições.

1.1 – Debian, Ubuntu e Linux Mint

Tenha certeza de que seu repositório está ativado e disponível para instalar o Shellinabox. Para verificar, faça uma busca por Shellinabox com o comando “apt-cache” e então instale com o comando “apt-get”.

sudo apt-cache search shellinabox

sudo apt-get install shellinabox

1.2 – No RedHat Enterprise, CentOS e Fedora

Em distribuições baseadas em RedHat, primeiramente é necessário ativar o repositório EPEL, usando o seguinte procedimento (conforme sua distribuição):

Para RHEL, CentOS 7 64 bits

sudo wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm

sudo rpm -ivh epel-release-7-8.noarch.rpm

Para RHEL, CentOS 6 32 bits

sudo wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

sudo rpm -ivh epel-release-6-8.noarch.rpm

Para RHEL, CentOS 6 64 bits

sudo wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

sudo rpm -ivh epel-release-6-8.noarch.rpm

Para RHEL, CentOS 5 32 bits

sudo wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

sudo rpm -ivh epel-release-5-4.noarch.rpm

Para RHEL, CentOS 5 64 bits

wget http://download.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm

sudo rpm -ivh epel-release-5-4.noarch.rpm

Verificando se o repositório EPEL está ativado

Digite o comando yum repolist e verifique se no resultado aparece algo como:

epel Extra Packages for Enterprise Linux 7 – i386 4,320+1,408

Para instalar o shellinabox digite:

sudo yum install openssl shellinabox

2 – Configurando o Shellinabox

Por padrão o Shellinabox espera por conexões TCP na porta 4200 em localhost. Por razões de segurança, altere esta porta padrão para uma randômica (por exemplo, a 6175), a fim de dificultar que alguém possa chegar até o nosso Shellinabox.

Lembrando que, o Shellinabox deve ser instalado no servidor que possui o serviço de SSH.

2.1 – No Debian, Ubuntu e Linux Mint

Edite o arquivo de configuração, digitando:

sudo nano /etc/default/shellinabox

elelDentro do arquivo, altere a porta para a de sua preferência:

# TCP port that shellinboxd’s webserver listens on
SHELLINABOX_PORT=6175

E informe o endereço do servidor que possui o serviço de SSH:

# specify the IP address of a destination SSH server
SHELLINABOX_ARGS=”–o-beep -s /:SSH:192.168.0.250

2.2 – No RHEL, CentOS e Fedora

Edite o arquivo com o comando:

sudo vi /etc/sysconfig/shellinaboxd

Neste arquivo, desativei a linha onde diz #OPTS=”–disable-ssl-menu -s /:LOGIN” e adicionei a seguinte:

OPTS=”-s /:SSH:192.168.0.250″

shell01

Informe o endereço IP conforme o seu cenário. No exemplo acima, configurei a porta padrão 4200, mas fique a vontade para a porta de sua preferência.

3 – Iniciando o Shellinabox

Uma vez terminada a configuração, chegou a hora de iniciar o Shellinabox. Nas distribuições baseadas em Debian ou RedHat pode-se utilizar o seguinte comando para o serviço:

sudo service shellinaboxd start

4 – Verificando o serviço

Após iniciar o serviço, podemos verificar se ele está em execução. Para isso digite comando:

sudo netstat -putan | grep shellinabox

tela3

Vimos que ele está em execução sob a porta que definimos anteriormente (4200) , bem como o seu status (OUÇA ou LISTENING).

O parâmetro -putan (achei mais fácil lembrar se colocar nessa sequência…) mostra além da porta, o nome e o número do processo.

5 – Acessando o Shellinabox

Abra seu navegador e navegue até https://seu-ip:porta.

Em meu caso, digitei https://192.168.0.250:4200.

Veja abaixo o Shellinabox em funcionamento:

video2

Espero que tenha gostado!

Deixe seus comentários!

Abraço!

Fonte:

http://www.tecmint.com/shell-in-a-box-a-web-based-ssh-terminal-to-access-remote-linux-servers/

Posts similares

Cloakify Toolset: Extrusão de dados em texto puro

O Analista

Execute o Windows 95 no Linux, MacOS e Windows 10

O Analista

Execute o Kali Linux nativamente no Windows 10 (não é boato!)

O Analista