Frases

sábado, 31 de maio de 2008

Baixar arquivos protegidos com senha com o wget



Você que gosta de usar o wget para tudo, já pode usar o wget também para baixar aquele arquivo que está num servidor protegido com senha.

Como fazer isso?

Simples, basta usar os comandos --user=usuário e --password=senha

Exemplo: Vamos baixar um .pdf que está no meu servidor, entaum vou usar os seguintes comandos

$ wget --user=charles --password='soheusei' http://charlespito/arearestrita/area/meuarquivopdf.pdf

quinta-feira, 29 de maio de 2008

Alias no .bashrc




















Lembra dos alias usados no mirc?

/echo 3 -s Seu nick é $me e seu ip é $ip
/echo 3 -s Você está em $chan(0) canais
/echo 3 -s O relógio de seu computador marca $time


$date $time $idle $me $server $ip etc etc etc etc

http://pt.wikipedia.org/wiki/MIRC_script

As aliases são o que noutras linguagens se chama de função (ou procedimento),
isto permite criar mais comandos que não existem no mIRC Scripting, estas aliases
podem ser usadas por outras aliases, popups, remotes ou pela linha de comandos do mIRC.

Exemplo:

dizdata echo -a Data: $date

Bom como você viu acima, criar alias para mirc é muito fácil, e poupa muito
tempo, pois comandos longos podem ser resumidos a pequenos caracteres, mas o meu
objetivo aqui não é falar do mirc, mas sim do .bashrc

Nesse humilde post vou postar alguns alias que podem ser adicionados no
seu ~/.bashrc para lhe ajudar em tarefas comuns, economizando muito, mas muito
tempo na hora de você fazer o seu trabalho no terminal.

Vamos lá

Olguns alias interessantes são:

# instalar um pacote automaticamente, já respondendo o Yes para a confirmação
alias ins="sudo aptitude install -y"

Note que apartir do momento que você adicionar essa linha no seu .bashrc

você poderá fazer a instalação de um programa assim por exemplo

ins xchat
(senha)

ao invez do tradicional sudo apt-get install xchat
(senha)
XD

# pesquisar por um pacote
alias search="apt-cache search"

# Limpar a tela
alias c="clear"


# mostrar tamanho do disco em MB/GB em vez de "blocks"

alias hdd="df -h"

# entrar no home
alias home="cd ~"


# limpar lixeira
alias trash="rm -fr ~/.Trash"

Agora basta você usar a sua imaginação, e encurtar aquele comando em 1 ou 2
caracteres

Já que estamos mechendo no nosso .bashrc aproveitamos e adicionamos uma mensagem
de entrada no terminal

por exemplo

#------Menssagem de entrada---------------------
# customize this first message with a message of your choice.
# this will display the username, date, time, a calendar, the amount of users, and the up time.
clear
echo -e "Olá $USER , bem vindo ao terminal"
echo -e ""
echo -ne "Hoje é "; date
echo -e ""; cal ;
echo -ne "Up time:";uptime | awk /'up/
{print $3,$4}'
echo "";

importante também é saber a diferença entre arquivos tipo:

1) Arquivo .bash_profile
Este arquivo reside no diretório pessoal de cada usuário. É executado por shells que
usam autenticação (nome e senha). .bash_profile contém comandos que são executados
para o usuário no momento do login no sistema após o /etc/profile. Note que este é um
arquivo oculto pois tem um "." no inicio do nome.

Por exemplo colocando a linha: alias ls='ls --colors=auto' no .bash_profile, cria um
apelido para o comando ls --colors=auto usando ls, assim toda vez que você digitar ls
será mostrada a listagem colorida.



2) Arquivo .bashrc

Possui as mesmas características do .bash_profile mas é executado por shells que não
requerem autenticação (como uma seção de terminal no X).

Os comandos deste arquivo são executados no momento que o usuário inicia um shell com
as características acima. Note que este é um arquivo oculto pois tem um "." no inicio
do nome.



3) O arquivo /etc/profile

Este arquivo contém comandos que são executados para **todos** os usuários do sistema
no momento do login. Somente o usuário root pode ter permissão para modificar este arquivo.

Este arquivo é lido antes do arquivo de configuração pessoal de cada usuário (.profile
root) e .bash_profile).

Quando é carregado através de um shell que requer login (nome e senha), o bash procura
estes arquivos em seqüência e executa os comandos contidos, caso existam:

1.. /etc/profile
2.. ~/.bash_profile
3.. ~/.bash_login
4.. ~/.profile
Ele **ionterrompe** a pesquisa assim que localiza o primeiro arquivo no diretório do
usuário (usando a sequência acima). Por exemplo, se você tem o arquivo ~/.bash_login
e ~/.bash_profile em seu diretório de usuário, ele processará o /etc/profile e após
isto o ~/.bash_profile, mas nunca processará o ~/.bash_login (a menos que o
~/.bash_profile seja apagado ou renomeado).

Caso o bash seja carregado através de um shell que não requer login (um terminal
no X, por exemplo), o seguinte arquivo é executado: ~/.bashrc.

Observação: Nos sistemas Debian, o profile do usuário root está configurado no
arquivo /root/.profile. A razão disto é porque se o bash for carregado através do
comando sh, ele fará a inicialização clássica deste shell lendo primeiro o arquivo
/etc/profile e após o ~/.profile e ignorando o .bash_profile e .bashrc que são
arquivos de configuração usados somente pelo Bash. Exemplo, inserindo a linha
mesg y no arquivo /etc/profile permite que todos os usuários do sistema recebam
pedidos de talk de outros usuários. Caso um usuário não quiser receber pedidos de
talk, basta somente adicionar a linha mesg n no arquivo pessoal .bash_profile

Espero que tenham gostado.

Charles.









quinta-feira, 22 de maio de 2008

Arquivo Sudoers


















Para você editar seu arquivo sudoers
edite o arquivo /etc/sudoers

Exemplo do arquivo

----

# sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.
#

# Host alias specification

# User alias specification

# Cmnd alias specification

# Defaults specification

# Runas alias specification

# User privilege specification
root ALL=(ALL) ALL
# Uncomment to allow people in group wheel to run all commands
# %wheel ALL=(ALL) ALL

# Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL

# Samples
# %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
# %users localhost=/sbin/shutdown -h now

----

Pode-se ver nesse arquivo que temos alguns exemplos de configuração.

Por exemplo, se quizermos dar privilegios para o usuário charles, dar um shutdown na maquina, fariamos o seguinte:

Após a linha

root ALL=(ALL)

Colocariamos a linha:

charles ALL=NOPASSWD: /sbin/shutdown

O que foi dito ai em cima, foi o seguinte:

charles -> Usuário que vai receber o privilégio
ALL -> Host em que vai ser utilizado (pode ser também como localhost)
NOPASSWD -> Sem confirmação de senha
/sbin/shutdown -> Comando de permissão

outro exemplo de configuração

charles    localhost = NOPASSWD: /bin/kill, PASSWD: /bin/ls, /usr/bin/lprm

como você poder ver, eu posso especificar, qual comando ele irá ou não pedir a senha

Consulte tambem o manual sudoers

Já que estamos no arquivo sudoers, uma coisa um tanto quanto (interessante), é habilitar
que o sudo insulte o usuário, quando ele errar a senha.

Sim, isso mesmo

Quando você for digitar uma senha e a mesma estar errada, ele te chinga

  • I ve seen penguins that can type better than that.
  • Maybe if you used more than just two fingers
As frases estão em inglês, mas são bem faceis de intender

XD

Como habilito isso?

Bem simples

No Ubuntu, essa função vem desabilitada. Para habilitar, insira a palavra insults no final da linha quem começa com Defaults . Essa linha deve ficar mais ou menos assim:

  Defaults !lecture,tty_tickets,!fqdn,insults

Pronto! Basta executar o comando sudo e digitar uma senha errada.