为首次使用云VPS进行初始化设置和构建LAMP环境(包括WordPress)的方法
概述
我最近想开始使用WordPress写博客,尽管我是个业余者,但还是试着写了一下开始的步骤。
主要是关于服务器的设置。
虽然使用普通的租用服务器也可以,但出于学习目的以及个人化定制的需求,我选择了VPS。
环境、开源软件
・GMO云VPS服务器租赁
・操作系统CentOS7.4
・Apache2.4
・PHP5.4
・MariaDB(MYSQL)
・Wordpress
最初的设定
首先启动服务器并使用root登录(密码是之前得到的那个)。
尽管GMO有控制台功能,但甚至无法粘贴,非常不方便,所以改用RLogin连接域名。
当时仍使用ID和密码登录,后来改用ssh连接。
首先创建普通用户
由于在root用户下操作存在风险,因此需要创建普通用户。
# useradd (任意のユーザー名) ← 一般ユーザの作成
# passwd (任意のパスワード) ← パスワード設定
→/home/(用户名)/被创建。
接下来,为了让普通用户以root权限执行安装等操作,给予sudo权限。
Note: The translation provided is in simplified Chinese.
visudo
#%wheel ALL=(ALL) ALL
↓
%wheel ALL=(ALL) ALL
刪除註解。
那么,在sudo中添加允许访问的用户。
gpasswd -a ユーザー名 wheel
这样一般用户可以毫无障碍地进行操作。
直接切换到普通用户登录,无需执行root用户操作
顺便提一下,我想要使用ifconfig(或ip a),以便进行操作。
sudo yum install net-tools
变得更方便了呢!
SSH连接
由于在生产环境中,只能使用当前的ID和密码进行登录(而且即使是root用户也可以登录),因此我们决定采用使用公钥和私钥的SSH连接来限制只有普通用户能够登录。
一般用户登录后,即时操作
ssh-keygen -t rsa
ls ~/.ssh
id_rsa id_rsa.pub
cd .ssh
ssh-keygen -i -f id_rsa.pub >> authorized_keys
rm id_rsa.pub
权限设置 shè zhì)
chmod 600 authorized_keys
chmod 600 id_rsa
使用SCP工具将服务器的id_rsa下载到本地并保存。
只需使用域名、用户名和私钥,即可验证普通用户是否能够登录。
然后继续进行安全设置。
vi /etc/ssh/sshd_config
Port 22
PasswordAuthentication no
PermitRootLogin no
设置为。
随后。
systemctl restart sshd.service
不要忘记做这件事。否则不会反映出来。
通过这样设置,除了22号端口以外,不接受其他端口的登录请求,也不能通过密码登录,更无法用root账户登录。
简而言之,只允许一般用户进行SSH连接,因此即使在生产环境中,其安全性也相当强大。
请留意
一定要确保确认能够进行ssh连接后再执行PasswordAuthentication no。否则无法连接,并且需要重新安装操作系统。
Apache的安装
执行Apache安装命令。
sudo yum install httpd
完成安装后,启动Apache并进行自动启动设置。
systemctl start httpd.service
systemctl enable httpd.service
由于端口连接常常无效,所以最好重启防火墙。
systemctl stop firewalld
systemctl start firewalld
尝试通过域名或IP地址进行连接,若出现Apache页面,则表明已成功启动。
安装PHP
$ yum install php php-mysql
$ php -v
PHP 5.4.x
$ cp /etc/php.ini /etc/php.ini.org
$ vi /etc/php.ini
date.timezone =
→date.timezone = "Asia/Tokyo"
安装MariaDB
yum install mariadb mariadb-server
rpm -qa | grep maria
将文字编码更改
vi /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
character-set-server=utf8
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
数据库启动
systemctl enable mariadb.service
systemctl start mariadb.service
创建WordPress数据库
create database testdb
#ユーザー追加
$ mysql -u root
mysql> update mysql.user set password=password('<PASSWORD') where user = 'root';
mysql> flush privileges;
mysql> exit;
$ mysql -u root -p
使用WordPress
cd /tmp
wget http://wordpress.org/latest.tar.gz
vi wp-config.php
define('DB_NAME', 'sample');
define('DB_USER', 'sample');
define('DB_PASSWORD', 'hogehoge');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
(中略)
$table_prefix = 'wp_';
define ('WPLANG', '');
define('WP_DEBUG', false);
如果在连接到http://domein.com/wordpress/wp-admin/index.php之后,没有显示源代码而是出现了初始页面,那就可以了。
大致上使用了LAMP+WordPress