Вы находитесь на странице: 1из 41

LINUX

Treinamento de Linux: Parte 2

Veremos nessa segunda parte do treinamento

como instalar pacotes na distribuição Debian,

como instalar o software SACI,

gerenciamento de usuários, permissões de

arquivo, TCP/IP, comandos avançados,

entre outros recursos.


Instalação de Pacote no Debian

No módulo Básico nós vimos que a distribuição Debian utiliza o sistema APT
(Advanced Package Tool) para atualização de pacotes pela internet.
A Ferramenta APT é composta de vários comandos, sendo os mais utilizados:
apt-get: O comando principal, usado para a maioria das tarefas que envolvem
pacotes.
apt-cache: Pesquisa e extrai informações sobre a base de pacotes (instalados ou
não).
apt-cdrom: Adiciona um CD com pacotes RPM à lista de repositórios.
Lembrando que para utilizar tais comandos é
necessário estar logado com o usuário ROOT.
Opções a usar com o apt-get
update - Atualiza o banco de dados com a lista de pacotes do repositório. Ex: apt-
get update
install Pacotes - Instala o pacote e suas depedências.
Se o pacote já estiver instalado, tenta atualizá-lo.
Ex: apt-get install libmysqlclient10
remover Pacotes - Remove o pacote e todos os outros pacotes que dependem dele.
Ex: apt-get remove nome_pacote
upgrade - Atualiza todos os pacotes instalados no sistema que possuem versões
mais recentes disponíveis. Ex: apt-get upgrade
dist-upgrade - Similar ao upgrade, porém atualiza tudo, inclusive kernel.
clean - Remove os arquivos de pacotes já instalados,
não mais necessários, que ficam em:
/var/cache/apt/archives.
Opções a usar com o apt-cache

show PACOTE - Mostra informações diversas sobre o pacote.


Ex: apt-cache show libmysqlclient10

depends PACOTE - Mostra as dependências (pré-requisitos) do pacote.


Ex: apt-cache depends libmysqlclient10

Opções a usar com o apt-cdrom

add - Adiciona um CD à lista de repositórios.

O arquivo que centraliza os endereços dos repositórios é o /etc/apt/sources.list


Instalação do SACI
Obs.: antes de instalar o SACI deve instalar linux e mysql. Logar com ROOT

Para iniciar a instalação do "SACI" deve estar logado com o usuário "ROOT".
A instalação é feita em 4 etapas.
1 - Etapa: Montando o CD, comandos abaixo:
# mount -o exec /cdrom

2 - Etapa: Instalar MySQL no Debian, comando abaixo:


Obs.: Tenha em mão CD da distro do Debian ou internet para instalar MySQL.
# apt-get install mysql-server
Obs.: Importante instalar libmysqlclient10
# apt-get install libmysqlclient10

3 - Etapa: Instalando o SACI, comando abaixo:


# ./instala (SHELL DE INSTALAÇÃO)

4 - Etapa: Desmontar CD, comando abaixo.


# umount /cdrom
Logar no sistema como o usuário eacadm e executar o comando "saci".
O SACI já vem com um usuário “ADM”, senha “EAC”.
Gerenciamento de Usuário

Comandos para gerenciar usuários:

useradd - Cria um usuário


userdel - Remove um usuário
passwd - Define a senha do usuário
groupadd - Cria um grupo
groupdel - Remove um grupo

No Debian existe uma shell para criar usuário automaticamente:


# adduser nome do usuário

Lembrando que para utilizar tais comandos é


necessário estar logado com o usuário ROOT.
Sintaxe dos Comandos
Criação de usuário:
# useradd nome usuário

Criando senha:
# passwd nome usuário

Removendo usuário:
# userdel nome usuário

Usando shell adduser :


# adduser nome do usuário
Lembrando que devemos estar logado com usuário ROOT
Permissões de Arquivos e Diretórios

O Linux é um sistema multiusuário e é necessário ter uma conta


de acesso para utilizá-lo.
Além da autenticação para acesso ao sistema, uma outra
funcionalidade relativa aos conceitos de usuários e grupos é o de
permissões de arquivos, onde é definido quem e como pode ser
acessado determinado arquivo ou diretório (pasta).

Cada arquivo/diretório possui três níveis de permissão:


•Usuário dono: É o proprietário do arquivo/diretório.
•Grupo dono: É o grupo propritário do arquivo/diretório. O grupo pode conter
um usuário (geralmente o usuário dono) ou vários usuários.
•Outros: Aplica-se a qualquer outro usuário, que não se encaixa
nos níveis anteriores.
Tipos de permissão
• Leitura (r): Permissão para visualizar o conteúdo do arquivo,
simbolizada por “r”.

• Escrita (w): Permissão para alterar o conteúdo do arquivo,


simbolizada por “w”.

• Execução (x): Permissão para executar o arquivo, simbolizada


por “x”.
R=4 W=2 X=1
U=DONO G=GRUPO O=OUTROS
Vale lembrar que esse processo (usuários, grupos, permissões de
arquivos e diretórios/pastas) é usado também em outros sistemas
operacionais, por exemplo o Windows Server.
Exemplos de Permissões

chmod u+rw,g+w,o-rwx arquivo.txt (Adiciona leitura e escrita para o dono,


adiciona escrita para o grupo e remove todas as outras permissões para outros
usuários, em arquivo.txt).
chmod 640 arquivo.txt

chmod 640 arquivo.txt ( Configura a permissão do arquivo.txt como sendo


640: 6 = leitura(4) + escrita(2) para o usuário dono, 4=leitura para o grupo e 0
(nenhuma permissão para outros).

chmod 777 arquivo.doc chmod 775 arquivo.doc

chmod 645 arquivo.doc chmod 644 arquivo.doc

chmod 640 arquivo.doc chmod 000 arquivo.doc


Entendendo a Conversão
P e r m i s s ã o B i n á r i oD e c i m al --------- 000
--- 000 0 r -------- 400
--x 001 1 r --r --r -- 444
-w - 010 2 r w ------- 600
-w x 011 3 r w -r --r -- 644
r -- 100 4 r w -r w -r -- 664
r -x 101 5 r w x ------ 700
rw- 110 6 r w x r -x --- 750
rwx 111 7 r w x r -x r -x 755
r w xrw xrw x 777
As Permissões funcionam da seguinte forma
- --- --- ---
Tipo Usuário Grupo Outros

Tipo: (D)Diretorio (-)Arquivo Comum (L)Link


Simbólico
Outras situações de Permissões

chown eacadm /u/saci (Altera dono do diretório).


chown -R eacadm. /u/saci (Modifica dono e grupo do diretório
saci e todo o seu conteúdo).
chgrp saciuser /u/saci/config (Altera grupo do diretório
config).
chgrp -R saciuser /u/saci/config (Modifica o grupo do
diretório e todo seu conteúdo).

chgrp novo_grupo usuario (Muda o usuário para outro grupo).


TCP/IP - Breve histórico

O TCP/IP foi criado pelo Departamento de Defesa dos EUA


entorno de 1970. Um dos objetivos era atender necessidades
de conexão entre os vários projetos do Departamento, inclusive
o de suas redes de computadores.

Fundamenta-se na necessidade de interligar diferentes tipos de


tecnologias de redes. Tem como base dois protocolos:

TCP - Transmission Control Protocol


IP - Internet Protocol

Mesmo sistemas operacionais de rede que só utilizavam o


protocolo proprietário próprio (como Windows NT com seu
NetBEUI e o Netware com seu IPX/SPX), hoje suportam o
protocolo TCP/IP.
TCP/IP - Breve histórico

Uma das grandes vantagens do TCP/IP em relação aos


outros protocolos existentes é que ele é roteável, isto é, foi
criado pensando em grandes redes e de longa distância,
onde podem existir vários caminhos para o dado atingir o
computador de destino.

Outro fato que tornou o TCP/IP popular é que ele possui


arquitetura aberta e qualquer fabricante pode adotar a sua
própria versão TCP/IP em seu sistema operacional, sem
necessidade de pagamento de direitos autorais a ninguém.

Com isso, todos os fabricantes de sistemas operacionais


acabam adotando o TCP/IP, transformando-o em um
protocolo universal, possibilitando que todos os sistemas e
hardware possam comunicar entre si sem dificuldade.
TCP/IP- conceito e serviços
O conjunto de protocolos TCP/IP foi projetado especialmente para ser o
protocolo utilizado na Internet. Sua característica principal é o suporte
direto a comunicação entre redes de diversos tipos.

DNS (Domain Name System): Serviço de resolução de nomes de hosts


tanto de sites como de computadores na rede.

HTTP (Hyper Text Transfer Protocol): Protocolo utilizado por navegadores


e servidores web.

SMTP (Simple Mail Transfer Protocol): Serviço de entrega/transferência de


e-mails.
POP (Post Office Protocol): Serviço de recebimento de e-mail.
IMAP (Internet Message Access Protocol): Serviço de recebimento de e-
mails. Mais flexível e com mais recursos que o POP.
FTP (File Transfer Protocol): Serviço para Transferência de arquivos.
Configuração de IP

Um sistema Debian pode ter várias interfaces, cada uma com um endereço
de Protocolo de Internet (IP) diferente. As interfaces podem ser de
diferentes tipos, incluindo:
* Loopback: lo (REDE LOCAL)
* Ethernet: eth0, eth1, ... (REDE A CABO)
* Wi-Fi: wlan0, wlan1, ... (REDES SEM FIO)

Comando ifconfig: é utilizado tanto para configurar uma interface de rede


como para consultar seu estado.

ifconfig Exibe informações a respeito das interfaces de rede ativas

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 up


Ativa a interface eth0 com o endereço IP 192.168.1.1,
máscara de rede 255.255.255.0 e endereço de brasdcast 192.168.1.255

ifconfig eth0 down Desativa a interface de rede eth0.


FTP

Permite a transferência de arquivos do computador remoto/local e vice versa.


O file transfer protocol é o sistema de transmissão de arquivos mais usado na
Internet. É requerida a autenticação do usuário para que seja permitida a conexão.
Muitos servidores ftp disponibilizam acesso anônimo aos usuários, com acesso
restrito.
Uma vez conectado a um servidor ftp, você pode usar a maioria dos comandos do
GNU/Linux para operá-lo.

Abaixo alguns dos comandos mais usados no FTP:


ls - Lista arquivos do diretório atual.
cd [diretório] - Entra em um diretório
get [arquivo] - Copia um arquivo do servidor ftp para o computador local. O
arquivo é gravado, por padrão, no diretório onde o program ftp foi executado.
mget [arquivos] - Semelhante ao get, mas pode copiar diversos arquivos e permite
o uso de curingas.
send [arquivo] - Envia um arquivo para o diretório atual do servidor FTP (você
precisa de uma conta com acesso a gravação para fazer isto).
prompt [on/off] - Ativa ou desativa a pergunta para a cópia de arquivo. Se estiver
como off assume sim para qualquer pergunta.

Exemplo: ftp ftp.br.debian.org.

Outros Clientes: ncftp, ncftpput, ncftpget

Servidores para ftp: proftpd, wu-ftpd, vsftpd


Telnet: Introdução

O serviço telnet é oferecer o login remoto em seu computador, que lhe


permite trabalhar conectado a distância como se estivesse em frente a ele.
Características
*Conexão rápida (não utiliza transmissão de dados criptografada), recomendado
para ambientes seguros.
*Possui uma versão com suporte a criptografia via ssl.
*Possui controle de acesso.
*A maioria dos sistemas operacionais trazem este utilitário por padrão como
sistema de acesso remoto a máquinas UNIX.

SSL: protocolo que garante a segurança na transmissão de pacotes


de dados na rede. Compacta os dados em binários, trafega os dados
na rede e antes de entregar ao destino faz a descompactação
e conferência desses dados para verificar se permanecem íntegros
ou seja, igual ao pacote de dados no momento do início do trâfego.
Telnet

Está sendo substituído pelo SSH por questão de


segurança visto que os dados são trafegados de
forma “não criptografada”. Ou seja todos os
dados envolvidos na comunicação entre
cliente/servidor podem ser visíveis, inclusive
senhas…
Telnet

Comando:
telnet [endereço] [porta] para realizar conexões com uma máquina rodando o servidor telnet.
As seguintes opções:
* -l [usuario] - Envia o nome de usuário ao computador remoto. Muito útil com o telnet-ssl.
* -E - Desativa o caracter de escape
* -a - Tenta fazer o login automático usando o nome de usuário local. Se o login falhar, será solicitado o nome
de usuário. Esta opção é usada por padrão com o cliente telnet-ssl.
* -r - Emula o comportamento do programa rlogin.
Exemplos:
# Conecta-se ao servidor telnet rodando na porta 23 de sua própria máquina
telnet localhost
# Conecta-se ao servidor telnet 200.200.200.200 operando na porta 53454 usando o
# nome de usuário john
telnet -l john 200.200.200.200 53454
SSH

Introdução
O serviço de ssh permite fazer o acesso remoto ao console de sua máquina,
em outras palavras, você poderá acessar sua máquina como se estivesse conectado
localmente ao seu console.
É o atual substituto do TELNET.
A principal diferença com relação ao serviço telnet padrão, é que toda a
comunicação entre cliente/servidor é feita de forma criptografada de modo a
garantir uma transferência segura de dados.
Além do serviço de acesso remoto, o SSH possibilita a transferência/recepção
segura de arquivos.
SSH
Características
* Conexão de dados criptografada entre cliente/servidor.
* Cópia de arquivos usando conexão criptografada.
* Suporte a ftp criptografado (sftp).
* Suporte a compactação de dados entre cliente/servidor.
* Controle de acesso das interfaces servidas pelo servidor ssh.
* Autenticação usando um par de chaves pública/privada RSA ou DSA.

SFTP: Similar ao SSL porém trafega os dados de forma criptografada.

RSA ou DSA: São chaves para autenticação na transmissão dos dados.


Utilitários ssh
* ssh - Cliente ssh (console remoto).
* slogin - Link simbólico para o programa ssh.
* sshd - Servidor de shell seguro ssh.
* scp - Programa para transferência de arquivos entre cliente/servidor
* sftp - Cliente ftp com suporte a comunicação segura.
* sftp-server - Servidor ftp com suporte a comunicação segura.
* ssh-agent - Agente de autenticação, sua função é armazenar a chave privada para autenticação via
chave pública (DSA ou RSA).
* ssh-keyscan - Scaneia por chaves públicas de autenticação de hosts especificados.
O principal objetivo é ajudar na construção do arquivo local know_hosts.

Lembrando que o SSH é um pacote do Linux então caso não esteja instalado deve executar o
comando:
Apt-get install ssh
Exemplo de comando SSH

ssh usuario@endereço
ssh root@192.168.1.91 <enter> ou o nome da máquina
Lembrando que o DNS converte o nome em IP…
Password:
caso a porta para conexão remota seja diferente da porta padrão (23) deve
acrescentar após o endereço: -p número da porta

Arquivos de configuração:
* /etc/ssh/sshd_config - Arquivo de configuração do servidor ssh.
* /etc/ssh/ssh_config - Arquivo de configuração do cliente ssh.
* ~/.ssh/config - Arquivo de configuração pessoal do cliente ssh.
MTools
O mtools é uma coleção de ferramentas de código aberto
que permite, a partir do Linux, manipular arquivos em
sistemas MS-DOS. Manipular arquivos que foram gravados
em sistema de arquivos diferentes.

Lembrando que no módulo básico vimos sobre


Filesystem (sistema de arquivos).

* Windows - fat16, fat32 , ntfs


* Linux - ext2, ext3, reiserfs

É uma ferramenta muito prática e simples de usar. Pode ser instalada no


Debian com o comando apt-get install pacote.
Exemplos de Comandos Mtools

-- mcd - Mudar o diretório MS-DOS.


-- mcopy - Copiar arquivo MS-DOS para UNIX
– mdel - Deletar um arquivo MS-DOS.
– Mdeltree – Deletar recursivamente um diretório
– mdir - Exibi um diretório MS-DOS.
-- floppyd - Daemon para executar o floppy no seu servidor X.
– floppyd_installtest - Pequeno utilitário para checar se existe o floppyd.
– mcat - O mesmo que cat, porém usado apenas com o floppyd.
– mbadblocks - Testa o disquete e marca os badblocks no sistema FAT.
– matrib - Alterar atributos dos arquivos MS-DOS.
Exemplos de Comandos Mtools

– mdu - Lista um espaço ocupado por um diretório e seu conteúdo.


– mformat - Adiciona um sistema de arquivos MS-DOS para a formatação do
disquete em baixo-nível.
– minfo - Pega informações sobre um sistema de arquivos MS-DOS.
– mlabel - Cria um nome para um volume MS-DOS.
– mkmanifest - Faz uma lista de nomes curtos equivalentes.
– mmd - Cria um sub-diretório MS-DOS.
– mmount - Monta um disco MS-DOS.
– mpartition - Criar partição MS-DOS.
– mren - Renomeia um arquivo MS-DOS existente.
Exemplos de Comandos Mtools

– Mmove – Move ou renomeia um arquivo ou sub-diretório DOS.


– mshowfat - Mostra um mapa dos arquivos FAT.
– mtoolstest - Testa e mostra as configurações.
– mtype - Mostra o conteúdo de um arquivo MS-DOS.
– mzip - Comando especifíco do disquete ZIP.
– mrd - Remove um sub-diretório MS-DOS.
– xcopy - Copia recursiva de um diretório DOS dentro de outro.
O Comando tar

O tar funciona como um arquivador, tranferindo conjuntos


de arquivos para um determinado arquivo de destino, seja
este último um arquivo comum ou um driver de um periférico
(disco flexível,fita magnética etc).

O que o Tar faz é muito simples de entender: ele "empacota"


vários arquivos em um só, isto é, faz com que um único
arquivo contenha vários outros. Similar ao Winzip ou Winrar.

Assim, é possível, por exemplo, armazenar em único arquivo


as cópias de documentos existentes na pasta de um usuário.
Sintaxe do comando tar

Sintaxe do comando tar:


tar [parâmetros] [nome_do_arquivo_tar] [arquivos_de_origem]

Onde [parâmetros] é uma lista de opções para o tar.


Arquivo1 [arquivo2[...]] são os arquivos a serem manipulados.
Exemplo: tar -cf doc.tar cobranca.txt aniver.txt
O comando acima cria o arquivo doc.tar
que contém os arquivos cobranca.txt e aniver.txt.
Para abrir um arquivo ".tar":
tar xvf doc.tar

Para listar o conteúdo de um arquivo ".tar":


tar tvf doc.tar

Descompactar arquivos com o ".tar“:


tar xzvf doc.tar.gz
Outras opções de parâmetros

No exemplo anterior, vocês devem ter notado que é possível


combinar parâmetros. Naquele exemplo, ocorreu com -c e -f.

-c cria um novo arquivo tar;


-t exibe o conteúdo de um arquivo tar;
-p mantém as permissões originais do(s) arquivo(s);
-r adiciona arquivos a um arquivo tar existente;
-f permite especificar o arquivo tar a ser utilizado;
-w pede confirmação antes de cada ação no comando;
-v exibe detalhes da operação;
-x extrai arquivos de um arquivo tar existente.
-z para comprimir/expandir os arquivos tratados usando o gzip
Net Term

O que é NetTerm?
NetTerm é um software de emulação de ambiente Unix/Linux para o
sistema operacional Windows. Ele permite que uma máquina
Windows trabalhe como se fosse uma estação Unix/Linux.

Como obter o NetTerm?


O netterm pode ser obtido através dos sites: www.netterm.com
www.eacsoftware.com.br/download/ecf
Ou no CD de instalação do EACECF.
Instalando o NetTerm
* Clique no menu "iniciar", "executar", aponte para o diretório onde
se encontra o arquivo de instalação do netterm.

* Aparecerá a tela "Select Language", escolha "Português


Brasileiro", e clique no botão "NEXT".

* Em seguida aparecera a tela de "Escolha o Local de Destino"


clique no botão "AVANÇAR".

* Após terminar de instalar aparecerá a tela com a mensagem


"Config foi completado com sucesso", clique no botão "OK" para
finalizar a instalação.
Configurando NetTerm
* Clique no menu "Iniciar", "Programa", "NetTerm","NetTerm".
* Clique no menu "Arquivo", "Lista Telefônica".
* Escolha na lista a opção "Telnet Default".
* Altere o conteúdo dos campos:
Nome do Servidor: Nome do servidor em que está instalado o SACI
Servidor/IP: Endereço IP do servidor em que está instalado o SACI
(consulte o administrador da rede sobre este endereço IP).
Emulação: SCO-ANSI
Teclas: SCO-ANSI
* Clique em "Área de Trabalho", altere o conteúdo dos campos:
Linhas = 25
Colunas = 80
Tipo de Terminal = linuxeac
Cursor é = Linha
Clique em "Não desconecta se existir sessão ativa".
Clique no botão "OK".
* Clique no botão "Adiciona" e em "Conecta".
Terminfo

É um sistema interno do Linux que contém as


características dos vários terminais suportados. Refere a parte de
funcionalidades das telas do Linux e de programas que
funcionam no Linux, por exemplo o SACI.
Através do comando: cd /usr/share/terminfo/x <enter>
é possível acessar todos os terminfo disponíveis no Linux.
Para utilização do SACI usamos o terminfo XTERM
basta usar o comando: TERM=xterm <enter>
Pode ocorrer que em terminfo diferentes as teclas de funções
fiquem desativadas, por exemplo.
De uma forma em geral, permite colocar o SACI em
funcionamento desde que esteja definido na estrutura .profile
ou .bash_profile.
Bibliotecas
Biblioteca nCurses:
Essa biblioteca está localizada no diretório /usr/lib e permite as
funcionalidades aos terminais de base de texto. Com ela os
programas poderão: Ter janelas, utilizar cores, ter suporte a
mouse e utilizar teclas definição.

Biblioteca libmydesign:
Essa biblioteca está localizada no diretório /usr/lib e é
responsável pelo design de telas do SACI.

Biblioteca libmysqlcliente.so.10:
Essa biblioteca está localizada no diretório /usr/lib e é
necessária para instalação.

Lembrando: apt-get install libmysqlclient10


E as bibliotecas ficam armazenadas no
diretório /usr/lib
Anexo: comando SCP

Comando usado para copiar arquivo de um servidor para um computador local


ou vice versa. Exemplos:
Para copiar um arquivo da máquina local para o servidor você poderá usar o
scp assim:
scp arquivo usuario@servidor
scp teste.txt root@192.168.1.34:/home/tmp

Para copiar um arquivo do servidor para sua máquina utilize:


scp usuario@servidor:/caminho/arquivo .
scp root@192.168.1.34:/home/marcelo/teste.txt .
Nesse caso, o arquivo copiado fica armazenado no diretório corrente.

Quando for copiar um diretório inteiro para o servidor usar o “-r” após o SCP.
Exemplo: scp -r diretório usuario@servidor

vale lembrar que é necessário a senha de ROOT


Fim do módulo Avançado de Linux