企业式交互站点

一.大纲内容

1.1· Web服务器介绍(apache/nginx/tomcat)
1.2· Nginx基本使用

获取Nginx
Nginx的官方主页: http://nginx.net
其中最新版本为Nginx的开发版本,之前的版本为当前稳定版本。例如最新版本为0.8.X,则当前稳定版本为0.7.X。
http://nginx.org/en/docs/
http://wiki.nginx.org

Nginx安装:
方式1.
yum安装
方式2. 
源码安装

1. 停止原有web服务器(清除原有yum安装的Nginx服务)
2. # yum install -y gcc pcre pcre-devel openssl openssl-devel gd gd-devel

  .	添加普通用户账号来运行nginx:

  # useradd nginx

  .	解压并安装Nginx:

  # tar xvzf nginx-0.8.55.tar.gz	-C /usr/local	(一般安装到/usr/local安装)

  # cd /usr/local/nginx-0.8.55

   #./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module

  # make

  # make install

  .	启动:

  # /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

   查看命令帮助:
  # /usr/local/nginx/sbin/nginx  -h
   -v		查看nginx版本
[root@localhost yum.repos.d]# nginx -v
nginx version: nginx/1.12.2
   -V		查看编译参数 
   -t		测试默认配置文件
[root@localhost yum.repos.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
   -c 		加载非默认位置配置文件
查看启动状态:
  # ps aux | grep nginx
   root      8416  0.0  0.1   5760   660 ?      Ss   23:29   0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
   nginx     8417  0.0  0.1   5904   992 ?      S    23:29   0:00 nginx: worker process

 # netstat -ntlp | grep 80
   tcp        0      0 0.0.0.0:80    0.0.0.0:*         LISTEN      8416/nginx.conf

测试主页是否可以访问:

 # links 127.0.0.1    //如果显示Welcome to nginx! 则说明服务正常
1.3· Yum方式部署lnmp环境
L = Linux  ;    N = Nginx  ; M = Mysql/Mariadb ;  P = Php

一、基础环境[已完成]
[root@apache ~]# setenforce 0
[root@apache ~]# systemctl stop firewalld.service 
[root@apache ~]# systemctl disable firewalld.service
[root@apache ~]# yum -y install epel-release
二、安装LAMP[已完成]
[root@apache ~]# yum -y install nginx mariadb-server mariadb php php-mysql gd php-gd
[root@apache ~]# systemctl start nginx mariadb
[root@apache ~]# systemctl enable nginx mariadb
1.4· 构建NFS远程共享存储

因为NFS有很多功能,不同的功能需要使用不同的端口。因此NFS无法固定端口。而RPC会记录NFS端口的信息,这样我们就能够通过RPC实现服务端和客户端的RPC来沟通端口信息。

那RPC和NFS之间又是如何之间相互通讯的?

首先当NFS启动后,就会随机的使用一些端口,然后NFS就会向RPC去注册这些端口。RPC就会记录下这些端口。并且RPC会开机111端口,等待客户端RPC的请求,如果客户端有请求,那服务端的RPC就会将记录的NFS端口信息告知客户端。

NFS 重要指数4星
项目名称: 为集群中的 Web Server 配置后端存储

NFS:Network File System 网络文件系统,Unix系统之间共享文件的一种协议
NFS 的客户端主要为Linux

支持多节点同时挂载以及并发写入
nfs           192.168.62.142
web1          192.168.62.136

centos7(服务端和客户端都关闭防火墙和selinux内核防火墙)

# systemctl stop firewalld

# systemctl disable firewalld	

# setenforce 0

# vim /etc/hosts [可选](服务端和客户端都操作)

192.168.62.142  nfs   //服务器
192.168.62.136  web1   //客户端

NFS(此步为说明)
1.安装软件

​    yum -y install rpcbind(提供rpc协议)

​    yum -y install nfs-utils(主包提供文件系统)

2.启动服务------>这两个服务必须同时启用
​        systemctl start nfs
​        systemctl start rpcbind

一、nfs(存储端/服务端)
[root@nas ~]# yum -y install rpcbind
[root@nas ~]# yum -y install nfs-utils
[root@nas ~]# mkdir /zhengzhou                                            //存储网站代码
[root@nas ~]# echo "nfs test..." > /zhengzhou/index.html

[root@nas ~]# vim /etc/exports
/zhengzhou        192.168.122.0/24(rw,no_root_squash)    //不限制root(当client端使用root挂载时,也有root权限)  挂载是root ,同样保持root权限

注意:如果再次修改配置文件。记得重新启动(重新加载)服务

[root@nas ~]# systemctl restart nfs-server
[root@nas ~]# systemctl enable nfs-server

二、web1  客户端
以web1为例:
[root@web1 ~]# yum -y install rpcbind
[root@web1 ~]# yum -y install nfs-utils 


手动挂载 [可选]
[root@web1 ~]# mkdir /qf
[root@web1 ~]# mount  -t  nfs  192.168.122.59 :/zhengzhou  /qf 服务器IP地址
[root@web1 ~]# umount /qf

自动挂载到网站主目录
[root@web1 ~]# vim /etc/fstab
192.168.122.59 :/zhengzhou      /qf          nfs     defaults        0 0
[root@web1 ~]# mount -a

查看挂载
[root@web1 ~]# df	-Th
192.168.122.59:/zhengzhou    7923136 692416   6821568  10% /qf
[root@web1 ~]# ls /qf
index.html
[root@web1 qf]# cat index.html 
nfs test...

1.5.ftp及lftp服务

FTP Server 重要指数4星

作用:提供文件共享服务

一、FTP基础
软件包: vsftpd
FTP端口: 控制端口 command 21/tcp hih
配置文件: /etc/vsftpd/vsftpd.conf

ftp主动模式:

ftp主动模式:客户端开启一个端口N(>1023)向服务端的21端口,建立连接,同时开启一个N+1,告诉服务端,我监听的是N+1端口,服务端接到请求之后,用自己的20端口连接到客户端的N+1端口,进行传输

ftp被动模式:

ftp被动模式:客户端同时开启两个端口(1024,1025),一个端口(1024)跟服务端的21端口建立连接,并请求,大哥,我连上了,你再开一个端口呗。服务端接到请求之后,随机会开启一个端口(1027)并告诉客户端我开启的是1027端口,客户端用另一个端口(1025)与服务端的(1027)端口进行连接,传输数据

默认使用被动模式

二、vsftpd默认配置
FTP Server(服务端)

[root@youngfit ~]# yum -y install vsftpd		//下载ftp服务
[root@youngfit ~]# systemctl start vsftpd		//启动ftp服务

centos7

[root@iZwz9f17um10wphrf38ni8Z ~]# touch /var/ftp/test.txt

[root@iZwz9f17um10wphrf38ni8Z ~]#chmod 777 /var/ftp/pub

[root@iZwz9f17um10wphrf38ni8Z ~]# systemctl enable vsftpd	//将ftp服务设置为开机启动

默认firewalld/SELinux已关闭,如果未关闭:

[root@aliyun ~]# systemctl stop firewalld		
[root@aliyun ~]# setenforce 0

FTP默认共享目录:/var/ftp

FTP Clinet(客户端):
lftp命令

[root@youngfit ~]# yum -y install lftp
[root@youngfit ~]# vim /etc/hosts
10.18.40.100	youngfit.com

get命令(下载,首先要开启下载功能)
[root@youngfit ~]# lftp youngfit.com
lftp youngfit.com:~> ls                          
drwxr-xr-x    2 0        0            4096 Mar 31  2016 pub
-rw-r--r--    1 0        0               0 Nov 22 03:53 test.txt
lftp youngfit.com:/> get test.txt		//从服务端上下载test.txt文件

put命令(上传命令,上传之前请在服务端进行配置,将上传功能打开)
[root@youngfit ~]# lftp 10.18.40.100
lftp 10.18.40.100:/pub> put /home/upload.txt		//上传文件


[root@youngfit ~]# lftp 10.18.40.100
lftp 10.18.40.100:/pub> put -r /home				//上传目录及下面的子目录

wget(下载命令,下载之前请在服务端进行配置,将下载功能打开)
服务端:
[root@ftp ftp]# ls /var/ftp/
pub  test  test.txt

客户端:
[root@youngfit ~]# wget --help |less
[root@youngfit ~]# wget ftp://10.18.40.100/test.txt
[root@youngfit ~]# wget ftp://10.18.40.100/test.txt -P /tmp/ //-P参数 下载到指定路径
[root@youngfit ~]# wget ftp://10.18.40.100/test.txt -O /tmp/a.sh  //-O 参数,下载到指定路径并修改名称
[root@youngfit ~]# wget -m ftp://youngfit.com/test //-m 参数,将目录一并下载

[root@youngfit ~]# lftp alice@youngfit.com   //默认看到的是alice家目录下的内容
Password: 
lftp alice@youngfit.com:~> ls        
-rw-r--r--    1 0        0            1523 Nov 22 04:25 alice.txt
lftp alice@youngfit.com:~> pwd
ftp://alice@youngfit.com/%2Fhome/alice
lftp alice@youngfit.com:~> put /etc/hosts

默认使用匿名用户 ftp访问,HOME(家目录)为/var/ftp,默认仅能下载文件

系统用户: alice,HOME /home/alice,默认可下载及上传

三、基本配置,例如实现访问控制
注意: 指令中的空格,指令错误,指令重复

!!!!!这些功能都是服务端控制,所以修改的是服务端的配置文件!

[root@youngfit ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES           //是否允许匿名用户登录ftp   YES为允许 NO为拒绝
local_enable=YES                //是否允许本地用户登录(比如alice)
write_enable=YES                //是否允许写(全局)
local_umask=022                 //控制本地用户上传文件的默认权限,umask表示要减掉的权限(666-)
anon_umask=022                  //控制匿名用户上传文件的默认权限 

download_enable=YES           //是否允许下载文件

anon_upload_enable=YES   //允许上传文件
anon_mkdir_write_enable=YES   //允许上传目录

anon_max_rate=500000           //匿名用户限速
local_max_rate=80000              //本地用户限速
max_clients=500                      //ftp最大连接数
max_per_ip=2                         //单个IP最大连接数,线程数


服务器关闭被动模式:
    #vim  /etc/vsftpd/vsftpd.conf
       pasv_enable=NO

配置测试(每次加入新配置,都需要重启ftp服务):

案例1:

local_enable=YES                //是否允许本地用户登录(比如alice)

ftp服务端:
[root@ftp ~]# cd /home/kobe/
[root@ftp kobe]# ls
haha

ftp客户端:
[root@web1 ~]# lftp kobe@192.168.62.240
Password: 
lftp kobe@192.168.62.240:~> ls         
drwxr-xr-x    2 0        0               6 Jan 05 11:31 haha

案例2:

anon_upload_enable=YES   //允许上传文件
anon_umask=022                  //控制匿名用户上传文件的默认权限 (666-)

客户端:
[root@web1 ~]# lftp 192.168.62.240
lftp 192.168.62.240:~> ls              
drwxrwxrwx    2 0        0               6 Jan 05 11:36 pub
drwxrwxrwx    2 0        0              24 Jan 05 11:24 test
-rw-r--r--    1 0        0               0 Jan 05 11:01 test.txt
lftp 192.168.62.240:/> cd pub/
lftp 192.168.62.240:/pub> ls
lftp 192.168.62.240:/pub> put  /home/upload.txt 
9 bytes transferred

服务端:
[root@ftp pub]# pwd
/var/ftp/pub
[root@ftp pub]# ll
total 4
-rw-r--r--. 1 ftp ftp 9 Jan  5 19:36 upload.txt

案例3

max_per_ip=2                         //单个IP最大连接数,线程数

同一个客户端,开三个终端去连接ftp服务

第三个会连接失败

案例4

anon_max_rate=5           //匿名用户限速

服务端:
[root@ftp pub]# dd </dev/zero  >/var/ftp/pub/file1.txt bs=10M count=50
50+0 records in
50+0 records out
524288000 bytes (524 MB) copied, 5.0535 s, 104 MB/s

客户端:

注释掉限速配置之后

客户端:

案例: 使用FTP共享YUM源
Server(服务端10.18.40.100):

[root@yangs ~]# mkdir /var/ftp/centos7u3			//创建一个目录
[root@yangs ~]# mount  /dev/cdrom /var/ftp/centos7u3		//挂载镜像
[root@yangs ~]# echo “mount   /dev/cdrom   /var/ftp/centos7u3”  >> /etc/rc.d/rc.local	//设置开机挂载
[root@yangs ~]# chmod +x /etc/rc.d/rc.local	//给予脚本权限

Client(客户端):

[root@youngfit ~]# vim /etc/yum.repos.d/centos7.repo 
[centos7u3]
name=centos7u3
baseurl=ftp://10.18.40.100/centos7u3
gpgcheck=0
enabled=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值