linux虚拟机怎么搭建ftp服务器

linux虚拟机怎么搭建ftp服务器,第1张

详解Linux中搭建一个ftp服务器。

ftp工作是会启动两个通道:

控制通道 , 数据通道

在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)

PORT模式:

在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21) 发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己的TCP 20 端口和PORT中包含的端口建立新的连接来传送数据。

PASV模式:

传送数据时,ftp_client--PASV命令-->ftp_server(21) 发送PASV命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。

安装ftp

#rpm -qa vsftpd 查看是否已经安装

#yum install -y vsftpd

#rpm -ql vsftpd

/etc/logrotate.d/vsftpd.vsftpd的日志文件

/etc/pam.d/vsftpdPAM认证文件

/etc/rc.d/init.d/vsftpd 启动脚本

/etc/vsftpd vsftpd的配置文件存放的目录

/etc/vsftpd/ftpusers禁止使用vsftpd的用户列表文件

/etc/vsftpd/user_list禁止或允许使用vsftpd的用户列表文件

/etc/vsftpd/vsftpd.conf 主配置文件

/etc/vsftpd/vsftpd_conf_migrate.sh vsftpd *** 作的一些变量和设置

/usr/sbin/vsftpdvsftpd的主程序

其他一些说明文档和手册文件略!

/var/ftp匿名用户主目录

/var/ftp/pub匿名用户的下载目录

#service vsftpd start

#chkconfig --level vsftpd

#chkconfig --level 2345 vsftpd on

2 匿名用户的登录名:ftp(anonymous) 密码空 ,登录的目录为/var/ftp

用匿名用户登录的时候默认是只有下载的权限,没有上传,创建和删除的权限:

#vim /etc/vsftpd/vsftpd.conf

anon_upload_enable=YES 上传

anon_mkdir_write_enable=YES创建

anon_other_write_enable=YES删除

#service vsftpd restart

为了安全应该禁止匿名用户的登录:

123456 #vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO

#anon_upload_enable=YES 上传

#anon_mkdir_write_enable=YES创建

#anon_other_write_enable=YES删除

#service vsftpd restart

3 创建一个直接登录系统用户来登录ftp:

#useradd -s /sbin/nologin viong

#passwd viong

用户具有 上传 创建 下载 切换目录

------------------------------------------------------------------

4 加强vsftp安全设置:

限制系统用户锁定在家目录:

#vim /etc/vsftpd/vsftpd.conf

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list 限制更多的系统用户,把需要限制的用户加入/etc/vsftpd/chroot_list中即可

#touch /etc/vsftpd/chroot_list

#cut -d: -f 1 /etc/passwd >>/etc/vsftpd/chroot_list 将本地用户都加入到chroot_list

限制重要系统用户不能登录ftp:

#cat /etc/vsftpd/ftpusers 默认已经添加了系统中一些比较重要的用户

#echo "viong" >>/etc/vsftpd/ftpusers 此时viong不能登录ftp

利用ftp用户策略允许登录ftp的系统用户:

/etc/vsftpd/user_list 只有在这个文件中的用户才能登录系统:

#vim /etc/vsftpd/vsftpd.conf

#在userlist_enable=YES 的后面添加

userlist_deny=NO

userlist_file=/etc/vsftpd/user_list

设置登录ftp目标ip地址:用iptables设置

---------------------------------------

搭建支持SSL加密传输的vsftpd:

#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem生成证书

#vim /etc/vsftpd/vsftpd.conf

ssl_enable=YES

allow_anon_ssl=NO

force_local_data_ssl=YES

force_local_logins_ssl=YES

ssl_tlsv1=YES

ssl_sslv2=YES

ssl_sslv3=YES

rsa_cert_file=/etc/vsftpd/vsftpd.pem

下面是ssl参数一些定义,根据自己需求去修改:

ssl_enable=yes/no//是否启用 SSL,默认为no

allow_anon_ssl=yes/no//是否允许匿名用户使用SSL,默认为no

rsa_cert_file=/path/to/file //rsa证书的位置

dsa_cert_file=/path/to/file //dsa证书的位置

force_local_logins_ssl=yes/no//非匿名用户登陆时是否加密,默认为yes

force_local_data_ssl=yes/no//非匿名用户传输数据时是否加密,默认为yes

force_anon_logins_ssl=yes/no//匿名用户登录时是否加密,默认为no

force_anon_data_ssl=yes/no//匿名用户数据传输时是否加密,默认为no

ssl_sslv2=yes/no //是否激活sslv2加密,默认no

ssl_sslv3=yes/no//是否激活sslv3加密,默认no

ssl_tlsv1=yes/no//是否激活tls v1加密,默认yes

ssl_ciphers=加密方法//默认是DES-CBC3-SHA

#service vsftpd restart

用flashftp连接:

连接类型为:FTP使用公开SSL(验证SSL)

地址:192.168.137.130:21

登录类型:普通

用户:viong

密码:123

方法/步骤

安装VMware 虚拟机,一直点下一步

VMware安装成功后,配置虚拟机参数

启动安装SUSE,配置语言信息

配置ROOT账号信息

启动SUSE,会自动配置网络信息

6

配置SUSE以命令行方式启动,vi /etc/inittab


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7119993.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存