vsftpd服务tar包安装
2024-08-25 04:32:37
一般如果有网络ubuntu直接apt-get install 安装vsftpd服务即可。
没网络只能下好vsftpd的tar包自己安装配置。
1. 解压
tar -xvf vsftpd-3.0.2.tar.gz //解压
cd vsftpd-3.0.2 //进入解压后的目录
2. 提供安装vsftpd服务的前提条件(根据上面more INSTALL的安装说明)
//需添加一个nobody用户。如果已有nobody用户,则不需要添加。可以用命令 cat /etc/passwd | grep nobody 来查看
useradd nobody
mkdir /usr/share/empty //vsftpd服务器需要一个empty的空目录放在/usr/share/下。如果存在就不需要了
如果需要开启匿名用户访问,需要做以下几步:
mkdir /var/ftp //创建匿名用户使用的目录
//创建ftp用户并指定家目录为/var/ftp,如果创建提示:user ftp exists(FTP用户存在)就表示此用户已经存在。
useradd -d /var/ftp ftp
3. 编译安装
make //编译二进制文件
make install //编译完后进行安装
Q1: 在执行make时出现了问题:
sysdeputil.o: In function `vsf_sysdep_check_auth':
sysdeputil.c:(.text+0x109): undefined reference to `crypt'
sysdeputil.c:(.text+0x13a): undefined reference to `crypt'
collect2: ld 返回 1
make: *** [vsftpd] 错误 1
A1:
vi Makefile
LIBS = `./vsf_findlibs.sh` # 在此行末尾增加 -lcrypt 变成
LIBS = `./vsf_findlibs.sh` -lcrypt
Q2:
install: cannot create regular file `/usr/local/man/man8/vsftpd.8': No such file or directory
install: cannot create regular file `/usr/local/man/man5/vsftpd.conf.5': No such file or directory
make: *** [install] Error 1
A2:
mkdir /usr/local/man/man5
mkdir /usr/local/man/man8
4. 进行配置
cp vsftpd.conf /etc/ //将默认配置文件拷贝到/etc
cp RedHat/vsftpd.pam /etc/pam.d/vsftpd //为了让vsftpd支持本地用户登陆,将身份认证模块文件拷贝到/etc/pam.d
vi /etc/vsftpd.conf
//进入vsftpd.conf进行配置如下
1. listen=yes //vsftpd工作在standalone模式
2. anonymous_enable=yes //允许匿名用户登陆
3. local_enable=yes //允许本地用户登陆
4. pam_service_name=vsftpd //使用PAM认证
/* vsftpd有两种工作模式:standalone和xinetd守护进程模式,第1行listen=yes就是让其工作在standalone模式下
* 此种模式每次修改配置文件必须重启vsftpd服务才会生效*/
cp vsftpd.conf.5 /usr/local/man/man5
cp vsftpd.8 /usr/local/man/man8
/usr/local/sbin/vsftpd & //后台启动vsftp
5. 关闭ftp服务
killall vsftpd //或是 pkill vsftpd
pgrep vsftpd //查看vsftpd服务器是否已经关闭
开机自启动
用vi打开etc/rc.local在里面加入/usr/local/sbin/vsftpd & 即可。
最新文章
- 常用[js,css,jquery,html]
- 解决Window Azure: Failed to start Development Storage: the SQL Server instance ‘localhost\SQLExpress’ could not be found.
- HDU-4455 Substrings(DP)
- 自学Python的点滴
- 判断联网wifi
- frontend http 前端名字定义问题
- FORM提交请求后自动打开输出EDITOR_PKG.REPORT
- RESTClient
- 【数据库】mysql数据库索引
- moment.js常用时间示例,时间管理
- 初学JSP
- python14 常用模块 二
- POJ 1704 Georgia and Bob(阶梯Nim博弈)
- JS 单线程和事件循环
- HTML5:图片、音乐和视频
- Eclipse更新maven项目仓库依赖
- LeetCode 709 To Lower Case 解题报告
- Django配置https协议
- Using QuickExec
- 正则表达式的Wed验证应用(40)
热门文章
- Linux系统443端口被占用无法启动解决办法
- js正则表达式之中文验证(转)
- CentOS 6.5 源码安装subversion-1.8.8,附加mod_dav_svn模块
- LeetCode 137 Single Number II(仅仅出现一次的数字 II)(*)
- 几个免费的DNS地址
- UIBarButtonSystemItem
- 从服务端架构设计角度,深入理解大型APP架构升级
- 算法笔记_074:子集和问题(Java)
- linux下Oracle11g RAC搭建(二)
- Cannot make a static reference to the non-static method的解决方法