CentOS 7 下 WEB 项目运行环境初始化

前端之家收集整理的这篇文章主要介绍了CentOS 7 下 WEB 项目运行环境初始化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

最近使用阿里云服务器搭建了 WEB 项目的运行开发环境,初始化服务器的过程中主要涉及到了用户管理、防火墙管理和相关软件环境搭建等内容,现将相关操作记录如下。
I. 防火墙
通过 SSH 连接到服务器后,为提高服务器的安全性,首先应确保防火墙开启。

  1. # 启动防火墙
  2. systemctl start firewalld.service
  3. # 防火墙开机自动启动
  4. systemctl enable firewalld.service

开启防火墙时,要同时开放 SSH 连接端口,否则下次 SSH 连接就会被防火墙屏蔽了。为了提高安全性,我们更改一下 SSH 的默认端口后开启更改后的端口。

  1. # 防火墙允许 5432 端口(即打算使用的 SSH 端口)
  2. firewall-cmd --permanent --zone=public --add-port=5432/tcp
  3. # 重启防火墙
  4. firewall-cmd --reload
  5. # 修改 SSH 默认端口
  6. vi /etc/ssh/sshd_config
  7. # 添加 Port=5432
  8. # 重启 SSH 服务
  9. systemctl restart sshd.service
  1. # 修改 hostname
  2. vi etc/sysconfig/network
  3. # 添加 HOSTNAME=name
  4. hostnamectl set-hostname=name

II. 用户管理
1) 修改 root 用户密码
使用 root 用户登录后,运行 passwd 命令,根据提示设定新密码。
2) 创建新用户组,并添加用户

  1. groupdd grpadmin
  2. # 创建用户并设定密码
  3. useradd -g grpadmin username
  4. passwd username
  5. # 添加为 sudo
  6. visudo
  7. # 添加 %grpadmin ALL=(ALL) ALL
  8. # 允许组中的所有用户执行 sudo 命令。

III. 搭建网站开发环境
1) MysqL 初始化

  1. # 下载安装 MysqL 的 yum 仓库
  2. wget http://dev.MysqL.com/get/MysqL-community-release-el7-5.noarch.rpm
  3. rpm -ivh MysqL-community-release-el7-5.noarch.rpm
  4. # 使用 yum 命令安装 MysqL
  5. yum install -y MysqL-community-server MysqL-community-devel
  6. # 安装好的 MysqL 应当有以下内容
  7. rpm -qa | grep MysqL
  8. # MysqL-community-release-el7-5.noarch
  9. # MysqL-community-common-5.6.35-2.el7.x86_64
  10. # MysqL-community-client-5.6.35-2.el7.x86_64
  11. # MysqL-community-devel-5.6.35-2.el7.x86_64
  12. # MysqL-community-libs-5.6.35-2.el7.x86_64
  13. # MysqL-community-server-5.6.35-2.el7.x86_64
  14.  
  15. # 启动 MysqL 服务
  16. systemctl start MysqLd.service

MysqL 默认情况下数据库名及表名是区分大小写的,可以通过修改配置文件,使 MysqL 执行 sql 执行 sql 语句时,对表名大小写不敏感。另外,为了使数据库能够正常存储中文字符,我们要将 MysqL 的默认字符集改为 UTF-8 方式。

  1. vi /etc/my.cnf
  2. # 在[MysqLd]节点下,加入下面两行配置后,重启数据库服务。
  3. # Table name case insensitive
  4. lower_case_table_names=1
  5.  
  6. # Server default character set
  7. character_set_server=utf8

为了提高安全性,删除 MysqL 的匿名用户,更改 root 密码

  1. MysqL -u root
  2. MysqL> use MysqL;
  3. MysqL> delete from user where user='';
  4. MysqL> update user set password=password("new_pw") where user='root';
  5. MysqL> flush privileges;

通过命令行也可以更改 root 密码

  1. MysqLadmin -u root -p password "new_pw"

但是因为会留下明文操作记录,存在安全风险,因此一般不推荐该方法更改 root 密码。

  1. # 连接数据库
  2. MysqL -u root -p
  3. # 创建新数据库
  4. CREATE DATABASE PRJ_DB;
  5. # 创建新用户并赋予数据库访问权限
  6. GRANT ALL PRIVILEGES ON PRJ_DB.* TO 'new_user_name'@'localhost' IDENTIFIED BY 'password';
  7. flush privileges;

这样就创建了一个新用户 new_user_name,其密码为 password,限定在 localhost 登录
2) 安装 svn 服务器,参考前博文 Configure SVN (Subversion) Server
3) 建立 samba 共享文件

  1. mkdir /var/share
  2. yum install -y samba-server samba-client

修改 samba 配置文件

  1. vi /etc/samba/smb.conf
  2.  
  3. [global]
  4. workgroup = prjgroup
  5. server string = project management
  6. security = user
  7. passdb backend = tdbsam
  8. [share]
  9. path = /var/share
  10. public = no
  11. writable = yes
  12. write list = @grpadmin
  13. validusers = @grpadmin

其中 grpadmin 是系统中已经存在的用户组。samba 服务器将允许组中成员访问,但是还需要将使用 smbpasswd -a username 将成员加入到 samba 许可名单并为其重新设定密码。

  1. # 启动 samba 服务器
  2. systemctl start smb
  3. # 开启防火墙
  4. firewall-cmd --permanent --add-port=139/tcp
  5. firewall-cmd --permanent --add-port=445/tcp

samba 使用 139 和 445 端口进行通信连接。本地测试

  1. smbclient -L //127.0.0.1/prjshare -U username

通过 windows 系统访问 samba 服务器时,直接在文件浏览器地址栏中输入
\\server ip\share 后就会弹出 ID/密码输入框,之后可以正常访问了。但我是在阿里云服务器上安装的 samba 服务,由于 samba 端口是高危端口,阿里云整体屏蔽了 139 和 445 的端口通信,因此没能成功从外网访问到 samba 服务器。
4) 构建 FTP 服务器

  1. yum install -y vsftpd ftp

其中 vsftpd 是提供 ftp 服务器的软件。ftp 是客户端,如果不需要在本机连接 ftp 服务器,则无需安装 ftp。安装完成后配置 ftp 服务器的基本设置。

  1. vi /etc/vsftpd/vsftpd.conf
  2. # 进行以下修改或者添加
  3. # 禁止匿名访问
  4. anonymous_enable=NO
  5. # 使用 linux 系统用户访问 ftp 服务器
  6. local_enable=YES
  7. # 允许有权限的用户进行写操作
  8. write_enable=YES
  9. # 指定 ftp 服务器的根目录位置
  10. local_root=/var/ftp
  11. # 指令端口(默认,无需指明)
  12. listen_port=21
  13. # 数据端口(默认,无需指明)
  14. ftp_data_prot=20
  15.  
  16. # 添加 ftp 用户并指定其密码(ftp 组默认存在)
  17. useradd -g ftp -d /var/ftp -s /sbin/nologin ftpuser
  18. passwd ftpuser
  19.  
  20. # 将 ftp 服务器根目录的属主改变成 ftpuser
  21. chown ftpuser:ftp -R /var/ftp
  22.  
  23. # 完成配置后,然后开始 ftp 服务器就可以进行访问了。
  24. systemctl start vsftpd
  25. # 开机启动
  26. systemctl enable vsftpd
  27.  
  28. # 开启防火墙
  29. firewall-cmd --permanent --add-port=20/tcp
  30. firewall-cmd --permanent --add-port=21/tcp
  31. firewall-cmd --reload

在 win 操作系统访问 ftp 服务器时,通过客户端软件访问是比较方便,但可能会需要额外的设定。例如我们使用 Xftp 连接 ftp 服务器时,为了解决可能存在的客户段 PC 防火墙问题,可选择主动连接方式(关于 FTP 的主动连接和被动连接,请参考其它相关资料)。为了解决中文字符乱码问题,可设置使用 UTF-8 方式解析文件或目录名。另外需要注意的是,在服务器端创建的中文目录名,在 win 操作系统电脑上访问时,可能会出现无法写入文件的问题,因此,一般可以直接在客户端管理所有 ftp 文件文件目录,不但方便,也能防止由于编码方式不同导致的文件写入目录失败的问题。
5) 安装 Oracle JDK
CentOS 自带的 open jdk 有时候不能满足需要,我们可将其替为 Oracle JDK 环境。只需下载 jdk 1.8 并解压到 /opt/jdk1.8 文件夹下,配置 java 环境变量即可。

  1. vi /etc/profile
  2. export JAVA_HOME=/opt/jdk1.8
  3. export CLASSPATH=:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  4. export PATH=$PATH:$JAVA_HOME/bin
  5.  
  6. # 删除系统自带的 jdk
  7. yum remove java
  8. mv /usr/bin/java /usr/bin/java.bak
  9. ln -s $JAVA_HOME/bin/java /usr/bin/java
  10. # 重启操作系统使配置生效
  11. reboot

6) 安装 Wildfly 应用服务器
下载 Wildfly 并解压到 /opt 亦即完成安装。

  1. tar -xzvf wildfly-10.1.0.Final.tar.gz -C /opt/

启动 wildfly,首先转到 wildfly 目录下

  1. ./bin/standalone.sh -b 0.0.0.0

其中 -b 参数指定为 0.0.0.0 允许以任何 IP 地址(也可以指定为特定的 IP 地址)向服务器发送 http 请求,访问发布到 wildfly 的应用。如果不指定,wildfly 默认情况下只允许 127.0.0.1 访问已发布的应用。另外 wildfly 的 web 应用默认端口为 8080,如果需要从其它 IP 访问,还需要开放该端口的防火墙访问权限。

  1. firewall-cmd --permanent --add-port=8080/tcp
  2. firewall-cmd --permanent --add-port=8080/tcp
  3. firewall-cmd --reload

wildfly 提供了管理服务器的客户端。通过

  1. ./bin/jboss-cli.sh

可以进入管理交互界面(初始时需要设定管理员
进入交互界面后,运行 connect 命令连接当前开启的 wildfly 服务器进行配置操作。常用的命令有

  1. shutdown #关闭服务器
  2. exit #退出连接
  3. deploy /path/to/web.war #将 WEB 应用发布到服务器

猜你在找的CentOS相关文章