FreeBSD-12.1 en el Desktop

 FreeBSD

Para disponer de una instalación de escritorio de FreeBSD se debe disponer de un sistema instalado sin ambiente gráfico y con lo mínimo de instalación para que el sistema bootee o se inicie sin problemas y nos entregue el prompt de login.

Una vez con esto debemos instalar lo siguiente:

# pkg install vim-console dfc 

Con esto instalamos el editor de VIM que es un VI Mejorado, para editar los archivos de configuración y otros de administración. dfc -d nos permite ver la capacidad de uso de los discos por terminal.

Instalando XORG

Ahora instalaremos el ambiente gráfico, con:

# pkg install xorg

Esperamos a que termine, que dependiendo de la velocidad de su enlace y computador, tardara unos minutos.

Una vez terminado lo anterior, en la misma consola como root debemos ejecutar la configuracion de xorg con lo siguiente:

# Xorg -configure

Esto genera en el mismo directorio un archivo de configuracion llamado xorg.conf.new el cual nos servira para configurar las X o el entorno grafico, pero debemos editar y modificar un li­nea En la seccion Device debemos cambiar Driver a vesa, y dependiendo de su sistema, de que version de hardware tenga, si tienen una maquina con un procesador no tan nuevo de intel puede funcionar el driver de intel no tan recientes, por lo que tendrá que probar ambas configuraciones.

Tendra que dejar uno de los 2 siguientes drivers:

 Section Device
      ...
      Driver  "vesa"   // Driver generico
      Driver  "intel"  // Driver Intel (el que usamos)
      ...
 EndSection

Con esto nos aseguramos que nuestro hardware de video funcione sin problemas en la primer booteo, a menos que su hardware sea Nvidia u otra tarjeta con una GPU gráfica de alta gamma. En este caso deberá investigar mas, como no es mi caso y no dispongo de otra gráfica, no abordare esa configuración.

Configurando loader.conf

También retocaremos el archivo de configuración que nos permita cargar en en inicio algunos módulos del kernel, el contenido del archivo /boot/loader.conf lo hemos dejado en:

cpu_microcode_load="YES"
cpu_microcode_name="/boot/firmware/intel-ucode.bin"

loader_logo="bestie"

# Deshabilitamos touchpad
hw.psm.synaptics_support=0

kern.ipc.shmseg=1024
kern.ipc.shmmni=1024
kern.maxproc=1000000

security.bsd.allow_destructive_dtrace=0
kern.geom.label.disk_ident.enable=0
kern.geom.label.gptid.enable=0

hw.syscons.disable=1

mmc_load="YES"
mmcsd_load="YES"
sdhci_load"YES"
atapicam_load="YES"
fuse_load="YES"

coretemp_load="YES"
tmpfs_load="YES"
admtemp_load="YES"
aio_load="YES"

libiconv_load="YES"
libmchain_load="YES"
cd9660_iconv_load="YES"
msdosfs_iconv_load="YES"

snd_hda_load="YES"
boot_mute="YES"
autoboot_delay=3

cuse4bsd_load="YES"
cuse_load="YES"

hw.memtest.tests=0
sysctlinfo_load="YES"
sysctlbyname_improved_load="YES"

Esta configuración no la voy a desglosar pero lo que les puedo comentar es que funciona sin problemas, podemos tener las referencias de los parámetros viendo en man loader.conf.

Instalando Driver de Intel

Para instalar el driver nuevo para la GPU de intel se deben instalar algunas aplicaciones que pasamos a ver, en consola desde una terminal como root debemos ejecutar:

# pkg install drm-kmod

Una vez instaladas la aplicacion de microcodigo y el driver de GPU intel, debemos agregar a nuestro archivo de configuracion en /etc/rc.conf, las siguientes lineas:

# sysrc kld_list="/boot/modules/i915kms.ko"   // Para Intel
# sysrc kld_list="amdgpu"                     // Para AMD RX580/RX5700 u otra AMD

Con esto hemos habilitado el driver de intel y ademas hemos habilitado las actualizaciones automaticas del microcodigo de intel, cada vez que se actualiza en los paquetes del sistema.

Debo indica ademas que si hay otros modulos habilitados en el /etc/rc.conf podemos poner todo en la misma linea, de esta forma:

kld_list="/boot/modules/i915kms.ko linux fuse"

Con esto hemos habilitado para ejecutar aplicaciones compatibles con linux, también fuse para montaje de sistemas de archivos. Sin embargo para eso debemos hacer mas configuraciones, tanto para emulacion linux como para montaje de sistema de archivos, aqui hemos mostrado solo una linea para combinar módulos del kernel.

Actualizando el Firmware de Intel

Es recomendable actualizar el firmware de las CPU's de intel que han tenido varias fallas de seguridad y para resolver estos problemas se ha tenido que incluir un firmware adicional que mejora estos problemas de seguridad.

Debemos instalar el paquete:

# pkg install devcpu-data

Para ello se recomienda agregar a /boot/loader.conf lo siguiente:

cpu_microcode_load="YES"
cpu_microcode_name="/boot/firmware/intel-ucode.bin"

Esto es además de las modificaciones al archivo /etc/rc.conf que se debe agregar:

microcode_update_enable="YES"

Instalando MATE

 FreeBSD MATE desktop

Una vez instalado el entorno grafico, instalaremos el escritorio, para ello ejecutamos en una terminal, uno de los dos siguientes comandos:

# pkg install mate mate-desktop         // Si queremos usar MATE
# pkg install xfce4                     // Si queremos usar XFCE4 

Esto tambien tardara unos minutos. Con esto tendremos un entorno basico, pero aun nos falta disponer de algunos paquetes adicionales tal como el gestor de ambiente grafico entre otras aplicaciones.

Hay que tener claro que XFCE4 le he encontrado problemas con el protector de pantalla cuando se va a hibernar la maquina, problemas que no me ha presentado MATE.

Paquetes Adicionales

 FreeBSD MATE App

Por lo que procedemos a instalar algunos paquetes adicionales, que nos permitiran mejorar el aspecto grafico de nuestro MATE o XFCE4.

# pkg install papirus-icon-theme
# pkg install gtk-arc-themes
# pkg install xfce4-goodies
# pkg install hack-font

Ademas instalaremos paquetes de aplicaciones adicionales que nos permiten tener un entorno grafico mas comodo.

# pkg install firefox
# pkg install libreoffice es-libreoffice
# pkg install mpv uget celluloid vlc
# pkg install htop py37-glances handbrake
# pkg install neofetch screenfetch bsdinfo
# pkg install audacious audacious-plugins
# pkg install ristretto

Con esto tenemos un entorno grafico con algunas aplicaciones al inicio que sirven como base.

Instalando el LOGIN Grafico

Una vez terminada la instalacion de los paquetes solicitados procedemos con el gestor de ventanas, de la forma siguiente:

# pkg install slim slim-freebsd-black-theme slim-freebsd-themes

Esperamos unos minutos para que termine. Ademas debemos configurar el login de slim, esto es editando el archivo /usr/local/etc/slim.conf y modificamos la linea de current_theme.

current_theme   slim-freebsd-black-theme

Con esto tendremos una interfaz de login mas adecuada para nuestro sistema.

Modificando RC.CONF

Una vez que hemos instalado estos paquetes deberemos habilitar desde el inicio /etc/rc.conf los paquetes para el entorno grafico, con las siguientes instrucciones:

# sysrc slim_enable="YES"
# sysrc avahi_daemon_enable="YES"
# sysrc avahi_dnsconfd_enable="YES"
# sysrc hald_enable="YES"
# sysrc dbus_enable="YES"

Con esto tenemos lo basico para rebootear nuestro sistema y que parta con entorno grafico.

Contenido de RC.CONF

Ahora indicaremos el contenido completo del archivo de inicio de demonios en nuestro sistema:

clear_tmp_enable="YES"
syslogd_flags="-ss"
hostname="fbsd"

keymap="es.acc.kbd"		// Para teclado espanol
keymap="latinamerican.kbd"	// Para teclado latinoamericano

ifconfig_re0="DHCP"

sshd_enable="YES"
moused_enable="YES"
ntpdate_enable="YES"

kld_list="/boot/modules/i915kms.ko fuse linux"

linux_enable="YES"

powerd_enable="YES"
powerd_flags="-a hiadaptive -b adaptive"

hcsecd_enable="YES"
sdpd_enable="YES"

# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"

openntpd_enable="YES"

sendmail_enable="NONE"
sendmail_msp_queue_enable="NO"
sendmail_outbound_enable="NO"
sendmail_submit_enable="NO"

microcode_update_enable="YES"

webcamd_enable="YES"

hald_enable="YES"
dbus_enable="YES"
avahi_daemon_enable="YES"
avahi_dnsconfd_enable="YES"

slim_enable="YES"

pf_enable="YES"
pflog1_enable="YES"

Actualizando Perfil de Usuarios

Ahora lo que deberemos realizar es la actualización de cambios del perfil de los usuarios del sistema, esto se realiza como root desde una terminal:

# cap_mkdb /etc/login.conf

Ademas necesitamos generar en la cuenta del usuario normal del sistema el archivo que iniciara el ambiente gráfico una vez que el usuario ingrese su usuario y contraseña, en una terminal con la cuenta del usuario debemos hacer lo siguiente:

$ vim .xinitrc
exec startxfce4 --with-ck-launch  // Si usamos XFCE4
exec mate-session                 // Si usamos MATE

Despues guardamos y cerramos. Con esto estaremos listos para reiniciar nuesro sistema y que funcione correctamente en español. Ademas la opcion –with-ck-launch permite que se añadan las opciones de cierre de session.

Agregando los Usuarios al Grupo Video

Ahora necesitamos agregar a los usuarios al grupo video para que puedan usar correctamente el ambiente grafico sin problemas:

# pw group mod video -m root
# pw group mod video -m <usuario>

Creando directorios de Usuario

Una vez que tengamos todas las aplicaciones gráficas instaladas, lo que podemos realizar es generar los directorios normales de las cuentas de usuario, para eso debemos instalar como root lo siguiente:

# pkg install xdg-user-dirs

Una vez instalado debemos ejecutar en una terminal como usuario normal, esta aplicación, de la siguiente forma:

$ /usr/local/bin/xdg-user-dirs

Al ejecutarse esto nos crea los directorios:

$ ls -lG
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Descargas
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Documentos
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Escritorio
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Imágenes
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Música
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Plantillas
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Público
drwxr-xr-x  2 user  user  512 11 jul.  13:45 Vídeos

Si se fijan están creados en la misma fecha y hora, lo cual nos indica que sea han creado con la misma aplicación. Lógicamente es posible crearlas a mano con el mismo resultado, pero se han realizado con la aplicación indicada.

PF Minimo para nuestro Sistema

Ahora indicaremos el archivo completo de nuestro PF configurado en nuestra maquina FreeBSD.

#
#       $OpenBSD: pf.conf,v 1.54 2014/08/23 05:49:42 deraadt Exp $
#
# See pf.conf(5) and /etc/examples/pf.conf

ext_if="re0"

# Por defecto, boquear todo 
block in all
block out all

# Permitir todo en la interfaz loopback
set skip on lo

# Politicas por defecto
block return in log all
#block out all
  
# Drop todas las direcciones no routeables
# block drop in  quick on $ext_if from $martians to any
# block drop out quick on $ext_if from any to $martians

# Bloqueamos los paquetes spoofing
antispoof quick for $ext_if

# Permitimos PING a la interfaz externa
pass inet proto icmp icmp-type echoreq

# Permitir trafico entrante hacia el puerto 22 (SSH)
pass in proto tcp from 192.168.1.0/24 to port 22

# Permitir trafico entrante hacia los puertos 80 y 443 (HTTP/HTTPS)
#pass in proto tcp from any to port 80
#pass in proto tcp from any to port 443

# Permitir todo el trafico saliente
pass out proto { tcp, udp, icmp } from any to any modulate state

Este es un Firewall para nuestra maquina personal.

informatica/unix_freebsd/fbsd-desktop.txt · Última modificación: 2023/10/11 14:59 por 127.0.0.1
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki