一、前言
安装CentOS7.6过程略,如果需要的话,后期再出一期安装CentOS7.6的,之前听说CentOS出现了漏洞,且政府机关单位等都在推OpenEuler;
注意先修改hostname和ssh连接慢的问题;
二、修改bogon主机名
bogon是指那些不该出现在internet路由表中的地址,包括:
1、私有地址如10,172.16-32,192.168……
2、还未正式分配出去的地址
Linux 主机名被修改成bogon问题的几种解决办法:
当Linux主机名由@localhost变成了@bogon了之后,访问网络就会出现问题,重启后也没有解决。
原理分析
bogon是指那些不该出现在internet路由表的地址。
Linux在初始化系统时,会先判断主机名,如果主机名是localhost或localhost.localdomain,则会获取主机IP地址并执行DNS逆向解析,将解析到的结果赋值给HOSTNAME。问题是,有些DNS服务器,会将私有地址,保留地址这样不应该出现在网络上的IP地址解析成bogon。
所以最好是在安装centos的时候,就直接将主机名配置好;
三、SSH连接慢的问题
安装完Centos7.6之后发现ssh连接的时候很慢;
修改sshd_config文件
安装完Centos7.6之后发现ssh连接的时候很慢;
修改sshd_config文件
=======================================================================
好,前置条件都搞定之后,我们就开始安装VSFTP,安装VSFTP需要联网!
四、安装VSFTP
安装vsftpd,使用命令:
yum -y install vsftp
在联网的状态下,就会自动下载且安装,如下图所示。
检查vsftpd是否安装好了,且能看到版本信息
运行vsftpd
##使用以下命令,让VSFTP开机启动:
systemctl enable vsftpd.service
安装ftp客户端
yum -y install ftp
登陆自己的vsftp,默认允许匿名登录,账户ftp,密码随意;
可以看到默认登陆进去之后,目录在pub,即:
创建组和用户,例如:公司有办公、交易和IT三个部门,那么就创建三个组
再创建三个目录分别对应三个组
创建一个用户backup,该用户属于it部门;
useradd -d /home/it/backup -s /sbin/nologin -g it backup
意思是,创建一个用户backup,该用户属于it组,并关联到/home/it/backup,然后/sbin/nologin的意思是,该用户不能用于ssh/telnet登陆;
然后设置一个密码给backup用户(也可以用交互式,这种方式更便捷)
echo 'admin123' | passwd --stdin backup
可以看到在/home/it目录下有backup目录,且该目录所属用户是backup,组是it;
如果隶属关闭不对应,那么手动再次调整下;
隶属关系搞定后,搞目录的权限问题,一般设置为775,即所有者(读写执行),同组用户(读写执行),其他用户(只有读和执行);
由于设置了backup为不能登陆的用户,所以需要在/etc/shells文件里面添加/sbin/nologin
接着修改/etc/vsftpd/vsftpd.conf文件(标注出来都是需要修改的,没有的保持不变)
最下面的:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30020
是开启被动模式,因为像SCP等工具默认都是使用被动模式,如果不开启就没有办法建立数据连接;
另外,从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。
要修复这个错误,可以用命令chmod a-w /home/user去除用户主目录的写权限,注意把目录替换成你自己的。或者你可以在vsftpd的配置文件中增加下列项:
allow_writeable_chroot=YES
最后的reverse_lookup_enable=NO的作用是能解决登陆FTP慢的问题;
由于启用了锁定用户登录只能在自己的指定目录下,同时又开通了例外,所以需要在/etc/vsftpd/下添加chroot_list目录;
添加chroot_list文件,并更改权限为777;
关闭防火墙
systemctl stop firewall
重启vsftpd
systemctl restart vsftp
测试登陆ftp之后只能看到自己的目录
至此实验就做完了。
结尾附一些参数说明:
/etc/vsftpd/目录下文件的作用。
/etc/vsftpd/vsftpd.conf #vsftpd的主配置文件 /etc/pam.d/vsftpd #这是使用PAM相关模块时用到的文件,用作身份验证之用。 /etc/vsftpd/ftpusers #这个文件相当于一个黑名单,包含了无法登陆FTP的用户。 /etc/vsftpd/ftpuser_list #这个文件既可以作黑名单也可作为白名单,主要看如何设置策略。 /etc/vsftpd/chroot_list #这个文件默认不存在,需要手动建立,用途是将一些用户的根目录锁定在默认目录下,无法进入服务器其他目录。 /etc/sbin/vsftpd #vsftpd的启动文件。 /var/ftp #vsftpd的默认匿名用户登陆的根目录。 |
vsftpd.conf文件内容说明。
anonymous_enable=YES #允许匿名用户登陆 local_enable=YES #允许本地用户登陆 write_enable=YES #允许用户上传 local_umask=022 #默认情况下上传的文件夹权限为777,文件的权限为666,022这个值的意思就是在默认权限的基础上减去022,即把文件可写的权限给去除掉,这样别人就只能读取文件,而不能修改文件 anno_upload_enable=YES #允许匿名用户上传,默认被注释掉 anno_mkdir_write_enable=YES #允许匿名用户创建文件夹,默认被注释掉 dirmessage_enable=YES #当用户进入某个目录时,会显示该目录需要注意的内容,默认文件为.message xferlog_enable=YES #开启客户端上传和下载的日志记录 connect_from_port_20=YES #FTP数据通道端口号 xferlog_std_enable=YES #日志采用标准格式 pam_service_name=vsftpd #用户的认证文件为vsftpd userlist_enable=YES #可以用于检测userlist_file文件中的用户是否可以访问服务器 listen=YES #工作在独立模式下 tcp_wrappers=YES #linux自带的安全保护程序 |