Categorias
Tutoriais

LINUX – conheça comandos básicos e mais úteis

No artigo iremos ensinar os comandos básicos e úteis auxiliam em muito os usuários do LINUX no seu dia a dia.

O principal acesso ao servidor Linux é através de uma conexão remota e geralmente é utilizando a porta 22 representando acesso através do SSH.

O SSH (Secure Socket Shell)  é um dos principais serviços principais em sistemas baseados em Linux / Unix, pois permitem que sejam enviados comandos. O protocolo SSH é usado para acessar o servidor / sistema remoto com um método criptografado de login usando uma porta TCP / IP padrão 22 ou um número de porta personalizado.

Este serviço é usado principalmente pelo administrador do sistema e da rede para executar comandos e gerenciar servidores / sistemas. Também podemos dizer que o SSH é a substituição do Telnet, rlogin e rsh, que são protocolos completamente inseguros para conectar o sistema através da rede.

LINUX - conheça comandos básicos e mais úteis
LINUX – conheça comandos básicos e mais úteis

Auxiliaremos a realizar o login no servidor remoto (digamos, um servidor Web) a partir do sistema / host local (PC cliente). Todos os exemplos abaixo de comandos ‘ssh’ são testados em várias distribuições Linux. Você pode usar o mesmo guia para todas as versões do RHEL / CentOS / Fedora, mas para outras distros, pode haver um pequeno tipo de diferença ao usá-lo. Portanto, é altamente recomendável ler as diretrizes.

Neste artigo pressupõe que você já possui alguns servidores em um local remoto em execução no Linux (CentOS / RHEL), pode ser um servidor Web ou um servidor de email ou servidor DNS.

Nosso objetivo é acessar o servidor remoto usando o comando ‘ssh’.

A sintaxe global do comando ssh:

ssh [OPTIONS] [ USER@ ]: HOST

Exemplo de uma pequena rede

Servidor web:

Sistema operacional: CentOS Linux 7 (core)
Nome do host: web.linux.com
Endereço IP: 192.168.1.100

Localhost / sistema (PC cliente)

Sistema operacional: CentOS Linux 7 (core)
Nome do host: r001.linux.com
Endereço IP: 192.168.1.200
Cliente SSH: um cliente ssh ativo como “Terminal para Linux / Mac e Putty para Windows”

Nota:

Verifique se o seu PC cliente requer um pacote openssh-client para acessar o servidor SSH. Use o primeiro comando dos exemplos a seguir para verificar o mesmo para o Terminal Linux.

Como descobrir a versão do seu cliente ssh?

 ssh -V

Resultado:

OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 de janeiro de 2017

Nota:

A opção ‘-V’ maiúscula não apenas mostra o número da versão, mas também confirma que o PC cliente já instalou o pacote do cliente ssh.

Como acessar um servidor remoto usando o comando ssh padrão?

O servidor remoto pode ser acessado usando um “endereço IP ou você também pode usar o nome do host”. Pela primeira vez quando você acessar o servidor a partir do PC do cliente, ele solicitará que o usuário verifique a impressão digital antes de selecionar a resposta correta na opção “sim / não”. Se você não tiver certeza do que fazer, verifique com seu provedor de hospedagem / administrador do sistema ou também se você tem acesso à chave do host do servidor, verifique e verifique se as duas chaves estão em conformidade. Em seguida, digite “yes” para confirmar a conexão e você receberá uma “mensagem de aviso” de que o servidor foi adicionado à lista de hosts conhecidos e solicitará a senha para entrar, assim que a senha aceitar, você terá acesso ao servidor remoto .

ssh 192.168.1.100 OR # ssh web.linux.com

Nota:

A desvantagem de usar o comando ssh padrão no centos 7 permitirá que a conta root tenha acesso remoto diretamente, o que é bastante perigoso. Isso significa que essa conta de usuário pode fazer qualquer coisa no sistema remoto. Portanto, é altamente recomendável desativar o login root e conceder privilégios “sudo”.

AVISO:

Se houver alguma alteração ou incompatibilidade na chave do host do servidor SSH, ela será notificada ao usuário, pois não poderá prosseguir até que a chave do host do servidor seja excluída de ‘/root/.ssh/known_hosts’ como semelhante a abaixo resultado.

Como verificar a impressão digital usando o comando ssh no terminal?

ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub

Saída: +

256 SHA256: 4YNXabAuI4gYnC7ZIcTRbPlCMapOvrMwW4E / kKACb4s sem comentários (ECDSA)

Nota:

Usando o comando acima, você pode verificar a impressão digital do servidor SSH e o comando a seguir também verificará a chave de impressão digital MD5.

ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub -E md5

Resultado:

256 MD5: 5f: 39: 21: 43: 92: 6e: 7e: f3: 17: 35: 6b: 30: 85: 44: ee: 38 sem comentários (ECDSA)

Como especificar um usuário específico para acessar o servidor remoto?

ssh -l linuxt 192.168.1.100

OU

ssh linux@192.168.1.100

Resultado:

Senha do linux@192.168.1.100 : (Digite a senha)
Último login: Seg. 6 de Abr. 02:44:44 2020 de 192.168.1.100

Nota:

Você pode usar qualquer um dos comandos (opção ‘-l’ ou ‘ username@ipaddress ‘) para efetuar login no servidor remoto com um usuário específico. Esses dois comandos servem apenas à mesma saída.

Como acessar um servidor remoto com um número de porta personalizado?

ssh -l linux 192.168.1.100 -p 18765

OU

ssh linux@192.168.1.100 -p 18765

Resultado:

Senha do linux@192.168.1.100 : (Digite a senha)
Último login: Seg. 6 de Abr. 02:54:44 2020 de 192.168.1.100

Nota:

O uso da opção ‘-p’ com qualquer um dos comandos acima pode acessar o servidor remoto usando um número de porta personalizado. Normalmente, o ssh vem com o número da porta padrão 22, mas na produção, principalmente, o número da porta será personalizado devido a razões de segurança.

Como executar um comando sem fazer login no servidor remoto?

ssh -l linux192.168.1.100 uname -r

OU

ssh linux@192.168.1.100 uname -r

Resultado:

Senha do linux@192.168.1.100 :
3.10.0-862.14.4.el7.x86_64

Nota:

A principal vantagem de usar o comando acima exibirá a saída no próprio sistema local sem fazer login no servidor. Por exemplo: Se você precisar verificar a “versão do Kernel” do seu servidor remoto. Em seguida, execute um dos comandos acima no PC do cliente e obtenha a saída por si só, além de salvar seus tempos. Isso também é semelhante ao comando ssh normal, mas um comando adicional é adicionado no final do comando ssh usual.

Como executar comandos múltiplos sem fazer login no servidor remoto?

ssh -l linux192.168.1.100 uname -r; nome do host

OU

ssh linux@192.168.1.100 uname -r; nome de anfitrião

Resultado:

Senha do linux@192.168.1.100 :
3.10.0-862.14.4.el7.x86_64
web.linux.com

Nota:

A única diferença entre o uso de comando único e múltiplo é usar ponto-e-vírgula (;) entre os comandos. Nada mais.

Como transferir um arquivo do seu host local para um servidor remoto?

scp dmo3c_test.sql linux@192.168.1.100 : / home / apps / produção / sql / dump

Resultado:

Senha do linux@192.168.1.100 :
dmo3c_test.sql 100% 70KB 3,3MB / s 00:00

Nota:

Usando o comando ‘scp’ acima, podemos transferir um arquivo de uma máquina local para um servidor remoto com uma conexão criptografada. Você pode usar a opção ‘-R’ para transferir um diretório inteiro do local para o remoto.

Como acessar um servidor remoto usando o comando sftp?

sftp linux@192.168.1.100

Resultado:

Senha do linux@192.168.1.100 :
Conectado a 192.168.1.100.

Exemplo de alguns comandos:
sftp> ls (o comando # ls é listar os arquivos)
sftp> pwd (o comando #pwd é para verificar o caminho do diretório de trabalho atual)

Nota:

Usando o comando ‘sftp’ acima, podemos acessar o servidor remoto com uma conexão criptografada segura. O utilitário sftp aceita os mesmos comandos que os FTPs normais.

Alguns dos comandos ssh gerais mais usados no Linux.

cd

alterar diretório: – É usado para alterar o diretório ativo. Também conhecido como “chdir”.

cp

copiar: – É usado para copiar arquivos e diretórios de um lugar para outro.

chmod

alterar permissão: – É usado para alterar a permissão de leitura, gravação e execução de um arquivo ou diretório.

chown

alterar proprietário: – É usado para alterar a propriedade de um arquivo ou diretório

grep

padrão de pesquisa de um arquivo: – É usado para pesquisar determinado padrão de arquivo por usuários específicos

wc

contagem de palavras: – É usado principalmente para contar palavras, caracteres, linhas.

mkdir

criar diretório: é usado para criar um diretório

rm

excluir arquivo: – É usado para excluir arquivos e diretórios

touch

Carimbos de data e hora: é usado para carimbos de data e hora de um arquivo como “criar, atualizar, modificar”. Além disso, pode ser usado para criar um arquivo vazio.

more

É usado para exibir o conteúdo de um arquivo de texto uma tela inteira por vez, usando a tecla de barra de espaço para ajudar a passar para a próxima página.

wget

É usado para baixar arquivos da internet.

sudo

O superusuário faz: – É usado para dar privilégios extras aos usuários (por exemplo: executar comandos do sistema, reinicializar, etc).

su

Trocar usuário: – É usado para alternar de uma conta de usuário para outra.

vi

É usado para editar qualquer tipo de arquivo Unix. No Unix, o editor ‘vi’ é um editor de texto padrão.

vim

Vi Melhor editor de texto. Também é usado para editar qualquer tipo de arquivo Linux.

ls

É usado para listar todos os arquivos e diretórios.

cat

É usado para concatenar e exibir arquivos.

du

Uso do disco: – É usado para estimar o uso do espaço no arquivo.

df

Sem disco: É usado para estimar o espaço em disco do servidor / armazenamento. Para saber mais sobre o comando ‘du’ com várias opções, clique aqui

find

É usado para pesquisar todos os arquivos e diretórios.

cron

É usado para agendar o trabalho / tarefa repetitiva em intervalos regulares.

ps

É usado para monitorar todas as atividades atualmente em execução, como USER, PID,% CPU, entre outras informações.

Nota:

Todos os comandos mencionados acima são comumente usados no Linux diretamente ou via ssh. Esta lista de amostra pode ajudar para iniciantes. Você pode usar mais e mais comandos no SSH, tudo é baseado no seu privilégio de usuário.

Segue mais alguns artigos sobre os principais comandos do Linux.

Como criptografar/descriptografar arquivos com dois comandos no Ubuntu/Debian!

ExplainShell – Manual interativo de comandos Linux

Peço que envie sempre sugestões de artigos para ajudar nossa comunidade.

Abraços !!!!!

Por Adriano Frare

Especialista em segurança. Certificado CISSP e Certicate Ethical Hacking. Gerente de projetos experiente com um histórico comprovado de trabalho no setor de administração governamental. Hábil em Planejamento Estratégico, ITIL, Project Management Office (PMO), Gerenciamento de Serviços de TI e Project Management Body of Knowledge (PMBOK), Certificado Digital (PKI), Segurança (CEH), CISSP, vendas usando métodos Soluction Selling (IBM).

Sair da versão mobile