CentOS 7/nginx インストール(rpm)


インストール諸設定データーベースWeb(apache)Mailetc
前書き
インストール
SSH(設定変更)
firewalld設定(ファイヤーウォール)
SELinux設定
起動レベル設定
NTP(時刻同期)
パッケージアップデート
リソース割り当て変更
logwatch設定
systemdについて
syslog(journal)について
追加パッケージインストール
MariaDB 5.5
(MySQL代替DB)
MySQL 5.7
Redis
mongoDB
apache 2.4
-httpd.conf
-Virtual Host
-mod_spdy
-mod_fcgid
Postfix 2.10
dovecot 2.2
VirtualBox
samba
Munin
ClamAV
rsyncによるバックアップ
Git
svn
memcached
Fluentd(td-agent)
DNSSSLPHPWeb(nginx)FTP
bind(内向け用)
Unbound
NSD
秘密鍵・証明書作成PHP 5.4
 -php-apc
 -ffmpeg
 -memcached
PHP 5.6
 -php-apcu
 -memcached
PHP 7.0
 -php-apcu
 -memcached
PHP 7.1
 -php-apcu
 -memcached
nginx
-インストール(rpm)
-インストール(ソース)
-Webサーバー設定
-リバースプロキシサーバー設定
-ラウンドロビン設定
vsftpd 3.0.2

準備中

インストール

パッケージ(RPM)インストールの手順を記載します。
CentOS 7 に用意されている nginx のバージョンは 1.6.1 となります。(執筆時 2014/08/06 時点)
最新バージョンを利用したい場合はソースファイルからのインストールとなります。

ます nginx のレポジトリを登録します。

# rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm を取得中
警告: /var/tmp/rpm-tmp.WRCNCo: ヘッダー V4 RSA/SHA1 Signature、鍵 ID 7bd9bf62: NOKEY
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:nginx-release-centos-7-0.el7.ngx ################################# [100%]

nginx レポジトリから nginx をインストールします。

# yum install nginx
読み込んだプラグイン:fastestmirror
base                                                                   | 3.6 kB  00:00:00
extras                                                                 | 3.3 kB  00:00:00
nginx                                                                  | 2.9 kB  00:00:00
updates                                                                | 3.4 kB  00:00:00
(1/2): updates/7/x86_64/primary_db                                     | 2.1 MB  00:00:00
(2/2): nginx/x86_64/primary_db                                         | 3.5 kB  00:00:01
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ nginx.x86_64 0:1.6.1-1.el7.ngx を インストール
--> 依存性解決を終了しました。

依存性を解決しました

=========================================================================================
 Package           アーキテクチャー   バージョン               リポジトリー       容量
=========================================================================================
インストール中:
 nginx             x86_64             1.6.1-1.el7.ngx          nginx              353 k

トランザクションの要約
=========================================================================================
インストール  1 パッケージ

総ダウンロード容量: 353 k
インストール容量: 844 k
Is this ok [y/d/N]: y
Downloading packages:
nginx-1.6.1-1.el7.ngx.x86_64.rpm                                       | 353 kB  00:00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
  インストール中          : nginx-1.6.1-1.el7.ngx.x86_64                              1/1
----------------------------------------------------------------------

Thanks for using nginx!

Please find the official documentation for nginx here:
* http://nginx.org/en/docs/

Commercial subscriptions for nginx are available on:
* http://nginx.com/products/

----------------------------------------------------------------------
  検証中                  : nginx-1.6.1-1.el7.ngx.x86_64                              1/1

インストール:
  nginx.x86_64 0:1.6.1-1.el7.ngx

完了しました!

systemd のコマンドを使って nginx を起動させます。

# systemctl start nginx

systemd のコマンドを使って nginx を自動起動登録します。

# systemctl enable nginx
ln -s '/usr/lib/systemd/system/nginx.service' '/etc/systemd/system/multi-user.target.wants/nginx.service'

systemd のコマンドを使って nginx の状況(ステータス)を見ることが出来ます。

# systemctl status nginx


ファイヤーウォールの設定

現在登録されているゾーンリストを表示し内容を確認します。
ここでは public ゾーンを使って動作確認をします。
違うゾーンを使用する場合は適時読み替えて下さい。

# firewall-cmd --list-all-zones
block
  interfaces:
  sources:
  services:
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:
  ・
  ・
work
  interfaces:
  sources:
  services: dhcpv6-client ipp-client ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

アクティブとなっているゾーンと割り当てられている NIC を確認します。

# firewall-cmd --get-active-zones
public
  interfaces: eno********

デフォルトゾーンを確認します。

# firewall-cmd --get-default-zone
public

ポート80を zone:public に開放します。

# firewall-cmd --permanent --add-service=http
success

firewalld を再読み込みします。

# firewall-cmd --reload

iptables コマンドを使って設定内容を確認
下記の記述はインバウンド publicゾーン にポート80が登録されている状態。

# iptables -L -n
  ・
  ・
Chain IN_public_allow (1 references)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80 ctstate NEW
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22 ctstate NEW
  ・
  ・

firewalld のコマンドを使って public ゾーンに http が登録されているのを確認。

# firewall-cmd --list-all-zones
  ・
  ・
public (default, active)
  interfaces: eno********
  sources:
  services: dhcpv6-client http ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:
  ・
  ・

表示確認

ブラウザからインストールしたサーバーのIPアドレスにアクセス
下記のページが表示されます。
nginx_welcome.png


設定

具体的な nginx の設定ですが、前述の nginx を用いた代表的な構成例 のパターンごとに分けて記載します。




添付ファイル: filenginx_welcome.png 76件 [詳細]

Last-modified: 2015-04-23 (木) 18:09:44 (1304d)