Linux – configuración básica

Fuente: link

En esta fuente encontré una configuración de un ubuntu medio viejito, pero hay cosas que sigue valiendo, y muy buenas!!!

Editor de textos de consola Vim

Cuando trabajamos con la terminal de GNU/Linux, suele ser habitual utilizar el editor de textos “Vim”. Ubuntu instala una versión reducida (tiny) de este editor que no es tan configurable como la versión completa, así que instalaremos esta última:

sudo aptitude install vim-gnome

A continuación creamos el fichero ‘/etc/vim/vimrc.local’ con el siguiente contenido:

" When editing a file, always jump to the last cursor position
autocmd BufReadPost *
      \ if line("'\"") > 0 && line ("'\"") <= line("$") |
      \   exe "normal g'\"" |
      \ endif

" sw -> espacios de la indentacion
set sw=4

" tabulacion
set tabstop=4
set smarttab

" ignore case en las busquedas
set ic

" highlight search, incsearch
set hls is

" Mostrar siempre la linea actual
set ruler

" Coloreado
syntax on

" Lineas
set number

"Sin beep ni aviso visual
"set vb t_vb=

"Sin beep
"set vb

" Reemplazar tabs con espacios
"set expandtab

" Configuración del explorador de ficheros (":Explore")
"""""""""""""""""""""
" Al abrir un fichero, hacerlo en la ventana actual
let g:netrw_browse_split=0

" Activar la ocultacion de ficheros
let g:netrw_hide=1

" Lista de ficheros a ocultar (separar por comas)
let g:netrw_list_hide='^\..*'

" Modo de lista larga (con detalles)
let g:netrw_longlist=1

" Ordenar por "name", "time", o "size"
let g:netrw_sort_by="name"

" Orden "normal" o "reverse"
let g:netrw_sort_direction="normal"
""""""""""""""""""

" Mostrar siempre la barra de tabs
set stal=2

" Remapeo de comandos
nmap :W :w
nmap :Q :q
nmap :WQ :wq

" Function Key Mappings
map <F2>        :w<C-M>

map <F4>        :set nowrap<C-M>
map <C-F4>       :set wrap<C-M>

" Pegar sin problemas
set pastetoggle=<F12>

" Habilitar/Deshabilitar uso de ratón
map <F8>  :set mouse=a<CR>
map <C-F8>  :set mouse=<CR>

" tab navigation
:nmap <C-p> :tabprevious<cr>
:nmap <C-n> :tabnext<cr>
:nmap <C-t> :tabnew<cr>
:map <C-c> :tabclose<cr>
map <C-S-F1> 1gt
map <C-S-F2> 2gt
map <C-S-F3> 3gt
map <C-S-F4> 4gt
map <C-S-F5> 5gt
map <C-S-F6> 6gt
map <C-S-F7> 7gt
map <C-S-F8> 8gt
map <C-S-F9> 9gt
map <C-S-F10> 10g


" No guardar fichero de backup *~
set nobackup

Finalmente creamos el fichero ‘/etc/vim/gvimrc.local’ con el siguiente contenido:

" Indentación elegante
set smartindent

" Ocultar puntero del raton al escribir
set mousehide

" Color de fondo Negro, color de la letra blanco
hi Normal       guibg=Black guifg=White 

" Esquema de color
"colorscheme torte

if filereadable("/etc/vim/vimrc.local")
  source /etc/vim/vimrc.local
endif

(Des)Compresores

Para soportar el mayor número de ficheros comprimidos podemos instalar toda una serie de (des)compresores:

sudo aptitude install rar unace unrar p7zip p7zip-full arj unzoo lha libarchive1 libarchive-tar-perl libarchive-zip-perl dpkg-dev

Compartir directorios/ficheros

Para compartir directorios en red entre máquinas GNU/Linux o incluso MS Windows, debemos instalar samba:

sudo aptitude install samba

Y a continuación, editar ‘/etc/samba/smb.conf’ y añadir debajo de la linea de ejemplo “security” lo siguiente:

;   security = user
security = share

Ahora desde el navegador de disco Nautilus, podremos hacer click con el botón derecho sobre las carpetas que queramos compartir.

También podriamos añadir manualmente directorios compartidos al fichero ‘/etc/samba/smb.conf’:

[extra01]
path = /mnt/extra01
available = yes
browseable = yes
public = yes
writable = yes
create mask = 0666
directory mask = 0777
force user = nobody
force group = nogroup

En este caso estariamos dando permiso para lectura/escritura total sin necesidad de autentificación.

Hacking

Puede resultar útil tener instalado en el sistema toda una serie de herramientas que nos permitirán hacer comprobaciones de seguridad en la red.

Escaner de puertos:

sudo aptitude install nmap nmapfe 

Sniffers:

sudo aptitude install ethereal etherape ettercap-gtk ettercap-plugins 

Herramientas para detectar redes wireless:

sudo aptitude install aircrack-ng airsnort kismet 

Editamos ‘/etc/kismet/kismet.conf’ y en mi caso cambio mi nombre de usuario y mi tarjeta wireless (ipw2200 es la de los intel centrino):

...
suiduser=marble
...
source=ipw2200,eth1,ipw2200
...


Conexión SSH sin password

Para poder conectar con una máquina por SSH sin tener que poner password:

ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub marble@host:~/.ssh/authorized_keys2

Otros…

Substituto del comando ‘top’ para visualizar los procesos que más CPU consumem:

sudo aptitude install htop

Creador de paquetes ‘deb’ substituto del comando ‘make install’:

sudo aptitude install checkinstall

Montar directorios remotos a traves de los protocolos SMB o SSH:

sudo aptitude install sshfs smbfs

Lector de correo de consola Mutt:

** Mutt necesita un gestor de correo para enviar mails mejor usar ssmtp sino instala postfix por defecto.
** En ~/.mutt/ podemos crear la configuración

sudo aptitude install ssmtp mutt
mkdir ~/.mutt/
cp /usr/share/doc/mutt/examples/gpg.rc ~/.mutt/gpg
touch ~/.mutt/certificates

Configuración de mutt, fichero ‘~/.mutt/muttrc’:

# Reset de variables y hooks
reset all
unhook *

######## Envio y recepción de correo

# Nombre del dominio por defecto
set hostname = localhost

# Mi dirección from por defecto
my_hdr From: Sergi Blanco Cuaresma <marble@localhost>

# Comprobación de los emails activada, cada 60 segundos
set check_new
set mail_check=60
set beep_new

# Donde se encuentran los buzones (aparte del principal)
set folder=~/mail

# Mailboxes (listar pulsando 'y')
#mailboxes = ~/mail/borsatreball
#mailboxes = ~/mail/gpl
#mailboxes = ~/mail/ubuntu-es
#mailboxes = ~/mail/mono-hispano

# Los mensajes pospuestos se guardan en...
set postponed="=postponed"

# Guardar una copia de los mensajes enviados en...
set copy= yes
set record="=sent-mail"

# Enviar correo con el comando
set sendmail = "/usr/sbin/sendmail"

# Definimos el lugar POP3 de donde queremos descargar los emails.
# Para realizar la descarga pulsamos 'G'
#set pop_host = "pop3.telefonica.net"
#set pop_user = "usuario"
#set pop_pass = "secret"
#set pop_delete = no

# También podemos acceder a nuestra cuenta POP al estilo IMAP (pulsar 'y' para
# ver listado de mailboxes)
#mailboxes = "pop://usuario@pop3.telefonica.net"

# Definimos un servidor IMAP para acceder a su buzón principal. (pulsar 'y' para
# ver listado de mailboxes)
mailboxes = "imaps://marble@host-imap.com/inbox"
mailboxes = "imaps://marble@host-imap.com/borsatreball"
mailboxes = "imaps://marble@host-imap.com/gpl"
mailboxes = "imaps://marble@host-imap.com/ubuntu-es"
mailboxes = "imaps://marble@host-imap.com/mono-hispano"
#set imap_pass = "secret"
# Indicamos un lugar donde guardar los certificados.
set certificate_file=~/.mutt/certificates

########


######## Entorno

# No cerrar la vista de threads que contienen mails no leidos
unset collapse_unread

# No saltar al siguiente email cuando llegamos al final del actual
set pager_stop

# Mostrar el listado de mails en la parte superior cuando estamos visualizando
# el contenido de un mail concreto. Usar solo 6 lineas.
set pager_index_lines=6

# No poner un '+' en las lineas cortadas (wrapped), asi podremos copiar correctamente
# URLs por ejemplo.
set markers=no
 
# Avanzar por el texto del mail actual con up/down y pasar al siguiente o
# anterior mail con left/right
bind	pager	<up>	previous-line
bind	pager	<down>	next-line
bind	pager	<left>	previous-entry
bind	pager	<right>	next-entry

# Macros: usar 'y' para ir al listado de buzones desde el indice o el browser
macro index "y" "c?\t"
macro browser "y" "\t\t"

# Marcar todos los mensajes como leidos pulsando M
macro index M "T.*\n;WN" "Mark all messages as read"

# Mostrar solo algunas cabeceras
ignore *
unignore From To Cc Subject Date Reply-To Organization X-Mailer User-Agent

# Orden de las cabeceras
hdr_order From: Date: To: Cc: Subject:

# Borrar automáticamente los mails
set delete=no

# No mover los mensajes leidos al salir
set move=no

# Citar los mensajes en las respuestas
set include=yes

# No marcar los mensajes nuevos no leidos en otros accesos como viejos
set nomark_old

# Si un mail tiene la cabecera Reply-To, utilizarla si vamos a responder. No
# nos preguntará.
set reply_to=yes

# Ordenar primero por threads y después por fecha de llegada
set sort=threads
set sort_aux=date-received

# La vista de threads no se debe construir estrictamente por las cabeceras
# de los mails
set nostrict_threads

# Añadir "--" a mi firma e incluirla (la tenemos definida en ~/.firma)
set sig_dashes
set signature="~/.firma"

# Permitir escribir caracteres de 8 bits i usar charset iso
set allow_8bit
#set charset=iso-8859-1
set charset=utf-8

# Formatos
set attribution    = "On %d, %n (%a) wrote:"
set forward_format = "Fwd: [%a: %s]"
#set quote_regexp   = "^ *[a-zA-Z]*[]>|}()%:=-][]>|}():=-]*"  # More Sven
set status_format  = "[%r] %h %f (%s) [%M/%m] [N=%n,*=%t,post=%p,new=%b]" 
#set index_format   = "%4C %Z %{%b %d} %-15.15F (%4l) %s"
set date_format="%d/%m/%y %H:%M %Z"

# Buzones correspondientes a listas de correo, si pulsamos L sobre un mail
# cogerá como destinatario la lista y no el origen del mensaje.
lists ubuntu-es gplurv mono-hispano

# Configuración especifica de las listas
folder-hook ubuntu-es my_hdr From: Sergio Blanco Cuaresma <sergi@mail.com>
folder-hook mono-hispano my_hdr From: Sergio Blanco Cuaresma <sergi@mail.com>

# Configuración especifica de un buzón que no esta definido como lista (identico)
folder-hook gpl my_hdr From: GPL Tarragona <gpl@mail.net>

# Fichero donde se guardará la libreta de direcciones
set alias_file=~/.mutt/aliases

# Preguntar antes de imprimir
set print=ask-yes

# Preguntar antes de borrar
set delete=ask-yes

# Definiciones para el uso de GnuPG
source ~/.mutt/gpg


######## Configuración de GnuPG

# Desencriptar al hacer un forward
set forward_decrypt

# Mostrar solo la llave principal y no las subclaves
set pgp_ignore_subkeys

# Firmar automaticamente los mails salientes
set pgp_autosign

# No encriptar automáticamente
unset pgp_autoencrypt

# Si un mail estaba encriptado, la respuesta será encriptada también
# Si un mail estaba firmado, la respuesta será firmada también
set pgp_replyencrypt
set pgp_replysign
set pgp_replysignencrypted

# Comprobar firmas
set pgp_verify_sig=yes

# No olvidar el passphrase durante 7200 segundos (2 horas)
set pgp_timeout=7200

# No mostrar ids de clave de 64 bits
#unset pgp_long_ids

# Mostrar las llaves no usables en el menu
set pgp_show_unusable

# Ordenar claves por confianza
set pgp_sort_keys = trust

# Firmar con la clave...
set pgp_sign_as=0x0ED2CF9D

## Fin GnuPG

Fichero ‘~/.mutt/aliases’:

alias jbilbo Jonathan Hernández Velasco <su@mail.com>
alias sergi Sergio Nuez <otro@mail.com>

Obtener correo:

sudo aptitude install getmail4
mkdir ~/.getmail/

Fichero ‘~/.getmail/mi@mail.com’

[options]
verbose = 0
# Retrieve only new messages by default
read_all = true
# Log message retrieval and delivery to this file by default
message_log = ~/.getmail/log
#message_log = ""
# TCP timeout value; increase if on a poor connection or
# slow POP3 server.  getmail defaults to a 180 second timeout.
timeout = 60
#max_message_size = 2097152 #0 means no limit.
# Don't add a Delivered-To: header for this mailbox
no_delivered_to = 1
# Don't add a Received: header for this mailbox
no_received = 1
delete = 0

## Si es una cuenta que permite conexiones encriptadas
[retriever]
type = SimplePOP3SSLRetriever
server = pop.gmail.com
username = mimail@gmail.com
port = 995
password = topsecret

## Si no permite conexiones encriptadas
#[retriever]
#type = SimplePOP3Retriever
#server = correu.mail.cat
#port = 110
#username = miusuario
#password = topsecret

## Si queremos que guarde el mail directamente en un buzón
#[destination]
#type = Mboxrd
#path = ~/mail/gmail

## Si queremos que procmail lo filtre
[destination]
type = MDA_external
path = /usr/bin/procmail
unixfrom = True
arguments = ("/home/marble/.procmailrc", )
user = marble

Filtrado de mails:

sudo aptitude install procmail

Fichero ‘~/.procmailrc’:

## Filtra por ID de lista
:0:
* ^List-Id:.*<gplurv\.listas\.hispalinux\.es>
* ! ^Subject:.*Mensaje.*de.*admin.*
* ! ^Subject:.*Mail.*de.*root.
/home/marble/mail/lista


# Reenviar una copia a otro mail y seguir procesando reglas
#:0 c
#!mimail@gmail.com

# Reenviar a otro mail y no seguir procesando
#:0
#!miotromail@gmail.com

Cliente de FTP/sFTP de consola:

sudo aptitude install yafc

Consola para la parte superior de GNOME (tipo consola del juego Quake):

sudo aptitude install tilda

Aplicación para escribir posts en blogs:

sudo aptitude install drivel

Google earth:

wget http://dl.google.com/earth/GE4/GoogleEarthLinux.bin
chmod 755 GoogleEarthLinux.bin
sudo ./GoogleEarthLinux.bin

6 pensamientos en “Linux – configuración básica”

  1. Write more, thats all I have to say. Literally, it seems
    as though you relied on the video to make your point.
    You obviously know what youre talking about, why waste your intelligence on just posting videos to your site when you could
    be giving us something enlightening to read?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

tres × tres =

Time limit is exhausted. Please reload CAPTCHA.