#1.はじめに
こんにちわ、tmorikawaです。
最近仕事でタイトルの環境を作ることがあったのですがこれがまた面倒だったので、Qiita上に安定動作するまでの設定を書きますね。
#2.CentOSの設定
2.1.~2.5.まではOSの基本的な設定になります。
私は面倒だったのでrootユーザ使っていますが、使えない人はsudo利用してください。
※適当に作った環境なので、このままプロダクトに使うのは非推奨ですよ
##2.1.ssh設定
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org
vim /etc/ssh/sshd.config
PermitRootLoginをnoに変更、コメントアウトを外す
(rootでのログイン禁止)
To disable tunneled clear text passwords, change to no here!の
PasswordAuthenticationをyesに
(コメントアウトを外す)
Change to no to disable s/key passwordsの
ChallengeResponseAuthenticationをnoに
##2.2.ベース設定
■ベースアップデート
yum -y groupinstall base
yum -y groupinstall development
yum -y groupinstall network-tools
yum -y install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
vim /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
##2.3.ユーザ作成
(新規作成したサーバにてユーザ作成)
(groupadd -g →gidを指定してグループ作成)
groupadd -g 1000 butamayo
□ユーザー追加(UID指定)
(ユーザーid1000で、butamayoグループに、butamayoユーザーを追加)
useradd -u 1000 -g butamayo butamayo
□ユーザーが作成されたことを確認
cat /etc/passwd
□ユーザーパスワード設定
passwd butamayo
cp -rp /etc/sudoers sudoers.bak
vim /etc/sudoers
## Allows people in group wheel to run all commands
#%wheel ALL=(ALL) ALL
コメントアウトをはずす
cd /etc/pam.d
cp -rp su su.bak
vim /etc/pam.d/su
#auth required pam_wheel.so use_uid
コメントアウトを外す
gpasswd -a butamayo wheel
usermod -g wheel butamayo
getent group wheel
cp -rp /etc/login.defs /etc/login.defs_bak
diff /etc/login.defs /etc/login.defs_bak
vim /etc/login.defs
「SU_WHEEL_ONLY」の項目を末尾に追記して保存。
SU_WHEEL_ONLY yes
diff /etc/login.defs /etc/login.defs_bak
##2.4.Apacheインストール
【httpd】
yum -y install httpd mod_ssl
systemctl enable httpd
service httpd restart
##2.5.MariaDB設定
vim /etc/my.cnf
#[mysqld]に以下を追記
character-set-server=utf8
slow_query_log=ON
long_query_time = 5
slow_query_log_file = /var/log/mariadb/mariadb_slow.log
#[mysqld_safe]の以下の記述を変更
log-error=/var/log/mariadb/mariadb.log
↓
log-error=/var/log/mariadb/mariadb_error.log
yum -y install pv
yum -y install mariadb mariadb-server
service mariadb start && systemctl enable mariadb
mysql_secure_installation
#パスワード hogehoge
mysql -u root -p
#password hogehoge
CREATE DATABASE `stg_rails` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATABASE `pro_rails` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
exit
echo "[mysqladmin] \password = hogehoge \user= root" > /root/.my.cnf & chmod 600 /root/.my.cnf
■ログローテ設定
vim /etc/logrotate.d/mariadb
/var/log/mariadb/mariadb_error.log
/var/log/mariadb/mariadb_slow.log {
create 640 mysql mysql
daily
missingok
rotate 30
compress
dateext
ifempty
postrotate
if test -x /usr/bin/mysqladmin && \
/usr/bin/mysqladmin ping &>/dev/null
then
/usr/bin/mysqladmin flush-logs
fi
endscript
}
とりあえずここまでがOSの基本設定です。
Railsを動かすための設定だけ見たい人は次の記事を見てくださいね。