FTP在CentOS上安裝與使用

2021-09-07 14:23:42 字數 4955 閱讀 3719

安裝:

yum install -y vsftpd

/etc/vsftpd/vsftpd.conf //主配置檔案,核心配置檔案

/etc/vsftpd/ftpusers //黑名單,這個裡面的使用者不允許訪問ftp伺服器

/etc/vsftpd/user_list //白名單,允許訪問ftp伺服器的使用者列表

啟動服務

systemctl enable vsftpd.service //設定開機自啟動

systemctl start vsftpd.service //啟動ftp服務

netstat -antup | grep ftp //檢視ftp服務埠

匿名ftp的基本配置

使用匿名ftp,使用者無需輸入使用者名稱密碼即可登入ftp伺服器,vsftpd安裝後預設開啟了匿名ftp的功能,使用者無需額外配置即可使用匿名登入ftp伺服器。

匿名ftp的配置在/etc/vsftpd/vsftpd.conf中設定。

anonymous_enable=yes //預設即為yes

匿名ftp的其他設定

出於安全方面的考慮,vsftpd在預設情況下不允許使用者通過匿名ftp上傳檔案,建立目錄等更改操作,但是可以修改vsftpd.conf配置檔案的選項,可以賦予匿名ftp更多的許可權。

允許匿名ftp上傳檔案。

修改/etc/vsftpd/vsftpd.conf

write_enable=yes

anon_upload_enable=yes

chmod o+w /var/ftp/pub/                     #

更改/var/ftp/pub目錄的許可權

systemctl restart vsftpd.service #

重啟ftp服務

配置本地使用者登入

本地使用者登入就是指使用linux作業系統中的使用者賬號和密碼登入ftp伺服器,vsftp安裝後默只支援匿名ftp登入,使用者如果試圖使用linux作業系統中的賬號登入伺服器,將會被vsftpd拒絕

1.建立ftptest用

useradd ftptest                    #

建立ftptest使用者

passwd ftptest #

修改ftptest使用者密碼

2.修改/etc/vsftpd/vsftpd.conf

anonymous enable=no

local_enable=yes

另外簡單介紹下vsftpd.conf的配置檔案引數說明。

使用者登陸控制

引數說明

anonymous_enable=yes

接受匿名使用者

no_anon_password=yes

匿名使用者login時不詢問口令

anon_root=(none)

匿名使用者主目錄

local_enable=yes

接受本地使用者

local_root=(none)

本地使用者主目錄

使用者許可權控制

引數說明

write_enable=yes

可以上傳(全域性控制)

local_umask=022

本地使用者上傳檔案的umask

file_open_mode=0666

上傳檔案的許可權配合umask使用

anon_upload_enable=no

匿名使用者可以上傳

anon_mkdir_write_enable=no

匿名使用者可以建目錄

anon_other_write_enable=no

匿名使用者修改刪除

chown_username=lightwiter

匿名上傳檔案所屬使用者名稱

配置vsftpd環境

執行下邊的命令,一行一行來。

#

sed -i "s/anonymous_enable=yes/anonymous_enable=no/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#anon_upload_enable=yes/anon_upload_enable=no/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#anon_mkdir_write_enable=yes/anon_mkdir_write_enable=yes/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#chown_uploads=yes/chown_uploads=no/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#async_abor_enable=yes/async_abor_enable=yes/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#ascii_upload_enable=yes/ascii_upload_enable=yes/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#ascii_download_enable=yes/ascii_download_enable=yes/g" '/etc/vsftpd/vsftpd.conf'

#sed -i "s/#ftpd_banner=welcome to blah ftp service./ftpd_banner=welcome to ftp service./g" '/etc/vsftpd/vsftpd.conf'

#echo -e "use_localtime=yes\nlisten_port=21\nchroot_local_user=yes\nidle_session_timeout=300

#\ndata_connection_timeout=1\nguest_enable=yes\nguest_username=fuser

#\nuser_config_dir=/etc/vsftpd/vconf\nvirtual_use_local_privs=yes

#\allow_writeable_chroot=yes

#\npasv_min_port=40000\npasv_max_port=41000

#\naccept_timeout=5\nconnect_timeout=1" >> /etc/vsftpd/vsftpd.conf

建立ftp使用者

建立使用者fuser,一些寫教程登入終端是/bin/false,我卡這半天,具體可以搜它和nologin的區別

#

useradd fuser -d /wwwroot -s /sbin/nologin

#chown fuser.fuser /wwwroot -r

#passwd fuser

重啟vsftp服務

systemctl restart vsftpd.service

注意,這裡是centos的關於vsftp重啟,以前的命令在這不管用!如果開了防火牆,記得把相應的埠新增進去,本場環境中涉及21,40000-41000

可能會用到的:

徹底刪除使用者:#userdel -rf fuser //強制刪除使用者及相關目錄檔案

變更使用者屬性:#usermod -s /sbin/nologin fuser

檢視當前服務:#netstat -lntp

我的可執行配置(/etc/vsftpd/vsftpd.conf):

anonymous_enable=no

local_enable=yes

write_enable=yes

local_umask=022

#anon_upload_enable=yes

#anon_mkdir_write_enable=yes

dirmessage_enable=yes

xferlog_enable=yes

connect_from_port_20=yes

#chown_uploads=yes

#chown_username=whoever

#xferlog_file=/var/log/vsftpd.log

xferlog_std_format=yes

#idle_session_timeout=600

#data_connection_timeout=120

#nopriv_user=ftpsecure

async_abor_enable=yes

ascii_upload_enable=yes

ascii_download_enable=yes

#ftpd_banner=welcome to blah ftp service

#deny_email_enable=yes

#banned_email_file=/etc/vsftpd/banned_emails

#chroot_list_enable=yes

#chroot_list_file=/etc/vsftpd/chroot_list

#ls_recurse_enable=yes?listen=yes

#listen_ipv6=yes

pam_service_name=vsftpd

userlist_enable=yes

local_root=/usr/share/nginx/html

chroot_local_user=yes

allow_writeable_chroot=yes

可能性二:

匿名使用者的目錄(/var/ftp/pub)沒有寫許可權,需要將其設定為具有寫許可權。

首先轉到/var/ftp

然後在終端中輸入:chmod 777 pub。

FTP在CentOS上安裝與使用

安裝 yum install y vsftpd etc vsftpd vsftpd.conf 主配置檔案,核心配置檔案 etc vsftpd ftpusers 黑名單,這個裡面的使用者不允許訪問ftp伺服器 etc vsftpd user list 白名單,允許訪問ftp伺服器的使用者列表 啟動服務...

在Cent OS上安裝Bugzilla

這幾天一直在折騰bugzilla,原以為應該挺簡單的,卻也是一波三折。下面是 的過程 在 var www html目錄中建立乙個symbolic link ln s var local bugzilla bugzilla 為httpd的使用者分配該資料夾的訪問許可權 chown apache.apa...

在CentOS上安裝Git

centos的yum源中沒有git,只能自己編譯安裝,現在記錄下編譯安裝的內容,留給自己備忘。確保已安裝了依賴的包 30 你的目錄可能不是這個 autoconf configure make sudo make install 檢查下安裝的版本,大功告成 git version 通過ssh 進行認證...