一、 FTP Server
FTP协议是文件传输协议,FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中应用层的协议之一,用于文件的双向传输,它的作用就是让用户连接到远程计算机,查看有哪些文件,下载或上传文件。互联网上多的媒体资源和软件资源。绝大部分都是通过FTP服务器传递。在centos中自带的ftp软件是vsftpd。
1. FTP配置
(1)yum -y install vsftpd
(请提前准备好YUM源)
![120c77acb7e62571973a4a607d86bab7.png](https://i-blog.csdnimg.cn/blog_migrate/84d2fc9c7d9202246ff18e508af1672c.png)
(2)准备分发的文件
软件安装好默认的分发文件目录再/var/ftp/中,所以准备分发文件
![563eec0d694fef65f894b7d674a81a91.png](https://i-blog.csdnimg.cn/blog_migrate/8c4f626aee1bd342db45047687a1c45c.png)
(3)启动服务
工作准备好将服务启动
![6107127bbb63b61deb1b528656844ca6.png](https://i-blog.csdnimg.cn/blog_migrate/f9b31cfd203fcda01f1dbd73e7581885.png)
(4)关闭防火墙
暂时关闭防火墙命令
![9e00aa4f9aa21ce85ad0a4f4ecf60e9f.png](https://i-blog.csdnimg.cn/blog_migrate/733c519cbd8b328c88d1bf94d3bcf514.png)
永久关闭防火墙需要
![0ddda3e3c4785bc88653449395aff636.png](https://i-blog.csdnimg.cn/blog_migrate/fe8bf030c72cebd5bb08bc6c8da93b1f.png)
则每次开机防火墙不会开启
2. FTP Clinet
(1) 真机电脑浏览器访问
打开浏览器输入“ftp://服务器IP地址”
![8597ecf275cc5580ca83ccdc051fa45d.png](https://i-blog.csdnimg.cn/blog_migrate/3c2bf7c5f7a4b72821d64c47a4bee329.png)
发现出现了我们在服务器上面创建的文件,点击此文件可调用浏览器下载器进行下载,由此实现了搭建文件传输的服务器。
(2) LinuxFTP客户端程序
在没有图形界面的Linux系统应该怎么办呢? 方法一 使用lftp工具 先下载安装
![776c62476400b3c4033594d80104d5fc.png](https://i-blog.csdnimg.cn/blog_migrate/c249ca7b84adf8959d87825d180572e8.png)
访问服务器 lftp 服务器的IP地址
![4ffa81a2c3912e5e9962e0aadcc97ac5.png](https://i-blog.csdnimg.cn/blog_migrate/44e2ccac437d04d21b0240fd9cdcb10e.png)
就进入了此服务器的根目录 查看并下载
![feb23d8538897f9acdd2e706f7f0c8f3.png](https://i-blog.csdnimg.cn/blog_migrate/7fe3f57d42c73acdbb798388f9e431b8.png)
方法二 使用wget工具 先安装客户端
![dd611d4f2e1d41f333469f08a650c819.png](https://i-blog.csdnimg.cn/blog_migrate/22794d0412f3ee8c60c553f1ccb592f7.png)
下载文件
![67cdb0cad36439d9dff1a0c96757a5c8.png](https://i-blog.csdnimg.cn/blog_migrate/1563b5599cdb9cffcd9e77594a99a70a.png)
查看下载成功
![0d1085000b95f8778909fa257eb7faf5.png](https://i-blog.csdnimg.cn/blog_migrate/aa3aeb955002597d8aa45b571c82cd07.png)
其他下载用法
![ee3b4449f0dee19de289a3692b8b02a6.png](https://i-blog.csdnimg.cn/blog_migrate/c6f32eac5ffd3f2e82118f3721e260af.png)
3. 启动上传功能
用于设定FTP服务器的功能开启或关闭的文件 /etc/vsftpd/vsftpd.conf
步骤如下:
anonymous_enable
(1)先用cp将此文件备份一份
![13a4f7446f098700e6fce3fb456f9554.png](https://i-blog.csdnimg.cn/blog_migrate/76a05c272268468e5d626cf657773df9.png)
(2)修改配置文件
vim /etc/vsftpd/vsftpd.conf,将这两行前的“#”删除 保存退出
![d9cd000262cc799fbddfeb262b32fe4d.png](https://i-blog.csdnimg.cn/blog_migrate/ca6395774bf90689dd43c90c5bacba37.png)
(3)重启ftp程序
systemctl restart vsftpd
![4a8eb10a0a9d6455fccdc7c9bf88bb86.png](https://i-blog.csdnimg.cn/blog_migrate/d0fdb9d4eb0ff6676aabd696d2ba87d7.png)
(4)创建上传目录
上传文件时,一定要来这个目录。
mkdir /var/ftp/upload
chmod 777 /var/ftp/upload
![29de70ae9bf8665ec14a6428f6f60cff.png](https://i-blog.csdnimg.cn/blog_migrate/279a3a6cb7a3c94b2d6b1dc5de6b1d68.png)
(5)客户端测试
换一个客户端
![868bcfc8ddd417f7c7ebf8922d9faad2.png](https://i-blog.csdnimg.cn/blog_migrate/a94d22d7908049bdbe2dea8b34eadbe7.jpeg)
(6) 常见基本配置(了解)
基本配置,例如实现访问控制
[了解] 注意: 指令中的空格,指令错误,指令重复
[root@hell ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES //是否允许匿名用户登录
ftp local_enable=YES //是否允许本地用户登录
alice write_enable=YES //是否允许写(全局)
local_umask=022 //控制本地用户上传文件的默认权限,umask表示666要减掉的权限,默认没有执行。
chroot: 锁定本地用户HOME
方法一:部分用户
chroot chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/chroot_list alice 然后alice就被锁定在了主目录中。
方法二:所有本地用户
chroot chroot_local_user=YES #chmod -w /home/alice //用户对家目录要减掉W权限。
anon_max_rate=500000 //匿名用户限速
local_max_rate=80000 //本地用户限速
max_clients=500 //ftp最大连接数
max_per_ip=2 //单个IP最大连接数,线程数
local_root=/ftproot //指定本地用户访问的root目录
anon_root=/anonroot //指定匿名用户访问的root目录
anon_umask=077 //控制匿名用户上传文件的默认权限 (注意另外6条配置) anon_umask=077 //控制匿名用户上传文件的默认权限 ,请使用下方6条配置,开启匿名上传的权限。
要满足一下条件
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
# chmod 777 /var/ftp/upload
二、 NFS Server
1. 名词解释
NFS:Network File System 网络文件系统,Linux/Unix系统之间共享文件的一种协议。NFS 的客户端主要为Linux,支持多节点同时挂载,以及并发写入。
2. 作用
提供文件共享服务,为 Web Server 配置集群中的后端存储,它可以极其方便的用一台服务器实现控制多台服务器的文件的更新和管理。
3. 配置环境
准备环境 服务器nas储存端 10.8.162.121 服务器web客户端 10.8.162.157 服务器web客户端 10.8.162.158 关闭防火墙
4. nas储存端
(1)NAS
Network Attached Storage:网络附属存储 NFS是NAS的一种
NFS(Network File System)即网络文件系统的缩写,由Sun公司研发,其目的是为了解决网络文件共享的问题。用户可以实现像挂载本地文件系统一样挂载NFS服务器的共享目录;其具有配置简单、使用高效的特点,但只能在Linux系统使用,不能跨平台使用。
(2)安装NFS服务器
![45bb59196552d2ab5a0296ee5ec6875e.png](https://i-blog.csdnimg.cn/blog_migrate/80d5a797646726fa0d61a4782f89b428.png)
创建储存发送的文件夹和测试文件
![226057eefd4a12e26e30ef22313a3f9d.png](https://i-blog.csdnimg.cn/blog_migrate/f4e259d7254f54df3f4974e1c549a5be.png)
(3)配置NFS服务器
进入服务配置文件
![76403c47b561d2b517c86aee9f09ad7e.png](https://i-blog.csdnimg.cn/blog_migrate/4d2e287cf5109870b2e8f27fc9e2926e.png)
进行配置
![0ff68c61c6bc183e6fc90926cea716f3.png](https://i-blog.csdnimg.cn/blog_migrate/2cb95921735a4a26a96976320c9a0b33.png)
注释:/webdata指的是发布资源的目录;192.168.137.0/24允许访问NFS的客户机;(rw)可读可写。
192.168.137.0/24表示的IP范围
192.168.2.0换成32位二进制,四组,每组8位
/24 表示前24位不变,后8位由全0变化到全1的过程,也就是由“00000000”变化到“11111111” 又因为全0是子网网络地址,全1是子网广播地址,这两个地址是不分配给主机使用的。 所以有效的可分配的范围是前24位不变,后8位由“00000001”变化为“11111110”的范围 再转换回十进制就是192.168.2.1~192.168.2.254
(read-write
(4)启动NFS服务器
![ea224397de3c320cceee3f99c9756d10.png](https://i-blog.csdnimg.cn/blog_migrate/ed42341f8f5556574347547a072167fd.png)
5. web客户端
以下为web服务器操作(不是nfs服务器)
(1) 安装NFS客户端
![6ed7deb70992de7b3c2ee7bc7e2a07cc.png](https://i-blog.csdnimg.cn/blog_migrate/87703220ee9b648c5597919f71d422a3.png)
启动服务
![e18736ef003e2af7c11b6c2760a0cbc8.png](https://i-blog.csdnimg.cn/blog_migrate/a0750ca0e602ccc798e14a8294ccad4a.png)
(2) 查看储存端共享
查看nfs服务器提供的服务对象
![5bf139318802bacf02ea8c28815cd8d2.png](https://i-blog.csdnimg.cn/blog_migrate/e97d0656b3319af89544f942847b9e30.jpeg)
(3) 手动网络挂载
![9a823c65b6799205b1b135672c7326aa.png](https://i-blog.csdnimg.cn/blog_migrate/883b28e3363ad466c050c9574d999a72.png)
注释: mount -t nfs 192.168.142.133:/webdata /var/www/html 挂载命令 类型 nfs类型 nfs服务器地址:nfs输出目录 本地目录
(4) 查看挂载
![b2fa6b9d6f833124a05553ae37064600.png](https://i-blog.csdnimg.cn/blog_migrate/e350aa4e24c1e3d6fd9f7adafe8ab350.png)
进入文件发现nfs服务器的文件已经同步
![4f6bd2a8ea5c7f9a1adee6106050eef1.png](https://i-blog.csdnimg.cn/blog_migrate/e12aadcf2e58151911e5a61bfc273ca2.png)
(5) 使用web客户端查看web服务器
![5e22691242e9befbfed53795d7a832a2.png](https://i-blog.csdnimg.cn/blog_migrate/6f10214b0a51da169be161b276787c90.jpeg)
测试nfs客服端的同步功能 –nfs客户端–
![da999cf009cbb36fc7ac753293a928b3.png](https://i-blog.csdnimg.cn/blog_migrate/5945b80c58e4265520a73ac52e65499e.png)
浏览器查看web服务器
![f51f88ec802645394f2c117e95d40a61.png](https://i-blog.csdnimg.cn/blog_migrate/d76e52396021c3fe9e68618b1590fb24.jpeg)
搭建成功
Linux操作系统之网站服务
一、概念
1、名词
HTML: HyperText Markup Language 超级 文本 标记 语言
网页: 使用HTML,PHP,JAVA语言格式书写的文件。
主页: 网页中呈现用户的第一个页面。
网站: 多个网页组合而成的一台网站服务器
URL: Uniform Resource Locator 统一资源定位符 访问网站的地址
2、网站架构
LAMP: Linux + Apache + MySQL + PHP 系统+服务器程序+数据管理软件+中间软件
二、静态站点
1、Apache基础
Apache官网: http://www.apache.org
软件包名称: httpd
服务端口: 80/tcp(http) 443/tcp(https)
主配置文件: /etc/httpd/conf/httpd.conf
子配置文件:/etc/httpd/conf.d/*.conf
主目录:/var/www/html (网站源代码默认位置)
2、安装Apache
[root@localhost ~]# yum -y install httpd
//安装
[root@localhost ~]# systemctl start httpd
//启动
[root@localhost ~]# systemctl status httpd
//查看服务状态
[root@localhost ~]# systemctl enable httpd
//开机自启
[root@localhost ~]# systemctl stop firewalld
//关闭防火墙
[root@localhost ~]# setenforce 0
//关闭selinux
[root@localhost ~]# systemctl stop firewalld
//关闭防火墙
[root@localhost ~]# httpd -v
//查看版本
Server version: Apache/2.4.6 (CentOS)
//输出信息
3、虚拟主机
① 目的
虚拟主机VirtualHost 作用:在一台物理服务器上运行多个网站
② 类型
基于主机名 http://www.a.org http://www.b.org
基于端口
192.168.1.10:80 192.168.1.10:81
基于ip 192.168.1.1 192.168.1.2
③ http://www.a.org站点设置 (基于主机的)这个只能在自己的电脑上访问
[root@localhost ~]# mkdir /a.org //准备网站源码目录
[root@localhost ~]# # vim /var/www/html/a.org/index.html //输入网页内容,a.com.com.com
# vim /etc/httpd/conf.d/a.org.conf
<VirtualHost *:80> //某个虚拟主机
ServerName www.a.org //服务器起个名字
DocumentRoot /var/www/html/a.org //网站的根目录
</VirtualHost>
检测配置文件语法,重启服务
# httpd -t
# systemctl restart httpd
http://www.b.org站点设置
基本上与a没有区别,但是在配置文件里需要授权。
[root@localhost ~]# vim /etc/httpd/conf.d/b.org.conf
<VirtualHost *:80>
ServerName www.b.org
DocumentRoot /b.org
</VirtualHost>
<Directory "/b.org"> //授权
Require all granted
</Directory>
最后重启一下服务就可以了。没有报错的话,就是成功了。
客户端
Linux客户端域名解析
[root@localhost ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.8.162.122 www.a.org //填写web的服务器ip
10.8.162.122 www.b.org
Linux客户端测试网站可用性
yum install -y elinks
elinks http://www.b.org //字符测试
Windows客户端域名解析
![b076ab0f1acb608093c0ccdb1d42669c.png](https://i-blog.csdnimg.cn/blog_migrate/1e93728ae443c4e21d31a11c0ceba751.jpeg)
![584fd4fad6136c28dd8b3fea926d1451.png](https://i-blog.csdnimg.cn/blog_migrate/7f6bb134ce084f63909c9b5dff3e7ae4.jpeg)
保存以后,输入网址就可以看到了~
④ 基于端口
在阿里云上购买了一个云服务器,在此基础上使用不同的端口访问网站。默认的80端口已经使用,创建一个使用81的端口访问的网站。
[root@iZm5ejcjzw3iol3s83agtrZ ~]# rz
[root@iZm5ejcjzw3iol3s83agtrZ ~]# ls
bb bb.zip jspvz.zip
![64dc8c4bd1c724e22b9a36b37a958e07.png](https://i-blog.csdnimg.cn/blog_migrate/3aa0400a09e3676fd60facb6e4c81498.png)
[root@iZm5ejcjzw3iol3s83agtrZ ~]# mkdir /var/www/j
[root@iZm5ejcjzw3iol3s83agtrZ ~]# unzip jspvz.zip
![991f8424c87f968c36b70903f234548b.png](https://i-blog.csdnimg.cn/blog_migrate/ed13d6b92d0a13da4c41d43eb5bd3e75.jpeg)
[root@iZm5ejcjzw3iol3s83agtrZ ~]# ls
bb bb.zip jspvz jspvz.zip
![8ef09cc1f94d094e0040aa232de7b1ae.png](https://i-blog.csdnimg.cn/blog_migrate/090360f399836f7b1be8791970223351.png)
<VirtualHost
![3886f1337b916cdbfa1d8b03e6e2c679.png](https://i-blog.csdnimg.cn/blog_migrate/8ef776f77b80c3fa39ceb63c0a12287c.jpeg)
在配置文件中写了端口以后,需要在主配置文件中添加81的端口。
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
![87ba7ff41a8dd0d6c0e64fb6a93f97bf.png](https://i-blog.csdnimg.cn/blog_migrate/f40da7c35a4d147abb6419ecf5eab58e.png)
![765473a8405911bd6a464c4039f7289e.png](https://i-blog.csdnimg.cn/blog_migrate/24e14fdbb6f258e40348c0e944344bcb.png)
[root@iZm5ejcjzw3iol3s83agtrZ ~]# systemctl restart httpd
[root@iZm5ejcjzw3iol3s83agtrZ ~]# ss -anptu | grep httpd //查看开启的端口
tcp LISTEN 0 128 *:80 *:* users:(("httpd",pid=11273,fd=3),("httpd",pid=11267,fd=3),(httpd",pid=11266,fd=3),("httpd",pid=11265,fd=3),("httpd",pid=11264,fd=3),("httpd",pid=11263,fd=3),("httpd",pid=11262,fd=3))
tcp LISTEN 0 128 *:81 *:* users:(("httpd",pid=11273,fd=4),("httpd",pid=11267,fd=4),(httpd",pid=11266,fd=4),("httpd",pid=11265,fd=4),("httpd",pid=11264,fd=4),("httpd",pid=11263,fd=4),("httpd",pid=11262,fd=4))
![a6c257ed0c7a3dd020b441c93e9453d4.png](https://i-blog.csdnimg.cn/blog_migrate/5f0ab4bc94551e3204a0d000dd5fd852.jpeg)
最后需要去阿里云增加端口。
![136f502f54aae7c6dea9dfdb1db37ad7.png](https://i-blog.csdnimg.cn/blog_migrate/dbe2d4d3c340ed18cd0078bfc80d3185.jpeg)
最后在浏览器中输入ip地址加端口号,就可以访问了。