设为首页 收藏本站
查看: 2085|回复: 0

[经验分享] vsftp和nfs服务

[复制链接]

尚未签到

发表于 2017-10-31 15:48:43 | 显示全部楼层 |阅读模式
sftpd服务  命令端口21 独立服务  由xinetd管理的是非独立服务

主配置文件:/etc/vsftpd/vsftpd.conf
            /usr/sbin/vsftpd   ftp服务的主程序


   yum install vsftpd
systemctl start  vsftpd
systemctl enable vsftpd开机自启动
// 注意防火墙 iptables -F 和 selinux->gentenment

ftp ip地址进行地址访问

进行家目录的修改:
  centos7
     cd /app
     mkdir ftpsite
    usermod -d /app/ftpsite ftp
    getent passwd ftp 查看家目录修改成功
    cd ftpsite touch a
centos6 : ftp ip地址 ftp magedu ls查看

#ps aux|grep vsftpd 筛选vsftpd服务
#ps -eF查看父子进程

查看vsftpd的配置文件:  
        cd /etc/vsftpd
        cat vsftpd.conf
        grep -v '^#' vsftpd.conf 筛选
        ss -ntl 查看端口

修改vsftpd的配置文件
        vim /etc/vsftpd/vsftpd.conf
        修改监听的端口:
            vim vsftp.conf
               liste_port=9527

            ftp_data_port=2222 主动端口
            service start vsftpd

链接测试: ftp 192.168.37.104 9527 指定端口
ftp -A ip地址 默认主动模式

主动模式端口 : 数据端口20
被动模式端口 :数据端口随机  
ftp>
     passive 进行模式的切换

默认ftp链接为被动模式
匿名链接
          cd /var/ftp/pub
          dd if=/dev/zero of=f1 bs=1M count=1024 设个文件
  ftp 192.168.37.107

vim vsftpd.conf
anonymous_enable=NO 不允许匿名登录

设置acl:
    setfacl -m u:ftp:rwx /var/ftp 加权限
    se tfacl -x u:ftp:rwx /var/ftp 减权限

echo -e '\e[5;1;31mupload dir\e[0m' > .message  设置颜色并重定到指定的文件中
ctrl+v +[ =^[

PAM模块
        /etc/pam.d/vsftpd  pam的配置文件
        /etc/vsftpd/ftpusers 拒绝的用户设置文件
        /etc/vsftpd/ftpusers/user_list root拒绝


#useradd magedu 创建用户
//    echo "passwd"|passwd --stdin username 设置密码
#echo "magedu"|passwd --stdin magedu

#echo -e '\e[33mupload dir\e[0m' 设置字体颜色
#echo -e '\e[1;33mupload dir\e[0m'高亮显示颜色
#echo -e '\e[5;1;33mupload dir\e[0m' 高亮闪烁显示字体颜色
#echo -e '\e[5;1;33mupload dir\e[0m' > .message 可重定向到文件中





实验:实现基于db文件验证的ftp虚拟用户  
        cd /etc/vsftpd
        vim fpusert.txt 存放虚拟账户
         ftp1
         centos1
         ftp2
         centos2
         ftp3
         centos3
         db_load -T -t hash -f ftpuser.txt ftpuser.db 转换为db格式
         chmod 666 ftpuser.db
         useradd -s /sbin/nologin   -r  -m -d /app/ftpsite ftpuser  系统账户
         cd /etc/vsftpd   
         cd /etc/pam.d   验证用户身份
         vim vsftpd.db
         ppt上
         ftpuser
         vim vsftpd.conf

          pam_service_name=vsftpd.db
          guset_username=ftpuser
          guest_enable=YES
          user_config_dir=/etc/vsftpd/conf.d
         cd /app/ftpsite
         touch ftp
         chomd -w /app/ftpsite
         chmod 555 /app/ftpsite
         cd /app/ftpsite
         mkdir upload
         chmod ftpuser upload
         mkdir /etc/vsftpd/conf.d
         cd /etc/vsftpd/conf.d
         vim ftp1可以上传并创建文件夹

            anon_upload_enable=yes
            anon_mkdir_write_enable=yes
         cd /app
         mkdir ftpsite2
         mkdir ftpsite3
         touch ftpsite2/ftpsite2
         touch ftpsite3/ftpsite3
         chmod -w *
         cd  /etc/vsftpd/conf.d
           vim ftp2
             local_root=/app/ftpsite2
           vim ftp3
             local_root=/app/ftpsite3
              anon_upload_enable=yes
              anon_mkdir_write_enable=yes
         cd ftpsite3
         mkdir up
         chown ftpuser up
         cd ftpsite2
         mkdir up
         chown ftpuser up

         systemctl restart  vsftpd
101:测试
       ftp 192.168.223.166
            ftp1
            cd upload
            put f1.txt







实验:实现基于mysql的ftp虚拟用户
过程如下:

环境:两台主机,一台A:mairadb server 101  一台B ftp server 107  客户端106

1 A:安装mariadb  yum install mariadb-server
                 syatemctl strat mariadb
                  mysql_secure_insatll_db
mysql -uroot -pcentos
   create database vsftpd;
   use vsftpd
   create table ftpusers(name char(30),pass char(50));
   insert ftpusers values('ftp1',password('centos')),('ftp2',password('magedu'));
   grant select on vs ftpd.ftpusers to 'ftp'@'192.168.37.107' identified by 'centos';

2 B:
yum install vsftpd
下载pam_mysql的bap
rz
tar xvf pam_mysql-0.7rcl.tar.gz
yum insatll pam_mysql
yum groupinstall "development tools"
yum install mariadb-devel pam-devel
cd pam_mysql-0.7
./configure --with-pam-mods-dir=/lib64/security --with-pam=/usr
make  && make install

useradd -d  /app/ftpdir -r -m ftpuser
chmod -w /app/ftpdir
3 B
vim /etc/pam.d/vsftpd.mysql
auth required pam_mysql.so user=ftp passwd=centos host=192.168.37.101 db=vsftpd table=ftpusers usercolumn=name passwdcolumn=pass crypt=2
account required pam_mysql.so user=ftp passwd=centos host=192.168.37.101 db=vsftpd table=ftpusers usercolumn=name passwdcolumn=pass crypt=2

4 B
vim /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd.mysql 修改
加下面行
guest_enabl e=yes
guest_username=ftpuser
user_config_dir=/etc/vsftpd/conf.d/

mkdir /etc/vsftpd/conf.d/
vim  /etc/vsftpd/conf.d/ftp1
anon_upload_enable=yes

vim  /etc/vsftpd/conf.d/ftp2
local_root=/app/ftpdir2

5 B
mkdir  /app/ftpdir/
chmod 555 /app/ftpdir
cd /ftpdir
touch f1
mkdir up
chown ftpuser up

mkdir /app/ftp2
chmod 555 /app/ftpdir2
cd /ftp2
touch f2
mkdir up
chown ftpuser up

106测试:  ftp 192.168.37
             ftp1
          ftp 192.168.37
             ftp2



centos7
先实现自签证书:cd /etc/pki/tls/certs
                make vsftpd.pem
                 CN
                 henan
                 zhengzhou
                 magedu
                 opt
                 magedu.com
                mv vsftpd.pem /etc/vsftpd            
                vim /etc/vsftpd/vsftpd.conf
                 ppt上
                systemctl restart vsftpd
101:测试  ftp 192.168.223.166



ftp工具
axel 下载安装 centos6
    yum insatll axel-2.4-1.e16.rf.x86_64.rpm
    rpm -ql  axel
    service vsftpd start
    cd  /var/www/html
    dd if=/dev/zero of=f1 bs=1M count=1024
    mv f1 /var/ftp/pub

107 axcel -n 10 -o ftp://192.168.37.106/pub/f1  并行下载
    wget ftp://192.168.37.106/pub/f1  并行下载

NFS服务:



实验:基于NFS的LAMP

NFS: 端口不固定 依赖于fpcbind(存放nfs的端口号)
实现简单共享:centos7

# yum install nfs-utils安装包
service rpcbind start
service nfs start   (centos6)  systemctl start nfs-server (centos7)
chkconfig nfs on 开机自启动 (centos6) systemctl enable nfs-server 开机自启动(centos7)
rpcinfo -p 可查看nfs的端口
107:
创建共享文件夹:
    mkdir /app/nfsdir1
    mkdir /app/nfsdir2
    vim /etc/exports
      /app/nfsdir1 * (ro)
      /app/nfsdir2 * (rw,no_root_squash不压榨)// (,all_squash) 压榨nobady,加上后no失效
       anonuid=1002,anongid=1002)指明用户映射为特定的用户UID和GID// 也就是当创建用户时默认
       所属人,所属组为指定的用户的
   systenctl reload nfs-servert
   exportfs -v 查看是否共享出去
   exportfs -r  不用重新加载服务,可以直接进行文件共享
   exportfs -au 临时关闭共享

101:测试
   showmount -e 192.168.37.107
   mkdir /mnt/nfs1
   mkdir /mnt/nfs2
   mount 192.168.37.107:/app/nfsdir1 /mnt/nfs1 临时挂载
vim /etc/fstab 写进文件实现永久挂载
192.168.37.107:/app/nfsdir1 /mnt nfs defaults 0 0 ; mount -a  
   mount 192.168.37.107:/app/nfsdir2 /mnt/nfs2
   df查看
   cd /mnt/nfs1;  touch xx
   cd /mnt/nfs2;  touch f1
107:   
   chmod 777 /app/nfsdir2
setfacl -m u:nfsnobody:rwx /app/nfsdir2 设置权限
showmount -e 192.168.223.167 查看该虚拟机是否有共享文件

rpcbind.service 依赖于 rpcbind.socket
systemctl stop rpcbind.socket  rpcbind.service也将停止


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-406306-1-1.html 上篇帖子: 配置Vsftpd下的虚拟用户 下篇帖子: 实现基于文件验证的vsftpd 虚拟用户
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表