1. 程式人生 > >2018-05-10 Linux學習

2018-05-10 Linux學習

Linux學習

14.4 exportfs命令

常用選項
-a 全部掛載或者全部卸載
-r 重新掛載
-u 卸載某一個目錄
-v 顯示共享目錄

以下操作在服務端上

    vim /etc/exports   //增加
    /tmp/ 192.168.133.0/24(rw,sync,no_root_squash)
    exportfs -arv      //不用重啟nfs服務,配置文件就會生效

以下操作在客戶端

    mkdir /aminglinux
    mount -t nfs -onolock 192.168.133.130:/tmp /aminglinux
    touch /aminglinux/test.txt
    ls -l !$
    -oremount,nfsvers=3

nfs 服務器不能隨意重啟,需要先卸載

操作過程

服務器端
[root@linux-01 ~]# vim /etc/exports
/tmp/ 192.168.106.0/24(rw,sync,no_root_squash)
[root@linux-01 ~]# exportfs -arv
exporting 192.168.106.0/24:/tmp
exporting 192.168.106.0/24:/home/nfstestdir

客戶端
[root@linux-02 ~]# mount -t nfs -onolock 192.168.106.160:/tmp /mnt
[root@linux-02 ~]# touch /mnt/1122.txt
[root@linux-02 ~]# ls -l /mnt/1122.txt 
-rw-r--r--. 1 root root 0 4月  10 02:58 /mnt/1122.txt

14.5 NFS客戶端問題

客戶端文件屬主屬組nobody

NFS 4版本會有該問題
客戶端掛載共享目錄後,不管是root用戶還是普通用戶,創建新文件時屬主、屬組為nobody
客戶端掛載時加上 -o nfsvers=3
客戶端和服務端都需要
vim /etc/idmapd.conf     //
把“#Domain = local.domain.edu” 改為 “Domain = xxx.com” (這裏的xxx.com,隨意定義吧),然後再重啟rpcidmapd服務

操作過程

客戶端
[root@linux-02 ~]# mount -t nfs -onfsvers=3 192.168.106.160:/tmp /mnt

[root@linux-02 ~]# mount -t nfs -oremount,nfsvers=3 192.168.106.160:/tmp /mnt

15.1 FTP介紹

FTP是File Transfer Protocol(文件傳輸協議,簡稱文傳協議)的英文簡稱,用於在Internet上控制文件的雙向傳輸。
FTP的主要作用就是讓用戶連接一個遠程計算機(這些計算機上運行著FTP服務器程序),並查看遠程計算機中的文件,然後把文件從遠程計算機復制到本地計算機,或把本地計算機的文件傳送到遠程計算機。
小公司用的多,大企業不用FTP,因為不安全

15.2 使用vsftpd搭建ftp服務(上)

centos上自帶vsftpd
yum install -y vsftpd
useradd -s /sbin/nologin virftp
vim /etc/vsftpd/vsftpd_login //內容如下,奇數行為用戶名,偶數行為密碼,多個用戶就寫多行
testuser1
aminglinux
chmod 600 /etc/vsftpd/vsftpd_login
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf

vim testuser1 //加入如下內容
local_root=/home/virftp/testuser1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10

mkdir /home/virftp/testuser1
touch /home/virftp/testuser1/aming.txt
chown -R virftp:virftp /home/virftp
vim /etc/pam.d/vsftpd //在最前面加上
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

vim /etc/vsftpd/vsftpd.conf
將anonymous_enable=YES 改為 anonymous_enable=NO
將#anon_upload_enable=YES 改為 anon_upload_enable=NO
將#anon_mkdir_write_enable=YES 改為 anon_mkdir_write_enable=NO
再增加如下內容
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES
systemctl start vsftpd //啟動vsftpd服務

操作過程

[root@linux-01 ~]# yum install -y vsftpd

[root@linux-01 ~]# useradd -s /sbin/nologin virftp
[root@linux-01 ~]# vim /etc/vsftpd/vsftpd_login
testuser1
aminglinux
user1
aming
[root@linux-01 ~]# chmod 600 /etc/vsftpd/vsftpd_login

[root@linux-01 ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
[root@linux-01 ~]# ls -l /etc/vsftpd/
總用量 36
-rw-------. 1 root root   125 8月   3 2017 ftpusers
-rw-------. 1 root root   361 8月   3 2017 user_list
-rw-------. 1 root root  5030 8月   3 2017 vsftpd.conf
-rwxr--r--. 1 root root   338 8月   3 2017 vsftpd_conf_migrate.sh
-rw-------. 1 root root    33 4月  10 05:23 vsftpd_login
-rw-r--r--. 1 root root 12288 4月  10 05:25 vsftpd_login.db

[root@linux-01 ~]# mkdir /etc/vsftpd/vsftpd_user_conf
[root@linux-01 ~]# cd /etc/vsftpd/vsftpd_user_conf/
[root@linux-01 vsftpd_user_conf]# vim testuser1
local_root=/home/virftp/testuser1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10

[root@linux-01 vsftpd_user_conf]# mkdir /home/virftp/testuser1
[root@linux-01 vsftpd_user_conf]# touch /home/virftp/testuser1/aming.txt
[root@linux-01 vsftpd_user_conf]# chown -R virftp:virftp /home/virftp
[root@linux-01 vsftpd_user_conf]# vim /etc/pam.d/vsftpd
添加以下兩行在開始位置
#%PAM-1.0
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

[root@linux-01 vsftpd_user_conf]# vim /etc/vsftpd/vsftpd.conf
將anonymous_enable=YES 改為 anonymous_enable=NO
將#anon_upload_enable=YES 改為 anon_upload_enable=NO 
將#anon_mkdir_write_enable=YES 改為 anon_mkdir_write_enable=NO
再增加如下內容
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES

[root@linux-01 vsftpd_user_conf]# systemctl start vsftpd
[root@linux-01 vsftpd_user_conf]# ps aux |grep vsftpd
root      13671  0.0  0.0  53212   572 ?        Ss   05:42   0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root      13674  0.0  0.0 112676   980 pts/0    R+   05:44   0:00 grep --color=auto vsftpd
[root@linux-01 vsftpd_user_conf]# netstat -lnpt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:35851           0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      11434/rpc.mountd    
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      965/nginx: master p 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      931/sshd            
tcp        0      0 0.0.0.0:34360           0.0.0.0:*               LISTEN      11421/rpc.statd     
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1243/master         
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      965/nginx: master p 
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::20048                :::*                    LISTEN      11434/rpc.mountd    
tcp6       0      0 :::33620                :::*                    LISTEN      -                   
tcp6       0      0 :::21                   :::*                    LISTEN      13671/vsftpd        
tcp6       0      0 :::22                   :::*                    LISTEN      931/sshd            
tcp6       0      0 ::1:25                  :::*                    LISTEN      1243/master         
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
tcp6       0      0 :::33702                :::*                    LISTEN      11421/rpc.statd

15.3 使用vsftpd搭建ftp服務(下)

測試ftp

yum install -y lftp
lftp [email protected]
執行命令ls,看是否正常輸出
若不正常查看日誌/var/log/messages和/var/log/secure
windows下安裝filezilla客戶端軟件,進行測試

操作過程

[root@linux-01 ~]# lftp [email protected]
口令: 
lftp [email protected]:~> ls      
-rw-r--r--    1 1004     1004            0 Apr 09 21:32 aming.txt

2018-05-10 Linux學習