FreeBSD, demonios y usuarios. (o ambas cosas)
Estoy configurando un servidor FreeBSD para que corra unos servicios y estoy mirando unos puntos relacionados con seguridad, cuentas, D.O.S., posibles problemas, consumo de recursos y otros.
Quiero hacer que funcione las 24 hs sin caidas y evitando "ruidos" generados opr los usuarios.
Pondré cosas que voy ajustando en el server, quizas le sirvan a alguien mas.
MAXPROCPERUID
Este parametro permite que cada usuario corra menos de N procesos.
# sysctl -a (ver todos los parametros de conf del kernel)
# sysctl -a | grep maxproc (ver aquellos que contienen ese texto)
# sysctl kern.maxprocperuid=NN (nro de procesos maximo)
Editar /etc/rc.conf y agregar entradas.
Cada usuario nunca podra tener mas de NN procesos corriendo al mismo tiempo. Cuando un usuario se pasa en la cantidad de procesos, genera una alerta a la terminal 1 del server.
USER ROOT y TOOR
Crear cuenta "casicomoroot" asignarle un password fuerte "u&t34RRE12_9" y en las cuentas root y similares, ponerle un NOLOGIN
MAKE ALL
En /usr/ports (teniendo todos los ports), hacer un MAKE, asi todos los programas son compilados aprovechando los beneficios del procesador y otras cosas, aunque demore unas cuantas horas (quizas dias), la diferencia de performance y características es notoria.
Luego Make Install.
Opciones de actualizacion de ports.
Instalación de todos los ports, crea carpeta y baja info de todos los ports existentes.
# mkdir /usr/ports
# portsnap fetch
# portsnap extract
# portsnap update
Actualizacion de ports instalados en el sistema (todos)
# cd /usr/ports/sysutils/portupgrade
# make install clean
# portupgrade -a (todos)
Para liberar espacio utilizado en actualizaciones
# portsclean -C
Otro proceso para actualizar ports
# cd /usr/ports/sysutils/portmanager
# make install clean
# portmanager -u
Tambien se puede utilizar para instalar ports, y actualiza antes las dependencias.
# portmanager nombre_port
PROXYs
En .cshrc agregar las lineas para proxy
setenv HTTP_PROXY="http://xx.xx.xx.xx:port"
setenv FTP_PROXY="http://xx.xx.xx.xx:port"
MAXUSERS - ???
SECURELEVEL>0
Activar el sistema de control de Kernel, a un nivel mayor a cero. Esto trae limitaciones para la ejecución de demonios y programas, pero nos asegura mayor aislamiento del kernel. Obligatorio en un sistema productivo, en internet y estable.
PORTS
Eliminar la carpeta /usr/ports
desde SYSINSTALL, instalar nuevamente todos los ports. (bajarlos del site via http)
luego whereis "producto" y make, make install para ponerlo al dia.
Tambien se puede usar
portupgrade -ai
para poner todos los productos instalados al dia
CONCLUSIONES FINALES
Cuanto mas aprendo de FreeBsd (de linux no me falta mucho mas para lo que necesito) mas prefiero FreeBsd. Tiene algunas cosas que lo diferencian notoriamente para sistemas productivos.
Como todo sistema operativo, es mejor para determinadas cosas, para lo que necesito ahora mismo, (un demonio visible a internet) que funcione 24 x 365, con alta seguridad y evitando problemas de los usuarios, FREEBSD !
Quiero hacer que funcione las 24 hs sin caidas y evitando "ruidos" generados opr los usuarios.
Pondré cosas que voy ajustando en el server, quizas le sirvan a alguien mas.
MAXPROCPERUID
Este parametro permite que cada usuario corra menos de N procesos.
# sysctl -a (ver todos los parametros de conf del kernel)
# sysctl -a | grep maxproc (ver aquellos que contienen ese texto)
# sysctl kern.maxprocperuid=NN (nro de procesos maximo)
Editar /etc/rc.conf y agregar entradas.
Cada usuario nunca podra tener mas de NN procesos corriendo al mismo tiempo. Cuando un usuario se pasa en la cantidad de procesos, genera una alerta a la terminal 1 del server.
USER ROOT y TOOR
Crear cuenta "casicomoroot" asignarle un password fuerte "u&t34RRE12_9" y en las cuentas root y similares, ponerle un NOLOGIN
MAKE ALL
En /usr/ports (teniendo todos los ports), hacer un MAKE, asi todos los programas son compilados aprovechando los beneficios del procesador y otras cosas, aunque demore unas cuantas horas (quizas dias), la diferencia de performance y características es notoria.
Luego Make Install.
Opciones de actualizacion de ports.
Instalación de todos los ports, crea carpeta y baja info de todos los ports existentes.
# mkdir /usr/ports
# portsnap fetch
# portsnap extract
# portsnap update
Actualizacion de ports instalados en el sistema (todos)
# cd /usr/ports/sysutils/portupgrade
# make install clean
# portupgrade -a (todos)
Para liberar espacio utilizado en actualizaciones
# portsclean -C
Otro proceso para actualizar ports
# cd /usr/ports/sysutils/portmanager
# make install clean
# portmanager -u
Tambien se puede utilizar para instalar ports, y actualiza antes las dependencias.
# portmanager nombre_port
PROXYs
En .cshrc agregar las lineas para proxy
setenv HTTP_PROXY="http://xx.xx.xx.xx:port"
setenv FTP_PROXY="http://xx.xx.xx.xx:port"
MAXUSERS - ???
SECURELEVEL>0
Activar el sistema de control de Kernel, a un nivel mayor a cero. Esto trae limitaciones para la ejecución de demonios y programas, pero nos asegura mayor aislamiento del kernel. Obligatorio en un sistema productivo, en internet y estable.
PORTS
Eliminar la carpeta /usr/ports
desde SYSINSTALL, instalar nuevamente todos los ports. (bajarlos del site via http)
luego whereis "producto" y make, make install para ponerlo al dia.
Tambien se puede usar
portupgrade -ai
para poner todos los productos instalados al dia
CONCLUSIONES FINALES
Cuanto mas aprendo de FreeBsd (de linux no me falta mucho mas para lo que necesito) mas prefiero FreeBsd. Tiene algunas cosas que lo diferencian notoriamente para sistemas productivos.
Como todo sistema operativo, es mejor para determinadas cosas, para lo que necesito ahora mismo, (un demonio visible a internet) que funcione 24 x 365, con alta seguridad y evitando problemas de los usuarios, FREEBSD !
Comentarios