1. 程式人生 > >exportfs命令、NFS客房端問題、ftp

exportfs命令、NFS客房端問題、ftp

chroot 不能 保持 寫入 雙向 掛載 配置文件 ins gin

一、exportfs命令

用處:

NFS不能隨便重啟,會讓客戶機進程異常,只有先讓客戶端把nfs的共享目錄取消掛載。
但exportfs 可以服務器上
-a 全部掛載或全部卸載
-r 重新掛載
-u 卸載某一個目錄
-v 顯示共享目錄
執行exportfs -arv 我們修改完服務器上的配置文件後,就會生效,不用關閉nfs服務
例:
我們在服務端上的exportts配置文件上增加一行配置
vi /
/tmp/192.168.1.12/24(rw,sync,no_root_squash)
然後用exportfs -arv 命令重新加載配置文件。

二、NFS客戶端問題屬主屬組為nobody

1?在cenos6上會遇到,在NFS 4版本會有該問題。

客房端掛載共享目錄後,不管是root用戶還是普通用戶,創建新文件時屬主、屬組為nobody
2、解決方法:
2.1客戶端掛載成3版本:-o nfsvers=3
例: mount -t nfs -o nfsvers=3 192.168.1.12:/tmp/ /mnt/

2.2 服務跟客房端都需要
編輯: vim /etc/idmapd.conf
把"#Domain =local.domain.edu" 改為 “Domain = xxx.com" (xxx.com隨意定義)然後再重啟rpcbind服務。

三、ftp介紹

1?ftp是file transfer protocol(文件傳輸協議)英文簡稱,用於在internet上控制文件的雙向傳輸。

2?ftp主要作用就是讓用戶連接一個遠程計算機。並查看遠程計算機中的文件,然後把文件從遠程計算機復制到本地計算機,或把本地文件傳到遠程計算機上。
3?小公司用的多,大公司不用ftp,因為不安全,一般他們用自動化發布平臺。

四、使用vsftpd搭建ftp服務

1?cenos 上自帶vsftpd,
用yum安裝它:yum install -y vsftpd
2、創建普通用戶,(為了安全給ftp設置虛擬用戶,把它映射成系統用戶)
useradd -s /sbin/nologin vipftp //-s 指定shell
3、編輯虛擬用戶的密碼文件:
vim /etc/vsftpd/vsftpd_login
格式為:奇數行為用戶名,偶數行為密碼

vipftp
a1234533
ftp2
b123445
4?把密碼文件授權成600,(因為密碼文件安全問題)
chmod 600 /etc/vsftpd/vsftpd_login
5、把密碼文件轉換成二進制文件
db_load -T -t hash -f /etc/vsftpd/vsftpd_login
查看:ls -l /etc/vsftpd 是否生成一個後綴為db的文件:vsftpd_login.db
6、創建虛擬用戶配置文件所在的目錄
mkdir /etc/vsftpd/vsftpd_user_conf
在目錄創建配置文件:(它的名字要求和用戶名保持一置)
vim ftp1 //輸入以下內容

local_root=/home/vipftp/ftp //定義虛擬用戶的家目錄
anonymous_enable=NO //是否允許匱名用戶=no
write_enable=YES //是否可寫=yes
local_umask=022 //定義創建新文件時的權限
anon_upload_enable=NO //是否允許匱名用戶可上傳no
anon_mkdir_write_enable=NO //是否允許匱名用戶創建目錄並寫入=no
idle_session_timeout=600 //連接ftp後空閑時間600s
data_connection_timeout=120 //數據傳輸的越時時間120s
max_clients=10 //最大連接用戶數多少

7?創建虛擬用戶家目錄 mkdir /home/vipftp/ftp
然後在裏面建一個文件:touch /home/vipftp/ftp/2018.txt
8、修改家目錄的權限: chown vipftp:vipftp /home/vipftp
9、定義我們的密碼文件在哪:(編輯認證文件)
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
10?編輯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=vipftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES
systemctl start vsftpd //啟動vsftpd服務

11?啟動:systemctl start vsftpd
查看:ps aux |grep vsftpd
netstat -lntp

exportfs命令、NFS客房端問題、ftp