凝思操作系统安装ftps
凝思操作系统自带ftp服务proftpd服务,并且安装vsftpd会提示需要升级mysql,比较麻烦,因此凝思配置ftps选择使用proftpd。
- 首先安装proftpd服务
sudo apt-get install proftpd
- 查看proftpd状态
sudo service proftpd status
- Proftpd配置文件
配置文件:/etc/proftpd/proftpd.conf
#配置服务器名
ServerName ""blog.fens.me FTP Server"
#设置服务器运行模式,独立服务,或者被监管
ServerType standalone
#设置为默认服务器
DefaultServer on
#设置服务器进程运行使用的用户
User proftpd
#设置服务器进程运行使用的组
Group nogroup
#设置关闭IPv6支持
UseIPv6 off
#设置服务器接受请求的端口
Port 21
#设置被动模式使用的端口范围
PassivePorts 60000 65535
#设置用户上传文件的权限掩码
Umask 022
#设置用户被chroot锁定到的各自的Home目录
DefaultRoot /ftp
#关闭欢迎信息显示
DeferWelcome off
#如果显示欢迎信息,则指定显示的文件
DisplayLogin welcome.msg
#指定切换文件夹时,显示的欢迎信息
DisplayChdir .message
#设置日志
SystemLog /var/log/proftp.log
TransferLog /var/log/proftp-transfer.log
#限定操作
<Limit SITE_CHMOD>
DenyAll
</Limit>
#设置匿名用户资源
<Anonymous "/ftp/c">
</Anonymous>
#配置存储目录权限
<Directory "/ftp/a/" >
<Limit ALL>
AllowUser x
AllowUser a1
DenyAll
</Limit>
<Limit CWD READ RETR DIRS>
AllowAll
</Limit>
</Directory>
Limit权限说明:
- CWD : Change Working Directory 进入该目录
- MKD : Make Directory 创建目录
- RNFR : Rename from 更名
- DELE : Delete 删除文件
- RMD : Remove Directory 删除目录
- READ : 可读
- WRITE: 可写
- STOR : 可上传
- RETR : 可下载
- DIRS : 允许列出目录
- LOGIN: 允许登录
- ALL : 全部
- 配置,先创建一个ftp根目录
sudo mkdir -p /usr/ftp
2.创建用户组
sudo groupadd ftpgroup
3.创建用户并设置nologin,禁止FTP账号登录系统
sudo useradd ftpuser -g ftpgroup -s /usr/sbin/nologin
4.设置账户密码
echo -e “ftpuser:Sys@123@” | sudo chpasswd
5.设置目录权限
chmod 777 /usr/ftpchown ftpuser:ftpgroup /usr/ftp
6.修改配置文件
sudo vi /etc/proftpd/proftpd.conf
ServerName "blog.fens.me FTP Server"
ServerType standalone
DefaultServer on
Port 21
Umask 022
MaxInstances 30
User proftpd
Group nogroup
DefaultRoot /usr/ftp
AllowOverwrite on
SystemLog /var/log/proftp.log
TransferLog /var/log/proftp-transfer.log
<Directory "/usr/ftp/*">
<Limit ALL>
AllowAll
</Limit>
</Directory>
<Limit SITE_CHMOD>
DenyAll
</Limit>
10.重启proftpd服务
sudo service proftpd restart
11. 使用ftp工具尝试一下连接,查看是否配置有错误,ftp连接速度此时可能很慢。
解决方法:在/etc/proftpd.conf里面最后加上两行
UseReverseDNS off
IdentLookups off
绕过一些DNS还有ip地址的检查,然后重启服务再次连接就会速度很快
12.以上ftp服务配置好之后,可以配置ssl证书,配置之后就可以使用ftps
1)、首先联网安装ssl
apt-get -y install openssl
2)、创建一个证书(时间365天)直接全回默认就行
注意:创建证书过程中,证书生效时间为当前时间,发生过修改服务器时间,导致证书未到生效时间的情况
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -out /etc/ssl/certs/proftpd.pem -keyout /etc/ssl/certs/proftpd.pemGenerating a 2048 bit RSA private key
(3)、修改权限
chmod 0400 /etc/ssl/certs/proftpd.pem
4).修改/etc/proftpd/proftpd.conf支持tls,添加在最后
TLSEngine on
TLSRequired on
TLSProtocol TLSv1 SSLv23
TLSLog /var/log/proftpd/tls.log
TLSRSACertificateFile /etc/ssl/certs/proftpd.pem
TLSRSACertificateKeyFile /etc/ssl/certs/proftpd.pem
5)、重启proftpd服务
service proftpd restart
或者
/etc/init.d/proftpd restart
注意:不清楚由于什么原因,使用commons-net上传时,jdk1.8版本内高的版本上传不了,低版本可行。FTPS服务正常,一直上传不了不妨把jdk版本换成1.8.101