ftp服务相关配置域管理

rhel6.2

一    基本配置

yum install vsttpd -y

service vsftpd start

id ftp

cat /etc/passwd | grep ftp.其家目录在/var/ftp,默认有pub,匿名用户可使用

建立ftp相应的用户,就是系统用户,然后给密码

getsebool -a | grep ftp

setsebool -p ftp_home_dir on  做完了这一步,系统用户就可以在w7上上传下载了


w7上ftp://192.168.200.1,然后输入,在linux已经建立好的用户即可

或者ftp://aaa:[email protected],其中aaa为用户名,123为密码


如果修改端口号

在  vim  /etc/vsftpd/vsftpd.conf

    在Listen=YES的下一行加上Liste_port=65500

也可以指定某一用户使用ftp  listen_address=能够使用ftp的ip或ip段


二  ftp服务器被动模式

vim /etc/vsftpd/vsftpd.conf

    pasv_enable=YES

    pasv_min_port=10000   自由制定被动模式端口范围

    pasv_max_port=10004

重启服务,设置防火墙

iptables -I INPUT ! -s 192.168.0.0/24 -p tcp -m multiport --dport 21,10000:10004 -j DROP

iptables -L -n


三    匿名用户有权限登录后上传下载

vim /etc/vsftp/vsftpd.conf

    anon_upload_enable=YES

    anon_mkdir_write_enable=YES

    anon_other_write_enable=YES

    anon_umask=022

mv /var/ftp.bak /var/ftp

/etc/init.d/vsftpd restart

有时候处于需要,只允许用户下载,不能够上传和创建文件

cat /etc/passwd | grep ftp   -----> chown ftp:ftp /var/ftp/zoupub

ll -Zd /var/ftp/zoupub

man ftpd_selinux

chcon -R -t pulic_content_rw_t /var/ftp/zoupub

getsebool -a | grep ftp

setsebool -P allow ftpd_anon_write on  (这样匿名用户可以新建文件)


四    系统用户相关配置(牢域机制】

用户只能在自己家目录下访问,必须设置,防止用户跳转目录到其他用户或者根用户

vim /etc/vsftpd/vsftpd.conf

    chroot_local_user=YES

重启服务即可

如果没有牢域机制,系统用户可以通过lftp ip -u aaa,跳转目录


五    黑名单与百名单

需要停用匿名用户mvc /var/bak.ftp /var/ftp

vim /etc/vsftpd/vaftpd.conf

    userlist_deny=NO  把默认的黑名单变为白名单

vim /etc/vsftpd/user_list

    在里面一行一个用户

黑名单 vim /etc/vsftpd/ftpusers

    一行一个用户


六    限速(规定用户带宽)

    在配置文件里面加入 user_config_dir=/etc/vsftpd定义为主目录,因为主目录下修改配置文件,不用修改上下文

echo local_max_rate=8192 > /etc/vsftpd/aaa  限制aaa用户的下载目录为8k

也可以在配置文件下可接受最大的client数目,max_client=100

每个ip最大的client数目  max_per_ip=5

这样有用户使用ftp登录时,会明显感觉速度变慢


七    磁盘配额  (合理分配服务器资源,一般每个用户有两个G就够用)

df -h /home

vim /etc/fstab

    在/home那一行,在default后添加,usrquota,grpquota

mount -o remount /home

mount

cd /home

quotacheck -cumg /home会相应生成两个文件,ls查看

edquota -u aaa指定哦能够胡磁盘容量,并编辑,soft要小于hard

关     quotaoff /home

开     quotaon  /homw

equota -t可以修改磁盘超出后警示,失效的时间



八    缺省用户  (某用户缺少某项功能)

vim /etc/vsftpd/vsfpd.conf


    最后添加user_config_dir=/etc/vsftpd/zou_dir

cd /etc/vsftpd/zou_dir

vim aaa

    write_enable=YES

    cmds_allowed=ABOR,CMD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,DUIT,RNFR,RNTO,SEZE,STOR,TYPE,USER,REST,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST

        file_open_mode=0444

用户不能下载,只能上传,但上传后不能删除


九     虚拟用户(虚拟用户没有id,只能登录,不能使用mail)

关闭networkmanager

在配置文件里面输入

    annoymous_enable=NO  关闭匿名用户

    guest_enable=YES

    guest_username=zou来宾用户名,这是一个目录名,其下为虚拟用户,虚拟用户会映射zou,登录

cd /etc/vsftpd   --->ls

vim zou

    奇数行为用户,偶数行为密码

转换文件数据,先安装db4

在/etc/vsftpd目录下,执行db_load -T -t hash -f /etc/vsftpd/zou /etc/vsftpd/zou.db

ls 见到zou.db 即可

加载文档(做好备份,再加载)

vim /etc/pam.d/vsftpd

    把里面的注释都注释掉

    audo requid pam_userdb.so db=/etc/vsftpd/zou

    account requid pam_userdb.co db=/etc/vsftpd/zou

建立来宾用户 useradd -s /sbin/nologin zou  (来宾用户要与前面设置的一致)

touch /home/zou/zou.test

chmod o+rx /home/zou

设置bool值    getsebool -a | grep ftp

              setsebool -p ftp_connect_db on

                           ftp_home_dir

所有配置后,此时虚拟用户有下载权限,且所有虚拟用户共享一个目录,如果让虚拟用户赫本地用户有相同的权限,修改出配置文件

    virtual_use_local_privs=YES

重启服务即可


十    ftp加密

yum instalol openssl* -y

cd /etc/vsftpd

openssl req -x509 -nodes -day 365 -newkey rsa:1024 -keyout vsftpd.pem -out vsftpd.pem

vim /etc/vsftpd/vsftd.conf

    最后输入ssl_enable=YES

            allow_anon_ssl=YES

            force_local_data_ssl=YES

            force_local_logins_ssl=YES

            ssl_tlsv1=YES

            ssl_sslv2=NO

            ssl_sslv3=NO

            rsa_cert_file=/etc/vsftpd/vsftpd.pem

W7上用flashfxp,sslftp,tlsv1登录,登录接受证书,用大鲨鱼抓包也是加密的,^_^

你可能感兴趣的:(linux,FTP服务器,密码,用户名)