ユーザ用ツール

サイト用ツール


サーバ:aws:サーバ構築手順:vpc_ec2の構成:centos7の初期設定

文書の過去の版を表示しています。


CentOS7の初期設定

VPC、EC2の構成でのCentOS7の初期設定手順。
RDSは使わず、EC2内にMySQLをインストールする。

SELinux

enforcing ・・・ SELinux は有効で、アクセス制限も有効
permissive ・・・ SELinux は有効だが、アクセス制限は行わず警告を出力
disabled ・・・ SELinux 機能は無効

  1. # SELinux の状態を確認
  2. $ getenforce
  3.  
  4. # 編集
  5. $ sudoedit /etc/selinux/config
  6.  
  7. SELINUX=permissive
  8.  
  9. # 再起動
  10. $ sudo reboot
  11.  
  12. # SELinux の状態を確認
  13. $ getenforce

httpd

https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-lamp-amazon-linux-2.html

  1. $ sudo yum update -y
  2.  
  3. $ sudo yum install -y httpd
  4.  
  5. $ sudo systemctl start httpd
  6.  
  7. $ sudo systemctl enable httpd
  8.  
  9. $ sudo systemctl is-enabled httpd
  10.  
  11. $ sudo yum info httpd

パブリックIPなどでブラウザからアクセスできることを確認する。
http://【IPv4 パブリック IP】

Git

yum の Git は古い。最新版を入れたい場合は wget などを使い、自分でインストールする。
http://vdeep.net/centos7-git

  1. $ yum list | grep '^git'
  2.  
  3. $ sudo yum -y install git
  4. $ git --version
  5. git version 1.8.3.1

vim

  1. $ sudo mkdir -p /usr/local/share/vim/colors
  2. $ sudo mkdir -p /usr/local/share/vim/color_schemes
  3.  
  4. $ cd /usr/local/share/vim/color_schemes/
  5. $ sudo git clone https://github.com/tomasr/molokai.git
  6.  
  7. $ cd /usr/local/share/vim/colors
  8. $ sudo ln -s ../color_schemes/molokai/colors/molokai.vim
  9.  
  10. $ cd /home/centos
  11. $ mkdir .vim
  12. $ cd .vim
  13. $ ln -s /usr/local/share/vim/colors
  14.  
  15. $ cd /home/centos
  16. $ vi .vimrc
  17. # vimrc.txt を貼り付け

vimrc.txt

  1. " バックアップファイルを作らない
  2. set nobackup
  3. " スワップファイルを作らない
  4. set noswapfile
  5. " 編集中のファイルが変更されたら自動で読み直す
  6. set autoread
  7. " 入力中のコマンドをステータスに表示する
  8. set showcmd
  9.  
  10. " color
  11. autocmd ColorScheme * highlight Comment ctermfg=253
  12. colorscheme molokai
  13.  
  14. " copy&paste
  15. set paste
  16.  
  17. " 見た目系
  18. " 行番号
  19. set number
  20. " 現在の行を強調表示
  21. set cursorline
  22. " 現在の行を強調表示(縦)
  23. set cursorcolumn
  24. " 行末の1文字先までカーソルを移動できるように
  25. set virtualedit=onemore
  26. " インデントはスマートインデント
  27. set smartindent
  28. " 括弧入力時の対応する括弧を表示
  29. set showmatch
  30. " ステータスラインを常に表示
  31. set laststatus=2
  32.  
  33. " Tab系
  34. " 不可視文字を可視化(タブが「?-」と表示される)
  35. set list listchars=tab:\?\-
  36. " Tab文字を半角スペースにする
  37. set expandtab
  38. " 行頭以外のTab文字の表示幅(スペースいくつ分)
  39. set tabstop=2
  40. " 行頭でのTab文字の表示幅
  41. set shiftwidth=2

PHP

  1. $ sudo yum install epel-release -y
  2.  
  3. $ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
  4.  
  5. $ sudo yum -y install --enablerepo=remi,remi-php72 php php-devel php-mbstring php-pdo php-gd php-xml php-mysql
  6.  
  7. $ yum list installed | grep php
  8.  
  9. $ php -v
  10.  
  11. $ sudo mkdir /var/log/php
  12.  
  13. $ sudo chown apache:apache /var/log/php
  14.  
  15. $ cd /etc
  16. $ ls -l | grep php
  17. $ sudo cp php.ini php.ini.origin
  18.  
  19. $ sudoedit php.ini
  20. # php.ini.txt の内容を反映させる

php.ini.txt

  1. default_charset = "UTF-8"
  2.  
  3. mbstring.language = Japanese
  4.  
  5. ;mbstring.internal_encoding =
  6.  
  7. ;mbstring.http_input =
  8.  
  9. ;mbstring.http_output =
  10.  
  11. mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
  12.  
  13. date.timezone = Asia/Tokyo
  14.  
  15. expose_php = Off
  16.  
  17. memory_limit = 128M
  18. post_max_size = 128M
  19. upload_max_filesize = 128M
  20.  
  21. register_argc_argv = On
  22.  
  23. error_log = /var/log/php/error.log
  1. $ sudo service httpd restart
  2.  
  3. $ sudoedit /etc/php.ini

MySQL

  1. $ sudo yum repolist all | grep mysql
  2.  
  3. $ sudo yum -y localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
  4.  
  5. $ sudo yum repolist all | grep mysql
  6.  
  7. $ sudo yum -y install mysql-community-server
  8.  
  9. $ mysql --version
  10.  
  11. # 起動
  12. $ sudo systemctl start mysqld.service
  13.  
  14. # 自動起動
  15. $ sudo systemctl enable mysqld.service
  16.  
  17. # 確認
  18. $ systemctl status mysqld.service
  19.  
  20. # mysql の root パスワードを確認
  21. $ cat /var/log/mysqld.log | grep password
  22.  
  23. # パスワードポリシーをゆるくする
  24. $ sudoedit /etc/my.cnf
  25.  
  26. validate_password.length=8
  27. validate_password.mixed_case_count=0
  28. validate_password.number_count=0
  29. validate_password.special_char_count=0
  30. validate_password.policy=LOW
  31.  
  32. $ sudo service mysqld restart
  33.  
  34. $ sudo mysql_secure_installation
  35. # パスワード設定
  36. # 全てy
  37.  
  38. $ mysql -u root -p
  39.  
  40. SHOW GLOBAL VARIABLES LIKE '%validate_password%';
  41. exit
  42.  
  43. $ sudo mkdir /var/log/mysql
  44.  
  45. $ sudo chown mysql:mysql /var/log/mysql
  46.  
  47. # my.cnfの編集
  48. $ sudoedit /etc/my.cnf
  49.  
  50. log-error=/var/log/mysql/mysqld.log
  51.  
  52. slow_query_log=1
  53. slow_query_log_file=/var/log/mysql/slow_query.log
  54. long_query_time=0.1
  55.  
  56. $ sudo rm /var/log/mysqld.log
  57.  
  58. $ sudo service mysqld restart
  59.  
  60. $ mysql -u root -p
  61.  
  62. show variables like '%log%';
  63. show global variables like 'character%';

AWS Linux のタイムゾーンを日本時間に

  1. $ ls /usr/share/zoneinfo/
  2.  
  3. $ sudoedit /etc/sysconfig/clock
  4.  
  5. ZONE="Japan"
  6.  
  7. $ sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
  8.  
  9. $ sudo reboot

www ユーザの追加(サイト制作用アカウント)

  1. $ cat /etc/passwd
  2.  
  3. $ sudo useradd www
  4. $ sudo passwd www
  5.  
  6. $ sudo su - www
  7.  
  8. $ mkdir .ssh
  9. $ cd .ssh
  10. $ ssh-keygen -t rsa
  11. # パスフレーズ:なし
  12.  
  13. $ mv id_rsa.pub authorized_keys
  14.  
  15. # 秘密鍵をコピペしてローカルに保存
  16. $ cat id_rsa
  17. $ rm id_rsa
  18.  
  19. $ chmod 600 authorized_keys
  20. $ cd ../
  21. $ chmod 700 .ssh
  22.  
  23. # www ユーザを終了
  24. $ exit
  25.  
  26. # apache に www グループを追加
  27. $ sudo gpasswd -a apache www
  28.  
  29. $ sudo id apache
  30.  
  31. # httpd.conf
  32. $ sudoedit /etc/httpd/conf/httpd.conf
  33.  
  34. <Directory "/var/www/html">
  35. # .htaccess を許可する
  36. AllowOverride All
  37. </Directory>
  38.  
  39. # cgi を許可する(コメントアウト解除&.pl の追加)
  40. AddHandler cgi-script .cgi .pl
  41.  
  42. $ sudo service httpd restart
  43.  
  44. $ sudo chown -R www:www /var/www/
  45.  
  46. # httpd ログディレクトリへのシンボリックリンクを貼る
  47. $ sudo ls -la /var/www
  48. $ sudo ln -s /var/log/httpd /var/www/logs
  49.  
  50. # アクセス権限
  51. $ sudo chmod 755 /var/log/httpd

MySQLユーザの追加

  1. $ mysql -u root -p
  2.  
  3. create user USER_NAME@'localhost' identified by 'PASSWORD';
  4.  
  5. select user, host from mysql.user;
  6.  
  7. create database DB_NAME;
  8.  
  9. grant all on DB_NAME.* to USER_NAME@'localhost';
  10. grant all on *.* to USER_NAME@'localhost';
  11.  
  12. show grants for USER_NAME@'localhost';
  13.  
  14. exit;
  15.  
  16. # 作成したユーザでログイン
  17. $ mysql -u USER_NAME -p
  18.  
  19. show databases;

Composer

  1. $ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  2. $ php composer-setup.php
  3. $ rm composer-setup.php
  4. $ sudo mv composer.phar /usr/local/bin/composer
  5. $ ls -l /usr/local/bin

SELINUX

SELINUXの警告が出てないか確認
https://qiita.com/yunano/items/857ab36faa0d695573dd

コメント

コメントを入力. Wiki文法が有効です:
 
サーバ/aws/サーバ構築手順/vpc_ec2の構成/centos7の初期設定.1543909439.txt.gz · 最終更新: 2018/12/04 16:43 by yusuke_komori