Red de conocimiento informático - Problemas con los teléfonos móviles - www777abcdcom

www777abcdcom

FTP no es seguro y sólo debe utilizarse como último recurso.

vsftp tiene una seguridad relativamente buena

Se puede usar SFTP en lugar de FTP

Otro FTP comúnmente utilizado en Linux:

proftp

vsftp

pureftp

A continuación se toma VSFTP como ejemplo:

Método de instalación uno: instalación del paquete fuente

useradd -s / bin/false -d /var/ftp ftpvirtual

cd ......

make

make install

cp vsftpd .conf /etc

/usr/local/sbin/vsftpd amp; #Start

Método de instalación dos: instalación rpm, recomendado

rpm -ivh vsftpd- 2.0.1-5.i386.rpm

o yum install vsftpd

/etc/init.d/vsftpd start

Después de los dos Los métodos están instalados. Los métodos de configuración son los mismos. Comencemos con la configuración.

Primero, hablemos de las configuraciones comunes del archivo de configuración principal

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=NO #El inicio de sesión anónimo está prohibido

local_enable=NO #Prohibir que los usuarios locales inicien sesión

write_enable=YES #Permisos de escritura para usuarios locales

local_umask=022 #Máscara de generación de archivos de usuario local

dirmessage_enable=YES #Mostrar archivos ocultos

xferlog_enable=YES #Habilitar registros de carga y descarga

connect_from_port_20=YES #El servidor habilitará las solicitudes de conexión para los datos FTP port

xferlog_std_format=YES #El servidor utilizará el formato de registro estándar ftpd xferlog

pam_service_name=vsftpd #Establezca el nombre del archivo de configuración del servicio de autenticación PAM

userlist_enable=YES #Establece si el usuario especificado en el archivo puede acceder al servidor vsftpd

listen=YES #El servidor FTP estará en modo de inicio independiente

tcp_wrappers=YES #Usa tcp_wrappers como host método de control de acceso

chroot_local_user=YES #Bloquear usuarios locales FTP en el directorio host

chroot_list_enable=YES #Bloquear usuarios en el directorio host

listen_address=192.168 .0.2 #Dirección de escucha

pasv_enable=YES #Si se permite el uso del modo pasivo, el valor predeterminado está permitido.

pasv_min_port=10000 #Especificar el valor mínimo del puerto abierto cuando se usa el modo pasivo

pasv_max_port=10004 #Especificar el valor máximo del puerto abierto cuando se usa el modo pasivo.

max_clients=100 #Establece el número máximo de conexiones de clientes permitidas por el servidor FTP. Un valor de 0 significa que no hay límite.

max_per_ip=5 #El número máximo de conexiones de clientes permitidas. por el mismo número de dirección IP, un valor de 0 significa sin límite, es decir, hilo

local_max_rate=500000 #Establezca la velocidad de transmisión máxima de los usuarios locales en bytes/seg, un valor de 0 significa que no. limit

anon_max_rate=200000 #Establece la velocidad máxima de transmisión de usuarios anónimos, en bytes/seg, un valor de 0 significa que no hay límite

use_localtime=YES #El valor predeterminado de tiempo en vsftp es la hora GMT explícita. Por lo tanto, encontraremos que la hora anterior es ocho horas diferente de la hora en la que depositamos y retiramos. Sólo cambia este.

listen_port=10021 Cambiar el puerto

one_process_model=NO sí puede aumentar el rendimiento, aumentar la carga y reducir la seguridad. Se recomienda NO

nopriv_user=nadie. se ejecuta como nadie de forma predeterminada vsftp

Para servicios externos, se recomienda iniciar en modo independiente para un buen rendimiento.

Solo para personal interno, se recomienda utilizar super demonio para iniciar, modificar de la siguiente manera:

listen=NO

...omitido

vsftp se usa como hora GMT predeterminada, se recomienda modificarlo de la siguiente manera:

use_localtime=YES

/etc/vsftpd.ftpusers #Guardar cuentas de usuario locales que no permita el inicio de sesión FTP para mejorar la seguridad del sistema

/etc/vsftpd.user_list

#Desactivar usuarios en vsftpd.user_list

userlist_enable=YES

userlist_deny=YES

#Solo permitir usuarios en vsftpd.user_list

userlist_enable=YES

userlist_deny=NO

Registrar:

vsftpd_log_file=/ var/log/vsftpd.log

Comencemos con los cuatro métodos de “autenticación de usuario” de vsftp

1 Usuario anónimo ftp anónimo<. /p>

/var/ftp Directorio de inicio predeterminado

En /etc/vsftpd/vsftpd.conf:

anonymous_enable=YES

anon_upload_enable=YES

anon_other_write_enable= SÍ #Se puede eliminar

chmod -R 777 /var/ftp/pub/

Modificar los permisos SELinux de /var/ftp/pub

Ejecute el siguiente comando, Modifique el tipo de directorio /var/ftp/pub:

chcon -R -t ftpd_anon_rw_t /var/ftp/pub/

anon_root=/var/www/html/ftp # Cambiar el directorio de inicio de usuarios anónimos

2. Usuarios locales

Soportados de forma predeterminada y usan sus propios directorios de inicio.

Inseguro

local_root=/opt #Agregar este elemento y cambiarlo a otra ruta

3. Método recomendado para el archivo PAM de usuario virtual

Establecer biblioteca de contraseñas de usuario virtual. archivo

# cat logins.txt

mike

pwabcd

john

pw1234

Generar archivo de autenticación vsftpd

db_load -T -t hash -f logins /etc/vsftpd/vsftpd_login.db

chmod 600 /etc/vsftpd/vsftpd_login.db

Se requiere un archivo de configuración PAM para crear un nuevo usuario virtual

cat /etc/pam.d/vsftpd.vu

se requiere autenticación /lib/security/pam_userdb. =/etc/vsftpd/vsftpd_login

cuenta requerida /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

El usuario del sistema del usuario virtual recién creado debe acceda al directorio y establezca los permisos correspondientes

# useradd -s /bin/false -d /home/ftpsite ftpvirtual

# chmod 700 /home/ftpsite

# Configure el archivo de configuración vsftpd.conf para admitir usuarios virtuales

guest_enable=YES

guest_username=ftpvirtual

pam_service_name=vsftpd.vu

user_config_dir =/etc/vsftpd/vsftpd_user_conf #Agregar configuración del directorio del archivo de configuración del usuario

/etc/vsftpd/vsftpd_user_conf/mike (mismo nombre), las configuraciones que no se encuentren aquí se ejecutarán de acuerdo con la configuración de vsftpd. conf por defecto

anon_world_readable_only=NO #Puede explorar directorios FTP y descargar archivos

anon_upload_enable=YES #Los usuarios pueden cargar archivos, lo que equivale a write_enable=yes para permitir la carga

anon_mkdir_write_enable=YES #Tiene la capacidad de crear y el derecho a eliminar directorios

anon_other_write_enable=YES #Tiene el permiso para cambiar el nombre y eliminar archivos

local_root=/data/ espacio de usuario #Establece el directorio de inicio del usuario virtual después de iniciar sesión

anon_max_rate=1024000 #En bytes/s, esto está limitado a 8 Mbit y el rango es de aproximadamente 80 a 120

IV Método de autenticación de MySQL recomendado para usuarios virtuales

1. MySQL Para la instalación, consulte las notas de MySQL

2.1 openssl-0.9.8e Cuando el programa fuente está precompilado, aparece el error md5.h ". Presente pero no se puede compilar" puede aparecer en el registro. La desinstalación de algunos de los siguientes paquetes puede resolver el problema.

cyrus-sals-sql cyrus-sasl-ntlm cyrus-sasl-gssapi cyrus-sasl-devel openldap-devel

Luego elimina los que puedan venir con el sistema:

mv /usr/bin/openssl /usr/bin/openssl.OFF

mv /usr/include/openssl /usr/include/openssl.OFF

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

ln -s /usr/local/ssl/include/openssl /usr/include/openssl

Ruta de búsqueda del archivo de la biblioteca de configuración

#echo "/usr/local/ssl/lib" gt;gt; /etc/ld.so.conf

#ldconfig -v

2.2 O instale el paquete rpm de openssl-0.9.8e

3 pam_mysql-0.7RC1.tar.gz

#./configure --with-mysql. =/usr /local/mysql --with-openssl=/usr/local/ssl

Si mysql se instala mediante rpm, no hay ningún parámetro --with-mysql. Si openssl se instala mediante rpm, el parámetro es - -with-openssl

make; make install

Preste atención a la ruta pam_mysql.so, que puede ser /usr/lib/security/pam_mysql.so o / lib/security/pam_mysql.so

vi /etc/pam.d/vsftp.mysql #Nuevo, solo dos líneas

se requiere autenticación /lib/security/pam_mysql.so user= vsftpd passwd=123456 host=localhost db =vsftp table=usuarios usercolumn=nombre passwdcolumn=passwd crypt=2

cuenta requerida /lib/security/pam_mysql.so usuario=vsftpd passwd=123456 host=localhost db= vsftp table=usuarios usercolumn=name passwdcolumn =passwd crypt=2

4.0 Preparar base de datos, tablas y datos

mysqlgt; crear base de datos vsftp;

mysqlgt; seleccione en vsftp.* a vsftpd@ localhost identificado por '123456';

mysqlgt; conceda selección en vsftp.* a vsftpd@127.0.0.1 identificado por '123456';

mysqlgt ; usar vsftp;

mysqlgt; crear usuarios de tabla (

-gt;

id int AUTO_INCREMENT NOT NULL,

-gt; nombre char(20) binario NOT NULL,

-gt passwd char(48) binario NOT NULL,

-gt; clave primaria(id)

-gt;

mysqlgt; insertar en usuarios(nombre, contraseña) valores('hlc', contraseña('hlc') );

mysqlgt; insertar en usuarios(nombre, contraseña) valores('holly', contraseña('holly'));

5.0 Modificar el archivo de configuración principal

vi /etc/vsftpd/vsftpd.conf

guest_enable=YES

guest_username=vsftp

listen=YES

pam_service_name = vsftpd.mysql

Lo anterior ha completado la configuración de vsftp. Lo siguiente es un complemento:

dirmessage_enable=YES #Establezca el mensaje de bienvenida para crear un .message en cada directorio y escribe el mensaje de bienvenida.

paquete de soporte db_load (los tres primeros son suficientes):

db4

db4-devel

db4-utils

db4-java

db4-tcl

Linux recomienda desactivar selinux o no imponer ninguna seguridad en FTP

setsebool -P -ftpd_disable_trans on

p>

setsebool -P -allow_ftpd_full_access on

reinicio del servidor vsftpd

O necesitas reiniciar el servidor

Los códigos numéricos que aparecen en FTP El acceso se enumera a continuación.

110 Reiniciar marcar respuesta.

120 ¿En cuánto tiempo estará listo el servicio?

El puerto de enlace de datos 125 está abierto y listo para la transmisión.

150 El estado del archivo es normal y el puerto de datos está abierto.

200 El comando se ejecutó exitosamente.

202 Error en la ejecución del comando.

211 Estado del sistema o respuesta de ayuda del sistema.

212 El estado del directorio.

213 El estado del archivo.

214 Mensaje de ayuda.

215 Tipo de sistema de nombres.

220 Nuevo servicio online listo.

El puerto de control del servicio 221 está cerrado y puedes cerrar sesión.

225 El enlace de datos está abierto, pero no hay acción de transmisión.

226 El puerto de datos está cerrado y la operación del archivo solicitado es exitosa.

227 Entra en modo pasivo.

230 Inicio de sesión de usuario.

250 ​​​​Se completa la operación del archivo solicitado.

257 Muestra el nombre de la ruta actual.

331 El nombre de usuario es correcto, se requiere contraseña.

332 Se requiere información de la cuenta al iniciar sesión.

350 La operación solicitada requiere un comando adicional.

421 No se puede proporcionar servicio, cerrar enlace de control.

425 No se puede abrir el enlace de datos.

426 Cerrar la conexión y finalizar la transmisión.

450 No se realizó la operación solicitada.

451 Comando finalizado: Hubo un error local.

452 Comando no ejecutado: Espacio en disco insuficiente.

Error de formato 500, no se puede reconocer el comando.

501 Error de sintaxis de parámetros.

502 Error en la ejecución del comando.

503 Secuencia de comando incorrecta.

504 Los parámetros recibidos por el comando son incorrectos.

530 No iniciado sesión.

532 Se requiere iniciar sesión en la cuenta para guardar archivos.

550 No se realizó la operación solicitada.

551 El comando solicitado terminó con un tipo desconocido.

552 El archivo solicitado se finalizó y el espacio de almacenamiento se desbordó.

553 El comando solicitado no se ejecutó y el nombre es incorrecto.