东莞哪家网站建设比较好,合肥网站建设=388元,做网站上找王思奇,网站建设目的与作用后面操作会直接基于 yay 操作 自行查找如何安装 yay
公司经常会用到 ftp 服务 不想用 apache 的 ftp server 所以自己在小机器上撞了 arch linux 用来安装软件 跑程序等。
1. 安装 vsftpd
yay vsftpd --noconfirm选择 1 安装 输入密码
2. 安装 pam_pwdfile
安装 pam_pwdf…后面操作会直接基于 yay 操作 自行查找如何安装 yay
公司经常会用到 ftp 服务 不想用 apache 的 ftp server 所以自己在小机器上撞了 arch linux 用来安装软件 跑程序等。
1. 安装 vsftpd
yay vsftpd --noconfirm选择 1 安装 输入密码
2. 安装 pam_pwdfile
安装 pam_pwdfile用于验证密码文件
yay pam_pwdfile --noconfirm选择 1 安装
3. 修改配置文件
配置文件在 /etc/vsftpd.conf 处
sudo nano /etc/vsftpd.conf修改为以下内容
# 监听 ipv4
listenYES
# 监听 ipv6
listen_ipv6NO
# 关闭匿名登陆
anonymous_enableNO
# 允许本地登陆 如使用虚拟宿主用户在该项目设定为NO的情况下所有虚拟用户将无法访问
local_enableYES
# 允许写入文件
write_enableYES
# 文件权限掩码设置 当前即为 755
local_umask000
# 不允许匿名上传
#anon_upload_enableYES
# 不允许匿名创建文件夹
#anon_mkdir_write_enableYES
# 目录消息
dirmessage_enableYES
use_localtimeYES
xferlog_enableYES
connect_from_port_20YES
#chown_uploadsYES
#chown_usernamewhoever
xferlog_file/var/log/xferlog.log
#xferlog_std_formatYES
#idle_session_timeout600
#data_connection_timeout120
#nopriv_userftpsecure
#async_abor_enableYES
ascii_upload_enableYES
ascii_download_enableYES
#deny_email_enableYES
#banned_email_file/etc/vsftpd.banned_emails
#chroot_local_userYES
# 设置不允许离开主目录
chroot_list_enableYES
# 允许登陆的 ftp 用户列表
chroot_list_file/etc/vsftpd/chroot_list
#ls_recurse_enableYES
pam_service_namevsftpd
ssl_enableNO
guest_enableYES
guest_usernameftp
user_config_dir/etc/vsftpd/vuser_conf
#pasv_address172.16.161.244
#开启PASV模式
pasv_enableYES
#最小端口号
#pasv_min_port10027
#最大端口号
#pasv_max_port10037
pasv_promiscuousYES
allow_writeable_chrootYES
# ftp 监听端口
listen_port2121
vsftpd_log_file/var/log/vsftpd.log
log_ftp_protocolYES
hide_idsYES
virtual_use_local_privsYES
seccomp_sandboxNO4. 配置文件
创建文件夹 /etc/vsftpd/vuser_conf 对应配置文件内 user_config_dir 属性
创建 /etc/vsftp/chroot_list 文件,在里面填入自己想要的用户名 我选择 myFtpUser ,如果 chroot_local_user属性没有设置/设置为 NO (默认为NO),则只有该文件内的用户可以登陆
sudo mkdir -p /etc/vsftpd/vuser_conf
sudo bash -c echo myFtpUser /etc/vsftpd/chroot_list创建用户配置 在 vuser_conf 目录下创建用户名的文件
sudo nano /etc/vsftpd/vuser_conf/myFtpUser填入内容
local_root/home/robot/data/ftphome
write_enableYES
anon_umask000
anon_world_readable_onlyNO
anon_upload_enableYES
anon_mkdir_write_enableYES
anon_other_write_enableYESlocal_root 是 ftp 的根目录所在文件夹 同时创建文件夹 并且更改所有者
sudo mkdir /home/robot/data/ftphome
sudo chown -R ftp:ftp /home/robot/data/ftphome5. 创建密码
我选择 abcd1234
openssl passwd -1 -noverify abcd1234得到 $1$vG2IrM5m$mdmBeMXqqnjW7u4exX/190 将用户名:密码作为内容创建 vuser_passwd 文件 文件名任意 后面要用,内容如下 由于有特殊符号 还是用 nano 方便~
sudo nano /etc/vsftpd/vuser_passwdmyFtpUser:$1$vG2IrM5m$mdmBeMXqqnjW7u4exX/190编辑 vsftpd 的 pam 文件
sudo nano /etc/pam.d/vsftpd将内容删除 或者 都注释(前面加#),然后添加一下内容
auth required pam_pwdfile.so pwdfile /etc/vsftpd/vuser_passwd
account required pam_permit.so其中就用到了密码文件
6. 赋权
配置文件目录添加所有可读, ftp 目录的用户目录我直接给了全部权限
sudo chmod ar -R /etc/vsftpd
sudo chmod 777 -R /home/robot7. 验证
我使用 filezilla 连接 没有问题 注意端口 和配置文件中的对应 是 2121 有时间再更一篇 vsftpd 配置 ftps 的文章