linux邮件服务,如何建立虚拟用户访问ftp?

linux邮件服务,如何建立虚拟用户访问ftp?,第1张

vsftpd配置虚拟用户步骤:

tar vsftpd-2.0.6.tar.gz

修改 builddefs.h

#define VSF_BUILD_PAM

#define VSF_BUILD_SSL

#define VSF_BUILD_TCPWRAPPERS

make &&make install

复制安装目录下的vsftpd.conf到/etc目录

修改 /etc/vsftpd.conf

#------------------------------

ftpd_banner="welcome to Hanqinet FTP!"

listen=YES

listen_port=21

anonymous_enable=NO

local_enable=YES

write_enable=NO

anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

guest_enable=YES

#虚拟帐号对应的系统帐号,名称为ftp

guest_username=ftp

#虚拟用户的配置文件目录,具体配置文件为用户名同名的文件

user_config_dir=/etc/vsftpd/vsftpd_user_conf

#不允许用户更改根目录

#chroot_local_user=YES

#--------------注意

#tcp_wrappers=YES

#pasv_enable=YES

#使用pam验证,对应与 /etc/pam.d/目录下的文件名

pam_service_name=vsftpd.pam

max_clients=500

max_per_ip=10

idle_session_timeout=600

data_connection_timeout=120

connect_timeout=60

accept_timeout=60

#设置ftp使用的端口 和防火墙设置有关

pasv_min_port=30000

pasv_max_port=30999

#-----------------------------

copy安装目录下redhat目录中的vsftpd.pam到/etc/pam.d/

删除/etc/pam.d/vsftpd.pam中的内容,并插入两行内容

#-----------------------------

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

accountrequired /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

#-----------------------------

创建虚拟用户对应的系统帐号 ftp

groupadd ftp

useradd -d /var/ftp -g ftp ftp

chown root:root /var/ftp

#chmod og-w /var/ftp

创建虚拟用户配置目录

mkdir /etc/vsftpd/vsftpd_user_conf

在此目录下生成对应用户名的配置文件

例如:

允许上传、下载、删除

local_root=/var/www/html/#对应目录需要guest用户有访问权限

anon_world_readable_only=NO

write_enable=YES #写权限

anon_upload_enable=YES#开启虚拟用户上传权限

anon_other_write_enable=YES #开启虚拟用户删除权限

anon_mkdir_write_enable=YES #开启虚拟用户写入和创建权限

anon_umask=022

下载、上传,但不能删除

local_root=/var/www/html/

anon_world_readable_only=NO

#写权限

write_enable=YES

#开启虚拟用户上传权限

anon_upload_enable=YES

#开启虚拟用户删除权限

anon_other_write_enable=NO

#开启虚拟用户写入和创建权限

anon_mkdir_write_enable=YES

#开启虚拟用户上传后文件权限,默认文件是700权限,022后变为755权限

anon_umask=022

只下载

local_root=/var/www/html/

anon_world_readable_only=NO

创建虚拟用户数据库/etc/vsftpd/vsftpd_login.db

先创建明文数据文件,格式如下

用户名1

密码1

用户名2

密码2

保存为 vsftp_login.txt

使用db_load生成登录数据库文件

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

如果系统没有db_load文件,可在安装盘的db4-utils-*.rpm中找到

问题,如何删除虚拟用户,修改虚拟用户?

删除vsftpd_login.db重新生成,对于大量ftp用户可使用mysql。

启动vsftpd

/usr/local/sbin/vsftpd /etc/vsftpd.conf &

启动脚本也可以从rpm包中取得

/etc/rc.d/init.d/vsftpd

make /etc/vsftpd

ln -s /etc/vsftpd.conf /etc/vsftpd/vsftpd.conf

ln -s /usr/local/sbin/vsftpd /usr/sbin/vsftpd

在centos5.4上直接编译vsftp出现错误,无法解决,后来干脆用yum直接安装了一个,然后采用系统虚拟用户的方式,也很方便。

方法如下:

yum install vsftpd

安装到 /etc/vsftpd/下,系统自动生成ftp用户,作为匿名登录用户。

我的ftp需求,关闭匿名登录,新增abc用,只允许登录后下载,所以先创建abc用户

adduser -d /home/abc -g ftp -s /sbin/nologin abc

设置abc的ftp登录密码

passwd abc

配置vsftpd.conf,主要内容如下

anonymous_enable=NO

local_enable=YES

write_enable=NO

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO.

dirmessage_enable=YES

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

listen=YES

listen_address=192.168.1.1

listen_port=21

pasv_min_port=30000

pasv_max_port=30999

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

说明: /etc/vsftpd/chroot_list 需手工创建,然后将abc加入其中,确保abc登录后目录被锁定在自己的home中。

windows平台的免费或破解mail服务器有的是,何必费这事?

例如foxmailServer等,免费的一搜有很多森弯,破解版的更多。册卖

Qmail有人做好了Qmail,apache,php,mysql的合集安装包,安州春逗装后一切都好使,比sendmail也强多了啊。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11983556.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存