FTP服務器
FTP是File Transfer Protocol 文件傳送協議的英文簡介,用於在Internet上控制文件的雙向傳輸;
FTP的主要作用就是讓用戶連接一個遠程計算機,並查看遠程計算機中的文件,然後把文件從遠程計算機複製到本地計算機,或把本地計算機的文件傳送到遠程計算機;
小公司使用最多,大企業不用FTP,安全問題;
vsftpd搭建FTP服務器
yum install -y vsftpd //安裝vsftpd
useradd -s /sbin/nologin virftp //創建用戶virftp,設置此用戶無法登陸系統;
vim /etc/vsftpd/vsftpd_login //內容如下,奇數行爲用戶名,偶數行爲密碼,多個用戶就寫多行;
代碼內容(第一行爲賬號,第二行爲密碼)
testuser1
123456
chmod 600 /etc/vsftpd/vsftpd_login //賦予文件夾權限爲600
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db //將賬號密碼文件轉化爲機器碼的密碼文件.db
mkdir /etc/vsftpd/vsftpd_user_conf //創建目錄
cd /etc/vsftpd/vsftpd_user_conf //進入目錄
vim testuser1 //新建虛擬用戶testuser1配置文件
代碼:
local_root=/home/virftp/testuser1 //設置目錄爲/home/virftp/testuser1下
anonymous_enable=NO //是否允許匿名用戶
write_enable=YES //是否允許可寫
local_umask=022 //設置umask權限
anon_upload_enable=NO //是否允許匿名用戶上傳
anon_mkdir_write_enable=NO //是否允許匿名用戶可讀寫
idle_session_timeout=600 //會話空閒超時設置爲600秒
data_connection_timeout=120 //數據傳輸的超時時間
max_clients=10 //最大客戶端爲10個
注意:這裏參數後面不要留空格,不然登錄ftp會告錯500;
ls: 登錄失敗: 500 OOPS: bad bool value in config file for: anonymous_enable
mkdir /home/virftp/testuser1 //創建FTP的目錄
touch /home/virftp/testuser1/test.txt //在FTP文件目錄下創建一個文件
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服務
netstat -lntp //查看網絡端口
測試
lftp工具測試
yum install -y lftp //安裝lftp工具
lftp 用戶名@ip //登錄模式
xshell工具登錄
選擇登錄模式爲SFTP模式,端口爲22;
設置好SFTP的接收文件路徑後,使用root用戶登錄,不是使用ftp設置的登錄賬號登錄;