ネットワークファイル共有サービス


  :      CentOS     ,    FTP   ,         
**  :    mysql   vsftpd    **
 、         :
           :
•Centos7:          
yum –y install mariadb-server
systemctl start mariadb.service
systemctl enable mariadb
•Centos6:          
yum –y install mysql-server
 FTP      vsftpd pam_mysql 
centos6:pam_mysql epel6     
yum install vsftpd pam_mysql
centos7:   rpm ,       
yum -y groupinstall "Development Tools"
yum -y install mariadb-devel pam-devel vsftpd
  pam_mysql-0.7RC1.tar.gz
ftp://172.16.0.1/pub/Sources/sources/pam/
tar xvf pam_mysql-0.7RC1.tar.gz
cd pam_mysql-0.7RC1/
./configure --with-mysql=/usr --with-pam=/usr
--with-pam-mods-dir=/lib64/security
make
make install
 、                
# 1.                    
mysql> CREATE DATABASE vsftpd;
mysql> SHOW DATABASES;
ftp   mysql      :
mysql> GRANT SELECT ON vsftpd.* TO
vsftpd@'172.16.%.%' IDENTIFIED BY 'magedu';
ftp   mysql     :
mysql> GRANT SELECT ON vsftpd.* TO
vsftpd@localhost IDENTIFIED BY 'magedu';
mysql> GRANT SELECT ON vsftpd.* TO
vsftpd@'127.0.0.1' IDENTIFIED BY 'magedu';
mysql> FLUSH PRIVILEGES;

# 2.     
mysql> USE vsftpd;
Mysql> SHOW TABLES;
mysql> CREATE TABLE users (
id INT AUTO_INCREMENT NOT NULL PRIMARY KEY,
name CHAR(50) BINARY NOT NULL,
password CHAR(48) BINARY NOT NULL
);
mysql>DESC users;
    
mysql -uvsftpd -h 172.16.200.200 -pmagedu
mysql> SHOW DATABASES;

# 3.      
            ,        PASSWORD          
mysql>DESC users;
mysql> INSERT INTO users(name,password) values(‘wang',password('magedu'));
mysql> INSERT INTO users(name,password) values(‘mage',password('magedu'));
mysql> SELECT * FROM users;
 、 FTP      vsftpd  
# 1. FTP      pam      
vi /etc/pam.d/vsftpd.mysql       
auth required pam_mysql.so user=vsftpdpasswd=magedu host=mysqlserver db=vsftpd table=usersusercolumn=name passwdcolumn=password crypt=2
account required pam_mysql.so user=vsftpdpasswd=magedu host=mysqlserver db=vsftpd table=usersusercolumn=name passwdcolumn=password crypt=2
  :  README  ,         
crypt     ,0     ,1  crypt(3)  ,2    mysql password()    ,3  md5  ,4  sha1  

      :
auth     
•account           
•required        
•pam_mysql.so          ,   /lib64/security/    ,        ;            
•user=vsftpd   mysql   
•passwd=magedu   mysql    
•host=mysqlserver mysql        ip  
•db=vsftpd     msyql      
•table=users            
•usercolumn=name         
•passwdcolumn=password           
•crypt=2         mysql password()    

# 2.         vsftpd    ,    mysql  
                   
useradd -s /sbin/nologin -d /var/ftproot vuser
chmod 555 /var/ftproot centos7    ftp       
mkdir /var/ftproot/{upload,pub}
setfacl –m u:vuser:rwx /var/ftproot/upload
  /etc/vsftpd.conf          
anonymous_enable=YES
      
guest_enable=YES
guest_username=vuser
      ,         
pam_service_name=vsftpd.mysql
 、  vsftpd  
service vsftpd start;systemctl start vsftpd
chkconfig vsftpd on;systemctl enable vsftpd
        
netstat -tnlp |grep :21
 、Selinux    : FTP      
•restorecon -R /lib64/security
•setsebool -P ftpd_connect_db 1
•setsebool -P ftp_home_dir 1
•chcon -R -t public_content_rw_t /var/ftproot/
 、  :  FTP     ,           
•tail /var/log/secure
    
   autofs     NFS  ,        
 autofs   
        /etc/auto.master               
                       
            5        
          NFS       -host  “browse”
    :man 5 autofs
          
* server:/export/&

      autofs     

yum  install  autofs

       /etc/auto.master

/dev/cdrom /misc/cd

vim /etc/auto.master 

1      
    :/d1/d2/d3/nfsdir2
   
dirname   /d1/d2/d3
basename   nfsdir2

vim /etc/auto.master    dirname(      )
 /d1/d2/d3  /etc/nfsmount(   basename    )

vim /etc/nfsmount     basename(        )
nfsdir2  -fstype=nfs,vers=3  192.168.27.7:/app/nfs2

   /misc/cd           
vim  /etc/auto.misc
   cd  -fstype=iso9660,ro  :/dev/cdrom   

  :dirname basename        ,  autofs      dirname,  basename           

2      :            ,          (home            )
vim /etc/auto.master 
/-  /etc/wanghome

vim /etc/wanghome
/home/wang -fstype=nfs,rw  192.168.27.7:/data/wanghome   home    mage        
          nfs     
vim /etc/exports.d/nfs.exports
data/wanghome *(rw)

setfacl -m u:wang(uid 1000):rwx /data/wanghome

cp /etc/skel/.[^.]* /data/wanghome/

useradd -u 500 nfsuser -M              

setfacl -m u:500(nfsuser):rwx /data/wanghome    uid  

     

      : 

mount 192.168.27.7:/data/wanghome /home/wang
su - wang(uid 1000)
su - mage(uid 500)

         uid    

autofs      :

vim /etc/auto.master
dirname=/home 
/home   /etc/wanghome        :home        /etc/wanghome      

vim /etc/wanghome
wang -fstype=nfs,rw  192.168.27.7:/data/wanghome 

nfsサービス:擬似ルート方式複数の異なるフォルダをルートディレクトリに整理する
nfs     

yum  install   nfs-utils
mkdir /nfsroot/nfsdir{1,2,3} –pv      
 
mkdir /app/data{1,2,3} –pv          
  :
mount –B /app/data1 /nfsroot/nfsdir1/
mount  -B /app/data2 /nfsroot/nfsdir2/
mount –B /app/data3 /nfsroot/nfsdir3/
nfs      nfsnobody     
setfacl -m u:nobody:rwx /app/data2  
exportfs –r
exportfs -v
 
vim  /etc/exports
/nfsroot                *(fsid=0,ro,crossmnt)
/nfsroot/nfsdir1        *(ro)
/nfsroot/nfsdir2        192.168.64.103(rw)    192.168.64.103                                                     
/nfsroot/nfsdir3        *(rw)
systemctl restart nfs-server
 
     
  :nfs              :         
mkdir /mnt/nfs
mount 192.168.64.7:/  /mnt/nfs       ,                                                      192.168.64.7:/nfsroot     
![](https://s1.51cto.com/images/blog/201802/04/fd93a63616583f7063d30d30a26b1bdc.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)