Red Hat Linux安装vsftpd

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 本篇内容记录的是对vsftpd的安装、配置、检查等一些基本操作。

一、安装分区方案:


(1)交换分区,两倍内存


(2)/boot分区


(3)/剩余的所有空间


语言选择English(英语)


二、 配置IP


IP地址、子网掩码:


编辑 /etc/sysconfig/network-script/ifcfg-eth0
    DEVICE=eth0
    BOOTPROTO=static    -静态还是动态
    BROADCAST=192.168.1.255
    IPADDR=192.168.1.35    -IP地址
    NETMASK=255.255.255.0   -子网掩码
    NETWORK=192.168.1.0    -网络ID
    ONBOOT=yes


网关:


编辑 /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=vmlinux    ---主机名
    GATEWAY=192.168.1.2    ---网关


DNS:


编辑 /etc/resolv.conf
    nameserver 61.147.37.1
    nameserver 61.177.7.1


注意:上述IP地址都要改成与你的网络配置相对应的IP地址。" "前面注意大小写。


RedHat Linux下的MAC地址更改


  1.首先必须关闭网卡设备,否则会报告系统忙,无法更改。


/sbin/ifconfig eth0 down

  2.修改MAC地址。


 

/sbin/ifconfig eth0 hw ether 00AABBCCDDEE


  3.重新启用网卡


  

/sbin/ifconfig eth0 up


  网卡的MAC地址更改就完成了。  


另外一种方法是修改网卡的配置文件ifcfg-ethx,添加上类似格式的MAC地址:HWADDR=00:AA:BB:CC:DD:EE。


三、服务器配置之vsftpd配置


安装和启动


1.可用以下命令查询是否已安装:


#rpm -qa|grep vsftpd
vsftpd-2.0.5-10.e15


如果出现以上结果,表明已安装。如果未安装,可在Red Hat Enterprise Linux5 安装光盘中找到安装包,使用命令:


vsftp-2.0.5-10.e15.i386.rpm位于第二个iso文件中
#mount /dev/cdrom /mnt/cdrom
#rpm -ivh vsftp-2.0.5-10.e15.i386.rpm


2.启动和关闭


启动命令为:#service vsftpd start

停止命令为:#service vsftpd stop

重启命令为:#service vsftpd restart

查询运行状态:#service vsftpd status

vsftpd (pid 3571) 正在进行……


3、Vsftpd服务器配置


Vsftpd的主配置文件有三个:


/etc/vsftpd/vsftpd.conf
/etc/vsftpd.ftpusers
/etc/vsftpd.user_list


修改前建议使用cp命令备份这三个文件,修改完成后需要重启vsftpd服务才能使设置生效。


(一)匿名用户访问配置


1.启动后FTP服务器就可以登陆了


  匿名用户在text模式下,要用用户名ftp,密码也是ftp,来进行登陆;如果是用FTP工具来匿名登陆的话,用户名和密码都为:anonymous。默认情况下匿名用户可以访问和下载,但不能进行上传、删除、新建目录、执行文件等操作


  本地用户可以登陆,并可以离开自家目录至有权访问的其他目录,并在权限允许的情况下进行上传和下载,写在文件/etc/vsftpd.ftpusers中的本地用户禁止登录。


2.允许匿名用户上传文件


需要修改/etc/vsftpd/vsftpd.conf文件,把以下两项前的#去掉。


anon_upload_enable=YES
anon_mkdir_write_enable=YES


重启vsftpd服务。


3.仅允许匿名用户访问


指需要限制本地账号访问,修改/etc/vsftpd/vsftpd.conf文件,把以下两项前的#去掉。


local_enable=YES
write_enable=YES


重启vsftpd服务。


4.设置欢迎信息


修改/etc/vsftpd/vsftpd.conf文件


ftpd_banner=*****
*****即为设置的欢迎信息。


重启vsftpd服务。


5.设置最大传输率


修改/etc/vsftpd/vsftpd.conf文件


设置匿名用户的最大传输速率为20Kbps,应添加以下语句:


anon_max_rate=20000


设置本地账号的最大传输速率为1Mbps,应添加以下语句:


local_max_rate=1000000


6.设置服务器最大并发数和用户最大线程数


修改/etc/vsftpd/vsftpd.conf文件


设置服务器最大并发数为99,应添加以下语句:


max_clients=99


设置用户同一时段的最大连接数,应添加以下语句:


max_per_ip=5


7.禁止某些IP段的主机匿名访问服务器


修改vsftpd.conf文件,确认有如下语句:


tcp_wrappers=YES


修改/etc/hosts.allow文件,增加1行命令:


vsftpd:192.168.1.1:DENY


表示限制IP为192.168.1.1的主机访问FTP服务器。


重启vsftpd服务。


8.用ASCII方法传送数据


修改/etc/vsftpd/vsftpd.conf文件,


ascii_upload_enable=YES
ascii_download_enable=YES


重启vsftpd服务。


9.设置数据传输中断间隔时间


修改/etc/vsftpd/vsftpd.conf文件,


idle_session_timeout=600
表明空闲会话时间为600秒。
data_connection_timeout=120
表明数据连接超时时间为120秒。


重启vsftpd服务。


(二)本地用户访问配置


1.使用用户列表进行访问控制


修改/etc/vsftpd/vsftpd.conf文件,按以下语句设置:


userlist_enable=NO
表明vsftpd.ftpuser文件中的用户将被禁止访问FTP服务器。
userlist_enable=YES
userlist_deny=NO
表明仅允许vsftpd.user_list文件中的用户访问FTP服务器。
userlist_enable=YES
userlist_deny=YES
表明vsftpd.ftpuser和vsftpd.user_list文件中的用户都不能访问FTP服务器。


2.限制用户目录的访问权限


修改/etc/vsftpd/vsftpd.conf文件


chroot_local_user=YES
表明用户登录后不能访问自己目录以外的其它目录或文件。


3.修改默认端口


FTP服务器默认的端口是21,如需要修改端口,请修改/etc/vsftpd/vsftpd.conf文件,以下语句:


listen_port=4444
表明FTP服务器的端口号为4444,应该尽量大于4000。


vsftpd用root用户登录 530 login incorrect错误


在etc/pam.d/vsftpd里面有个目录指向etc/vsftpd/fptusers

在里面删除root就可以了


在开了root用户上传权限,也关了系统的防火墙,但ftp连接的时候依然还会出现 "500 OOPS:cannot change directory:/root" 错误,如何解决呢?



解决:


1、 查看 SELinux 的状态:


sestatus -b | grep ftp 确切地说,只是查看了ftp的状态。


2、 在出现的结果中可以看到


ftp_home_dir off
tftpd_disable_trans off


之类。我们现在只要把其中之一设置为on就可以啦。


3、

setsebool -P ftpd_disable_trans on 或者 setsebool -P ftp_home_dir on


4、 重启vsftpd: service vsftpd restart


5、 慢慢享受ftp带来的乐趣。


vsftpd登录出错问题:500 OOPS: cannot change directory:/root

可以在windows上使用一ftp客户端来尝试进行登录。这个时候一般都会报一个错误。


无效的用户权限错误


删除ftpuser 里面的root和user_list 里的root


最好关掉linux 的防火墙:chkconfig iptables off


然后再次登录


500 OOPS: cannot change directory:/root


解决办法:


1、查看 SELinux 的状态:


sestatus -b | grep ftp


2、在出现的结果中可以看到


ftp_home_dir off

tftpd_disable_trans off


之类。我们现在只要把其中之一设置为on就可以啦。


3、 setsebool -P ftpd_disable_trans on 或者 setsebool -P ftp_home_dir on


4、 重启vsftpd: service vsftpd restart


开机默认VSFTP服务自动启动:


永久打开或则关闭防火墙


chkconfig iptables on
chkconfig iptables off


方法一:(常用、方便)


[root@localhost etc]# chkconfig --list|grep vsftpd ( 查看情况)
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@localhost etc]# chkconfig vsftpd on(执行ON设置)


或者:方法二:


修改文件 /etc/rc.local , 把行/usr/local/sbin/vsftpd & 插入文件中,以实现开机自动启动。


530 Permission denied.


今天又重新在虚拟机下安装了linux。现在我想启动linux自带的ftp服务器:#service vsftpd start。如果想linux启动是自动启动ftp服务器: #chkconfig vsftpd on

运行putty,以root身份进入,出现了报错 530 Permission denied ,感觉很奇怪,因以普通用户是可以进入的。


原因是我们 /etc/vsftpd.ftpusers和/etc/vsftpd.user_list 禁掉了root这个用户。这时我们需要修改这两个文件。


(1)/etc/vsftpd.user_list的默认文件(则是表示具体用户)


# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd.ftpusers
# for users that are denied.
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody


这时我们要在root前加上# 。


(2)/etc/vsftpd.ftpusers的默认文件(所有可以登录该FTP的用户属性)

# Users that are not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody


这时我们要在 root前加上# 。


出现以下错误:


200 PORT command successful. Consider using PASV.
425 Failed to establish connection.


导致该错误是因为window的防火墙开启的原因,把防火墙关闭就能解决。


四、Linux下卸载和安装MySQL


1、查找以前是否装有MySQL


命令:


rpm -qa|grep -i MySQL


可以看到MySQL的两个包:


MySQL-4.1.12-3.RHEL4.1
MySQLclient10-3.23.58-4.RHEL4.1

2、删除MySQL


删除命令:


rpm -e --nodeps 包名
( rpm -ev MySQL-4.1.12-3.RHEL4.1 )


3、删除老版本MySQL的开发头文件和库


命令:


rm -fr /usr/lib/MySQL
rm -fr /usr/include/MySQL


注意:卸载后/var/lib/MySQL中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除


rm -f /etc/my.cnf
rm -fr /var/lib/MySQL


安装MySQL


安装前准备:两个rpm包


MySQL-client-5.1.20-0.glibc23.i386.rpm
MySQL-server-5.1.20-0.glibc23.i386.rpm


1、安装服务端:


命令:rpm -ivh MySQL-server-5.1.20-0.glibc23.i386.rpm


2、安装客户端


命令:rpm -ivh MySQL-client-5.1.20-0.glibc23.i386.rpm


3、登陆MySQL


登陆MySQL的命令是MySQL,MySQL 的使用语法如下:


MySQL [-u username] [-h host] [-p[password]] [dbname]


username 与 password 分别是 MySQL 的用户名与密码,MySQL的初始管理帐号是root,没有密码,注意:这个root用户不是Linux的系统用户。MySQL默认用户是root,由于初始没有密码,第一次进时只需键入MySQL即可


[root@localhost ~]# MySQL


1、命令


usr/bin/mysqladmin -u root password ''new-password''
   格式:mysqladmin -u用户名 -p旧密码 password 新密码


   2、例子


   例1:给root加个密码123456。


   键入以下命令 :


 

[root@test1 local]# /usr/bin/mysqladmin -u root password 123456


   注:因为开始时root没有密码,所以-p旧密码一项就可以省略了

出现了“MySQL>”提示符,恭喜你,安装成功!


   增加了密码后的登录格式如下:


MySQL -u root -p
   Enter password: (输入密码)
相关文章
|
4天前
|
Linux 开发工具 C语言
Linux 安装 gcc 编译运行 C程序
Linux 安装 gcc 编译运行 C程序
22 0
|
4天前
|
Ubuntu Linux Python
Linux(15)Ubuntu安装ninja构建工具
Linux(15)Ubuntu安装ninja构建工具
15 0
|
7天前
|
NoSQL Linux 测试技术
Redis的安装(Linux版)
Redis的安装(Linux版)
149 1
|
16天前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
90 0
|
17天前
|
Linux C语言
linux yum安装ffmpeg 图文详解
linux yum安装ffmpeg 图文详解
38 0
|
17天前
|
NoSQL Linux Redis
linux 下和win下安装redis 并添加开机自启 图文详解
linux 下和win下安装redis 并添加开机自启 图文详解
17 0
|
17天前
|
Linux
linux yum 安装rar和unrar
linux yum 安装rar和unrar
57 0
|
16天前
|
Linux 网络安全
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
25 1
|
1天前
|
关系型数据库 MySQL Java
Linux 安装 JDK、MySQL、Tomcat(图文并茂)
Linux 安装 JDK、MySQL、Tomcat(图文并茂)
12 2
|
1天前
|
负载均衡 Java 应用服务中间件
nginx安装在linux上
nginx安装在linux上
19 2