Vous êtes sur la page 1sur 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.

Criação de usuário:

# useradd nome usuário

Criando senha:

# passwd nome usuário

Removendo usuário:

# userdel nome usuário

Sintaxe dos Comandos

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”.

U=DONO

R=4

W=2

X=1

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 645 arquivo.doc

chmod 640 arquivo.doc

chmod 775 arquivo.doc

chmod 644 arquivo.doc

chmod 000 arquivo.doc

Entendendo a Conversão

P e rm is s ã o

 

B in á r ioD e c im a l

 

---------

0 0 0

---

  • 0 0 0

0

r --------

4 0 0

--x

  • 0 0 1

1

 

r --r --r --

4 4 4

-w -

  • 0 1 0

2

 

r w -------

6 0 0

-w x

  • 0 1 1

3

r w -r --r --

6 4 4

r --

  • 1 0 0

4

r w -r w -r --

6 6 4

r -x

  • 1 0 1

5

r w x------

7 0 0

r w -

  • 1 1 0

6

r w xr -x---

7 5 0

r w x

  • 1 1 1

7

r w xr -xr -x

7 5 5

 

r w xr w xr w x

7 7 7

 
     

As Permissões funcionam da seguinte forma

- - - - - - - - - - Tipo Usuário Grupo Outros
-
-
- -
- -
-
-
- -
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, * Wi-Fi: wlan0, wlan1,

...

...

(REDE A CABO)

(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…

Comando:

Telnet

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

Introdução

SSH

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.

Características

SSH

* 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 chave pública (DSA ou RSA).

* ssh-keyscan - Scaneia por chaves públicas de autenticação de hosts O principal objetivo é ajudar na construção do arquivo local know_hosts.

para autenticação via

especificados.

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

O que é NetTerm?

Net Term

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 funcionam no Linux, por exemplo o SACI.

programas

que

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.

Biblioteca nCurses:

Bibliotecas

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

necessária para instalação.

no

diretório

/usr/lib

e

é

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