tft每日頭條

 > 科技

 > linux上配置ftp服務器

linux上配置ftp服務器

科技 更新时间:2024-05-16 13:59:26

Liunx系統下有好幾款很不錯的ftp服務,各有特點,适應于不同的應用場合。一般在各種Linux的發行版中,默認帶有的ftp軟件是vsftp,本文是針對CentOs7系統下搭建vsftpd服務為例。

1. 首先确定系統中已經安裝了vsftpd軟件,查看命令:

rpm -q vsftpd rpm -qa | grep vsftpd

linux上配置ftp服務器(Linux系統搭建FTP服務器教程)1

2. 安裝vsftpd(以yum安裝為例)

yum install -y vsftpd

linux上配置ftp服務器(Linux系統搭建FTP服務器教程)2

3.關閉selinux和iptables(也可配置防火牆相關訪問策略,防止系統阻斷),設置vsftpd開機自啟

永久關閉selinux

vi /etc/sysconfig/selinux将配置SELinux=enforcing改為SELinux=disabled 保存退出并重啟服務器 驗證是否關閉命令:getenforce

關閉防火牆

centos 7 操作命令:systemctl stop firewalld.service centos 6 操作命令:service stop iptables

設置vsftpd開機自啟

centos 7 操作命令:systemctl enable vsftpd.service centos 6 操作命令:chkconfig vsftpd on

4.vsftpd的配置

ftpusers 該文件用來指定哪些用戶不能訪問ftp服務器。

user_list 該文件用來指定的默認賬戶在默認情況下也不能訪問FTP服務器。

vsftpd.conf vsftpd的主要配置文件,路徑:

/etc/vsftpd/vsftpd.conf# vsftpd.conf的配置

# 是否允許匿名登錄 anonymous_enable=NO # 是否允許本地用戶登錄 local_enable=YES # 是否允許本地用戶對FTP服務器文件具有寫權限 write_enable=YES # 本地用戶主目錄 local_root=/var/ftp # 匿名用戶主目錄 anon_root=/var/ftp/pub # 是否允許匿名用戶上傳文件,如允許,須将全局的 write_enable=YESanon_upload_enable=YES # 是否允許匿名用戶創建新文件夾 anon_mkdir_write_enable=YES # 容許匿名用戶除了新建和上傳外的其他權限 anon_other_write_enable=YES # 本地用戶掩碼 local_umask=022 # 設置匿名登入者新增或上傳檔案時的umask值 anon_umask=022 # 是否激活目錄歡迎信息功能 dirmessage_enable=YES xferlog_enable=YES # 主動模式數據傳輸20端口 connect_from_port_20=NOxferlog_std_format=YES # 是否監聽 ipv4listen=YES # listen_ipv6=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES # 是否設置被動模式 pasv_enable=YES # 被動模式傳輸使用端口 pasv_min_port=20020 pasv_max_port=20020 # 被動模式返回給客戶端的ip地址(服務器内網穿透時使用) pasv_address=0.0.0.0( 服務器外網ip ) # 設置用戶訪問目錄,默認隻允許用戶自己的ftp目錄 # 需要同時設置allow_writeable_chroot,允許受限用戶的寫權限,不然會報錯 chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list allow_writeable_chroot=YES

5.創建例外用戶文件

#哪怕沒有例外用戶也必須創建 vim /etc/vsftpd/chroot_list

隻想讓指定賬戶不限制在其主目錄,其它賬戶都限制在主目錄。

對于chroot_local_user與chroot_list_enable的組合效果,可以參考下表:

chroot_local_user=YES

chroot_local_user=NO

chroot_list_enable=YES

1.所有用戶都被限制在其主目錄下2.使用chroot_list_file指定的用戶列表,這些用戶作為“例外”,不受限制

1.所有用戶都不被限制在其主目錄下2.使用chroot_list_file指定的用戶列表,這些用戶作為“例外”,受到限制

chroot_list_enable=NO

1.所有用戶都被限制在其主目錄下2.不使用chroot_list_file指定的用戶列表,沒有任何“例外”用戶

1.所有用戶都不被限制在其主目錄下2.不使用chroot_list_file指定的用戶列表,沒有任何“例外”用戶

6. 創建ftp新用戶

#新增一個test(用戶名),并指定上傳目錄在/home/ftp/test下 useradd -g root -d /home/ftp/test -s /sbin/nologin test # 如果後期想變更此用戶的上傳到(/XXX/ftp/test),請使用下面的命令: usermod -d /XXX/ftp/test test # 設置用戶密碼 passwd test

因為安全問題,vaftpd不允許匿名用戶在ftp主目錄上傳,可以新建一個子目錄,設置權限為777

8. 關于local_umask和anon_umask掩碼

掩碼決定了上傳文件的權限,掩碼為022代表上傳後的文件權限為

666-022=644 -> rw-r--r--

掩碼即為要去除的權限為,默認設為033即可。

9. 啟動vsftp服務

#centos7 操作命令 啟動: systemctl start vsftpd.service 停止: systemctl stop vsftpd.service 重啟: systemctl restart vsftpd.service 查看狀态: systemctl status vsftpd.service #centos6 操作命令 啟動: service vsftpd start 停止: service vsftpd stop 重啟: service vsftpd restart 查看狀态: service vsftpd status

想了解更多精彩内容請點擊:Linux系統搭建FTP服務器教程

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved