CentOS 7 下 WEB 项目运行环境初始化
来源:互联网 发布:淘宝上网教可靠吗 编辑:程序博客网 时间:2024/06/05 19:00
最近使用阿里云服务器搭建了 WEB 项目的运行开发环境,初始化服务器的过程中主要涉及到了用户管理、防火墙管理和相关软件环境搭建等内容,现将相关操作记录如下。
I. 防火墙
通过 SSH 连接到服务器后,为提高服务器的安全性,首先应确保防火墙开启。
# 启动防火墙systemctl start firewalld.service# 防火墙开机自动启动systemctl enable firewalld.service
开启防火墙时,要同时开放 SSH 连接端口,否则下次 SSH 连接就会被防火墙屏蔽了。为了提高安全性,我们更改一下 SSH 的默认端口后开启更改后的端口。
# 防火墙允许 5432 端口(即打算使用的 SSH 端口)firewall-cmd --permanent --zone=public --add-port=5432/tcp# 重启防火墙firewall-cmd --reload# 修改 SSH 默认端口vi /etc/ssh/sshd_config# 添加 Port=5432# 重启 SSH 服务systemctl restart sshd.service
# 修改 hostnamevi etc/sysconfig/network# 添加 HOSTNAME=namehostnamectl set-hostname=name
II. 用户管理
1) 修改 root 用户密码
使用 root 用户登录后,运行 passwd 命令,根据提示设定新密码。
2) 创建新用户组,并添加用户
groupdd grpadmin# 创建用户并设定密码useradd -g grpadmin usernamepasswd username# 添加为 sudovisudo # 添加 %grpadmin ALL=(ALL) ALL# 允许组中的所有用户执行 sudo 命令。
III. 搭建网站开发环境
1) MySQL 初始化
# 下载安装 MySQL 的 yum 仓库wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpmrpm -ivh mysql-community-release-el7-5.noarch.rpm# 使用 yum 命令安装 MySQL yum install -y mysql-community-server mysql-community-devel# 安装好的 MySQL 应当有以下内容rpm -qa | grep mysql# mysql-community-release-el7-5.noarch# mysql-community-common-5.6.35-2.el7.x86_64# mysql-community-client-5.6.35-2.el7.x86_64# mysql-community-devel-5.6.35-2.el7.x86_64# mysql-community-libs-5.6.35-2.el7.x86_64# mysql-community-server-5.6.35-2.el7.x86_64# 启动 mysql 服务systemctl start mysqld.service
MySQL 默认情况下数据库名及表名是区分大小写的,可以通过修改配置文件,使 mysql 执行 sql 执行 SQL 语句时,对表名大小写不敏感。另外,为了使数据库能够正常存储中文字符,我们要将 mysql 的默认字符集改为 UTF-8 方式。
vi /etc/my.cnf# 在[mysqld]节点下,加入下面两行配置后,重启数据库服务。# Table name case insensitivelower_case_table_names=1# Server default character setcharacter_set_server=utf8
为了提高安全性,删除 mysql 的匿名用户,更改 root 密码
mysql -u rootmysql> use mysql;mysql> delete from user where user='';mysql> update user set password=password("new_pw") where user='root';mysql> flush privileges;
通过命令行也可以更改 root 密码
mysqladmin -u root -p password "new_pw"
但是因为会留下明文操作记录,存在安全风险,因此一般不推荐该方法更改 root 密码。
# 连接数据库mysql -u root -p # 创建新数据库CREATE DATABASE PRJ_DB;# 创建新用户并赋予数据库访问权限GRANT ALL PRIVILEGES ON PRJ_DB.* TO 'new_user_name'@'localhost' IDENTIFIED BY 'password';flush privileges;
这样就创建了一个新用户 new_user_name,其密码为 password,限定在 localhost 登录。
2) 安装 svn 服务器,参考前博文 Configure SVN (Subversion) Server
3) 建立 samba 共享文件夹
mkdir /var/shareyum install -y samba-server samba-client
修改 samba 配置文件
vi /etc/samba/smb.conf[global] workgroup = prjgroup server string = project management security = user passdb backend = tdbsam[share] path = /var/share public = no writable = yes write list = @grpadmin validusers = @grpadmin
其中 grpadmin 是系统中已经存在的用户组。samba 服务器将允许组中成员访问,但是还需要将使用 smbpasswd -a username 将成员加入到 samba 许可名单并为其重新设定密码。
# 启动 samba 服务器systemctl start smb# 开启防火墙firewall-cmd --permanent --add-port=139/tcpfirewall-cmd --permanent --add-port=445/tcp
samba 使用 139 和 445 端口进行通信连接。本地测试
smbclient -L //127.0.0.1/prjshare -U username
通过 windows 系统访问 samba 服务器时,直接在文件浏览器地址栏中输入 \\server ip\share
后就会弹出 ID/密码输入框,之后可以正常访问了。但我是在阿里云服务器上安装的 samba 服务,由于 samba 端口是高危端口,阿里云整体屏蔽了 139 和 445 的端口通信,因此没能成功从外网访问到 samba 服务器。
4) 构建 FTP 服务器
yum install -y vsftpd ftp
其中 vsftpd 是提供 ftp 服务器的软件。ftp 是客户端,如果不需要在本机连接 ftp 服务器,则无需安装 ftp。安装完成后配置 ftp 服务器的基本设置。
vi /etc/vsftpd/vsftpd.conf# 进行以下修改或者添加# 禁止匿名访问anonymous_enable=NO# 使用 linux 系统用户访问 ftp 服务器local_enable=YES# 允许有权限的用户进行写操作write_enable=YES# 指定 ftp 服务器的根目录位置local_root=/var/ftp# 指令端口(默认,无需指明)listen_port=21# 数据端口(默认,无需指明)ftp_data_prot=20# 添加 ftp 用户并指定其密码(ftp 组默认存在)useradd -g ftp -d /var/ftp -s /sbin/nologin ftpuserpasswd ftpuser# 将 ftp 服务器根目录的属主改变成 ftpuserchown ftpuser:ftp -R /var/ftp# 完成配置后,然后开始 ftp 服务器就可以进行访问了。systemctl start vsftpd# 开机启动systemctl enable vsftpd# 开启防火墙firewall-cmd --permanent --add-port=20/tcpfirewall-cmd --permanent --add-port=21/tcpfirewall-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 环境变量即可。
vi /etc/profileexport JAVA_HOME=/opt/jdk1.8export CLASSPATH=:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$PATH:$JAVA_HOME/bin# 删除系统自带的 jdkyum remove javamv /usr/bin/java /usr/bin/java.bakln -s $JAVA_HOME/bin/java /usr/bin/java# 重启操作系统使配置生效reboot
6) 安装 Wildfly 应用服务器
下载 Wildfly 并解压到 /opt 亦即完成安装。
tar -xzvf wildfly-10.1.0.Final.tar.gz -C /opt/
启动 wildfly,首先转到 wildfly 目录下
./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 访问,还需要开放该端口的防火墙访问权限。
firewall-cmd --permanent --add-port=8080/tcpfirewall-cmd --permanent --add-port=8080/tcpfirewall-cmd --reload
wildfly 提供了管理服务器的客户端。通过
./bin/jboss-cli.sh
可以进入管理交互界面(初始时需要设定管理员)
进入交互界面后,运行 connect 命令连接当前开启的 wildfly 服务器进行配置操作。常用的命令有
shutdown #关闭服务器exit #退出连接deploy /path/to/web.war #将 WEB 应用发布到服务器
- CentOS 7 下 WEB 项目运行环境初始化
- CentOS下搭建java web运行环境
- centos 下搭建java web运行环境
- Linux下搭建Web项目运行环境Tomcat+Mysql+Jdk
- Linux下搭建Web项目运行环境Tomcat+Mysql+Jdk
- centos hadoop2.7 环境下配置运行环境
- web项目部署到CentOs 7上运行
- 在Centos 7下搭建Apache + PHP运行环境
- CentOS 7 下搭建lua+luarocks运行环境
- win7环境下.net的web环境搭建及其项目的加载运行
- Linux CentOS下搭建JAVA运行环境
- CentOS下配置Lua运行环境
- centos环境下运行多实例mysql
- CentOS 7 下配置java web 所需要的环境
- CentOS 7 下配置java web 所需要的环境
- centos下IntelliJ IDEA运行java项目
- CentOS下java web环境搭建
- CentOS下搭建Java Web开发环境
- Log4j使用相对路径指定log文件及使用总结
- 求文章的段落的句子个数,句子平均数以及句子的标准差
- 智能一代云平台(三十六):项目中如何做到避免传递依赖
- Java集合类:AbstractCollection源码解析
- TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议
- CentOS 7 下 WEB 项目运行环境初始化
- mysql linux下mysql取消区分大小写
- 远程调试之gdb移植
- pyCharm简单的使用
- 一位面试官推荐要自己写写东西
- SSH框架整体理解和总结
- 扩增子分析QIIME2. 2分析实战Moving Pictures
- ArrayList<类型>名称 ——记事本
- busybox移植到ARM开发板