sftp與vsftp配置


sftp與vsftp使用

sftp簡單配置

sftp是ssh內含協議,也就是說只要sshd服務器啟動了,sftp就可使用,不需要額外安裝,它的默認端口和SSH一樣為22。

sftp如何配置

  1. sftp版本需要大於4.8
rpm -qa|grep opensshd  | ssh -V  都可以查看版本信息
  1. 創建用戶組與用戶
groupadd sftpgroup  |創建用戶組
useradd -g sftpgroup -M -s /sbin/nologin sftpuser  |創建sftp用戶,用戶組為sftpgroup。不生成家目錄。
passwd sftpuser |創建密碼
  1. 修改配置文件,啟用sftp
vim /etc/ssh/sshd_config
#Subsystem  sftp    internal-sftp -l INFO -f AUTH   |打開此行,取消注釋

添加以下配置:
Match   user  sftpuser								|sftp用戶名
        ChrootDirectory /home/data/sftp/					|指定sftp遠程共享目錄
        X11Forwarding no
        AllowTcpForwarding no
        ForceCommand internal-sftp -l INFO -f AUTH
		
重啟sshd服務:
systemctl restart sshd

修改sftp目錄權限:
chmod 755 -R /data/sftp
修改屬主屬組:
chown sftpuser:sftpuser -R /data/sftp

現在sftp就配置成功了,可以使用下面命令登錄嘗試:

sftp sftpuser@127.0.0.1

vsfttp安裝配置

安裝vsftp

yum install -y vsftpd pam* db4*
systemctr start vsftpd

配置vsttp

vim /etc/vsftpd/vuser_passwd	|	用來報存虛擬用戶賬號密碼文件
user
passwd

注:單行為賬號,雙行為密碼。不需要隔空行,寫完報存退出。

#生成虛擬用戶口令認證文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd /etc/vsftpd/vuser_passwd.db

#編輯vsftp的PAM認證文件(將文件內所有已存在的注釋掉,新添加下面兩行)
vim /etc/pam.d/vsftpd
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

#建立本地映射用戶並設置宿主目錄權限,所有的FTP虛擬用戶需要使用一個系統用戶,這個系統用戶不需要密碼。

useradd –d /home/vftpsite –s /sbin/nologin vftpuser

編輯主配置文件,並打開虛擬用戶登錄

# cat vsftpd.conf
write_enable=YES
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_user_name=ftpuser
virtual_use_local_privs=NO
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vuser_conf					#虛擬用戶配置文件路徑
ftpd_bammer=Welcome to xxxxxxxx FTP server				#xxx表示名字(可以是公司或者個人)
xferlog_enable=YES 
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_dowmload_enable=YES 
tcp_Lwrappers=NO
setproctitle_enable=YES
1istenport=21
comnect_from_port_20=YES
idle_session_timeout=600 
data_comnection_timeout=120
max_clients=0
max_per_ip=3
local_max_rate=512000
allow_writeable_chroot=YES
修改虛擬用戶配置文件,以限制權限
#admin開啟所有權限
# cat admin 
write_enable=YES
anon_upload_enable=YES 
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO

#為customer_01只開啟上傳權限
# cat customer 01
anon_world_readable_only=YES
write_enable=YES
anon_upload_enable=YES 
virtual_use_local_prius=NO

#為user用戶開啟查看下載權限
# cat user
anon_world_readable_only=NO

重啟服務測試:

systemctl restart vsftpd


#客戶端連接測試:
yum install ftp -y 
ftp 0.0.0.0

配置文件權限說明:

注:只開通上傳權限是不能開啟查看權限的。

#設定根目錄
local_root=/var/data/ftp/develop

# 設定權限,不擁有和代理系統用於同樣的權限
virtual_use_local_privs=NO

#設定寫權限
write_enable=YES

#設定權限:可以上傳文件
anon_upload_enable=YES

#設定權限:不能新建目錄
anon_mkdir_write_enable=NO

#設定權限:不能刪除/重命名文件
anon_other_write_enable=NO

#設定權限:可以瀏覽目錄下的文件
anon_world_readable_only=NO

#設定上傳文件權限
anon_umask=022

#理解虛擬用戶設定權限,vsftp差不多就夠用了

“筆記是為了更好的復制--,”


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM