linux下ftp服务各种模式和ca证书认证的搭建

Red hat 下vsftpd的搭建

                           作者  浩浩哥来了

首先/etc/init.d/vsftpd   restart 查看在当前版本是不是存在vsftpd服务 如果路径无法补全,这需要手动安装。

Yum install vsftpd* -y

/etc/init.d/vsftpd  restart 将服务启动起来

Ifconfig 查看当前主机的ip地址

在windows中输入ftp://red hat 中的ip地址

匿名用户登录

Cd /var/ftp/pub/   为匿名用户的使用工作路径

Getsebool –a | grep ftp

Setsebool –P ftp_home_dir on 打开ftp家目录的布尔值

Setsebool –P allow_ftpd_anon_write on 打开匿名用户写的权限

Chown ftp:ftp /var/ftp/pub/ 将匿名用户工作文件的用户和主组跟换为ftp

****************************************************

(默认的是pub文件夹,下面是根据自己需要修改匿名用户访问的文件路径)

Mkdir /var/ftp/luo/

Chown ftp:ftp /var/ftp/luo/

****************************************************

ll –Z –d /var/ftp/pub/ 查看文件属性的用户和主组是否更改为ftp

Man ftpd_selinux 在其中找到/var/ftp/pub 所需要的上下文

Chcon –R –t public_content_rw_t  /var/ftp/pub/修改其上下文

*****************************************************

(将luo这个文件夹的上下文进行修改)

Chcon –R –t public_content_rw_t  /var/ftp/luo/

*****************************************************

ll –Z –d /var/ftp/pub/ 查看ftp的上下文是否更改成 public_content_rw_t

Vim /etc/vsftpd/vsftpd.conf 为vsftpd的配置文件的路径

在配置文件中为匿名用户打开相应的权限如下:

Anonymous_enable=YES 允许匿名登录

Anon_upload_enable=YES 打开匿名用户的上传权限

Anon_mkdir_write_enable=YES 打开匿名用户的创建文件夹的权限

Anon_other_write_enable=YES  打开匿名用户对文件修改和删除的权限

Anon_root=/var/ftp 为单独创建的文件指定路径

成员用户进行登录

创建用户 ftp1 ftp2ftp3

Useradd –d /home/ftp1 ftp1

Passwd ftp1

Useradd –d /home/ftp2 ftp2

Passwd ftp2

Useradd –d /home/ftp3 ftp3

Passwd ftp3

以上是创建3个ftp用户账号

Cat /etc/passwd | grep ftp*

查看3个用户账号的情况

一个小技巧将匿名关闭,在/var/ftp/路径下将系统默认的pub文件换一个用户名

Mv /var/ftp/pub/  /var/ftp/pub.bak/

匿名登录就关闭了

Vim /etc/vsftpd/vsftpd.conf

Local_enable=YES 将用户登录打开

Chroot_local_user=YES  将本地用户不能切换到上级目录

Chroot_list_enable=YES  本地用户成员列表打开

Chroot_list_file=/etc/vsftpd/chroot_list 成员列表文件路径 默认是在/etc/vsftpd/chroot_list 自己手动创建一个名为chroot_list

Userlist_deny=NO 将用户的限制名单开启,在目前状态下user_list中用户的成员可以正常通过用户进行登录

Vim /etc/vsftpd/chroot_list 在文件中将ftp1 ftp2 ftp3 一行一个添加进去

Vim /etc/vsftpd/user_list 在文件中添加可以使用ftp的本地用户(在nobody后面一行一个ftp1 ftp2 ftp3)

虚拟用户的创建

Cd /etc/vsftpd/  个人比较喜欢在这个路径创建东西

Vim user.txt   创建一个放虚拟用户的文档,奇数为用户名,偶数是用户密码 ,分别创建user(1-3)用户 ,密码都是123

User1

123

User2

123

User3

123

接下来需要使用db_load命令来创建口令库文件

如果没有安装的话

Yum install db* -y

Db_load -T  -t  hash -f  /etc/vsftpd/user.txt    /etc/vsftpd/user.db

Vim /etc/pam.d/vsftpd

Auth required    pam_userdb.so   db=/etc/vsftpd/user

Account required  pam_userdb.so    db=/etc/vsdftpd/user    在文档的末尾添加这两条,db等于的路径最后是没有.db结尾的切记切记

Useradd –s  /sbin/nologin user 创建user的本地用户

Chmod o+rx /home/user  为user用的家目录文件的权限开通other的读和执行权限

Vim /etc/vsftpd/vsftpd.conf  ftp的配置文件

Anonymous_enable=NO   必须将匿名用户进行关闭

Local_enable=YES        本地用户可以登录

Write_enable=YES        写的权限打开

Local_umask=022         创建的文件的权限是755

Anon_upload_enable=YES   匿名用户上传权限打开

Anon_mkdir_write_enable=YES 匿名用户的创建文件的权限打开

Anon_other_write_enable=YES 匿名用户的删除的权限代开

Dirmessage_enable=YES

Xferlog_enable=YES

Connect_from_port_20=YES

Xferlog_std_format=YES

Listen=YES

Pam_service_name=vsftpd   指明/etc/pam.d/vsftpd这个文件的文件名

Guest_enable=YES         虚拟用户开启

Guest_username=user       虚拟用户映射到本地用户的用户名

Virtual_use_local_privs=YES

Userlist_enable=YES

Tcp_wrappers=YES

Getsebool –a | grep ftp 查看ftp的布尔值

Setsebool –P ftp_home_dir on  将ftp的家目录布尔值打开

Setsebool –P ftpd_connect_db on  将ftp的db口令库打开

/etc/init.d/iptables stop 将防火墙关闭

/etc/init.d/vsftpd restart 将ftp启动起来

检测ftp虚拟用户是否登录上

打开本地cmd

ftp ip(linux ftp的ip地址)

user1 提示输入用户名(这里只能用user1 user2 user3 这三个虚拟出来的用户,在本地/etc/passwd 中不存在)

123 虚拟用户的密码

随后会提示230 loginsuccessful (登录过程可能很慢,不过没出现估计就是我电脑自己本身的问题)恭喜你登录上去了

ftp添加Ca 证书

Yum install openssl* -y

Cd /etc/vsftpd

Openssl req –x509 –nodes –days 365 –newkeyrsa:1024 –keyout vsftpd.pem –out vsftpd.pem 生成证书

下面是一些证书填写的信息

证书生成后在/etc/vsftpd/的路径下可以看到vsftpd.pem的一个证书

Vim /etc/vsftpd/vsftpd.conf

Ssl_enable=YES

Allow_anon_ssl=YES

Force_local_logins_ssl=YES

Force_local_data_ssl=YES

Ssl_tlsv1=YES

Rsa_cert_file=/etc/vsftpd/vsftpd.pem

ftp一些其他的参数

权限控制

write_enable=YES                      本地用户可写
local_umask=022                      上传文件的umask
file_open_mode=0666                    使用文件的方式
anon_upload_enable=NO                  匿名用户不可以上传
anon_mkdir_write_enable=NO              匿名用户不可以建目录等写操作
anon_other_write_enable=NO              匿名用户不可以做其他的写操作
anon_world_readable_only=YES              匿名用户可以读文件
#chown_uploads=YES                    修改上传的文件的属主
#chown_username=ftpadmin                修改上传的文件的属主为XXX
ascii_upload_enable=NO                  不使用ascii上传文件
ascii_download_enable=NO                不使用ascii下载文件

secure_chroot_dir=/usr/share/empty            默认值

超时控制
          
idle_session_timeout=600                  空闲超时600秒
data_connection_timeout=120                传输超时120秒
accept_timeout=60                      pasv模式等待时间60秒
connect_timeout=60                      port模式等待时间60秒

服务控制

xferlog_enable=YES                      启动日志功能
xferlog_std_format=YES                    使用标准日志格式
xferlog_file=/var/log/vsftpd.log            日志默认的位置
pasv_enable=YES                        启用被动模式
#port_enable=YES                        启用主动模式
#注意此处pasv和port只能写一个,不能一个YES,另一个NO,要想让另一个不起作用,只能用#注释掉,否则会出错。
tcp_wrappers=YES                        启用tcp_wrappers功能
nopriv_user=nobody                      最低权限用户

listen=YES                            使用standalone 模式(推荐的)

显示信息

ftpd_banner=welcome to ftp.                登录时的欢迎信息
dirmessage_enable=YES                    启动切换目录时提示目录信息的功能
message_file=.message                    目录提示信息的内容文件

文件权限设置

chroot_list_enable=YES                  启动用户目录限制功能
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list  此文件中的用户不能改变到其他外层目录中。

userlist_enable=YES                    启动用户限制功能
userlist_deny=YES                      userlist文件中的用户禁止登录,NO的话则只有userlist中用户可以登录
userlist_file=/etc/vsftpd/vsftpd.user_list      禁止登录用户列表文件名和位置(可自定义)

user_config_dir=/etc/vsftpd/userconf/        对个别用户特殊设置的配置文件的目录(在此目录下建立对应“用户名”的文件,文件里写
                                write_enable=YES
                                anon_world_readable_only=NO
                                anon_upload_enable=YES
                                anon_mkdir_write_enable=YES
                                anon_other_write_enable=YES 等权限信息,此用户将有这里所写的权限)

连接选项

max_clients=100                            最大连接数
max_per_ip=5                              每个ip最大连接数
connect_from_port_20=YES                    启用20端口传输数据
#listen_address=192.168.0.2                  指定监听的ip地址,如果你有多个ip的话
listen_port=21                          监听的端口号
ftp_data_port=20                          数据传输端口号

pasv_max_port=40000                        被动模式的端口号的上限(0为不限)
pasv_min_port=30000                        被动模式的端口号的下限(0为不限)

数据传输速度

anon_max_rate=51200                        匿名用户最大传输率
local_max_rate=5120000                      本地用户最大传输率

时间: 2024-09-30 16:27:18

linux下ftp服务各种模式和ca证书认证的搭建的相关文章

<Linux下FTP服务的搭建>

默认安装好ftp软件包匿名用户是可以下载的.匿名以后可以上传:anon_upload_enable=YES# getsebool -a | grep ftpallow_ftpd_anon_write --> onchcon -t public_content_rw_t pubchmod 775 pubchgrp ftp pub 匿名用户可以创建目录:anon_mkdir_write_enable=YES 在创建的目录上传文件看不到.添加下面anon_world_readable_only=NO

linux 下FTP服务的搭建详解

第1章 centos 6.8搭建FTP服务详解 1.1搭建环境: [[email protected] ~]# cat /etc/redhat-release CentOS release 6.8 (Final) [[email protected] ~]# uname -r 2.6.32-642.el6.x86_64 [[email protected] ~]# uname -m x86_64 [[email protected] ~]# 1.2yum 安装FTP软件: [[email pro

linux下ftp服务搭建

1. 配置 /etc/passwd /etc/group /etc/vsftpd/vsftpd.conf #配置文件 /usr/sbin/vsftpd #主程序 /etc/vsftpd/ftpusers #黑名单,只要在此名单中即不能登录ftp服务器 /etc/vsfptd/user_list #控制用户登录 /var/ftp #匿名用户主目录 #配置锁定用户只能在家目录活动,两个选项同时启用才能生效 chroot_list_enable=YES chroot_list_file=PATH #注

linux下使用openssl生成 csr crt CA证书

本文主要借鉴和引用了下面2个地址的内容,然后在自己的机器上进行了测试和执行,并做了如下记录. ref: http://blog.chinaunix.net/uid-26760055-id-3128132.html http://www.111cn.net/sys/linux/61591.htm 创建测试目录 mkdir /tmp/create_key/ca cd /tmp/create_key/ 证书文件生成: 一.服务器端 1.生成服务器端    私钥(key文件); openssl genr

【转】linux下使用openssl生成 csr crt CA证书

创建测试目录 mkdir /tmp/create_key/ca cd /tmp/create_key/ 证书文件生成: 一. 服务器端 1. 生成服务器端 私钥(key文件): openssl genrsa -des3 -out server.key 1024 运行时会提示输入密码,此密码用于加密key文件(参数des3是加密算法,也可以选用其他安全的算法),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令,如果不要口令,则去除口令: mv server.key serv

linux下httpd服务名词解释和http及https服务器搭建

1.HTTP: HyperText Transfer Protocol: 超文本传输协议 2.URI: Uniform Resource Indentifier,统一资源标示 全局范围内,路径格式上的统一 3.URL:Uniform Resource Locator:统一资源定位 4.web资源:多个资源很可能被整合为一个html文档 5.MIME: Multipurpose Internet Mail Extension, 多用途互联网邮件扩展 将非文本数据在传输前重新编码(Base64)为文

《linux下sudo服务的使用》RHEL6

/bin/ 下放的二进制文件命令都是普通用户可以使用的 Sbin 下放的二进制文件命令都是超级用户root可以使用的   普通用户也想使用Sbin下的文件可以通过sudo来实现: 默认普通用户是不可以使用的: 提示:没有足够大的权限   配置单个用户对某个命令或服务具有使用权 系统默认速冻软件包已经安装可以查看下: 执行 [[email protected] ~]# visudo来生成sudo配置文件.   在文件中添加: 注:赋予redhat用户在本地用户可以使用chkconfig命令,可以写

linux下FTP服务器的安装与配置

FTP服务器安装与配置 1. 切换到root用户:  su root 2. 查看系统中是否安装了vsftpd,可以通过执行命令 :  rpm -qa | grep vsftpd 3. 如果没有安装 vsftpd,则安装 :  yum -y install vsftpd 4. 创建ftp用户,比如ftp_test.命令:   useradd -s /sbin/nologin -d /home/ftp_test ftp_test 5. 设置ftp_test用户密码.命令:  passwd ftp_t

linux下tomcat服务的启动、关闭与错误跟踪

linux下tomcat服务的启动.关闭与错误跟踪,远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务: 1).启动tomcat服务 进入tomcat主目录下的bin目录,然后执行如下命令: ./startup.sh 2).关闭tomcat服务 进入tomcat主目录下的bin目录,然后执行如下命令: ./shutdown.sh 通过1)启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也就立即关闭了,通过以下命令可以作为linux服务一直运行 3).作为服务启