2017年02月01日

CentOS導入記その4:Sambaインストールでファイルサーバー構築

次にファイルサーバーを構築します。今回はLAN内から誰でも読み書きできる共有フォルダの設定。

今回はこのページを参考にしました。https://orebibou.com/2014/12/centos7%E3%81%ABsamba%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/

1.Sambaのインストール
  コンソールからこれを打ちます。
  yum install samba samba-client samba-common -y

2.Sambaの初期設定
  /etc/samba/smb.confを編集します。
  次のように変更または追記しました。
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = centos7
security = user
map to guest = bad user
dns proxy = no

[Share]
#共有させるフォルダ
path = /samba/share/
#マイネットワークに表示させるか否か
browsable =yes
#書き込み可能かどうか
writable = yes
#ゲストユーザのログインが可能かどうか
guest ok = yes
#読込みのみとするか
read only = no

3.共有フォルダの作成とアクセス権設定
 コンソールからこれを打ちました。
mkdir -p /samba/share
chmod -R 0777 /samba/share
chown -R nobody:nobody /samba/share

4.Sambaの再起動
 コンソールからこれを打ちます。
systemctl enable smb.service
systemctl enable nmb.service
systemctl restart smb.service
systemctl restart nmb.service

5.firewalldの設定
 コンソールからこれを打って、Firewalldの設定を行います。
firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --reload

6.Windowsマシンからのアクセス
WORKGROUPがWORKGROUPであるマシンから共有フォルダへのアクセスができるようになりました。
\\centos7\Share

posted by kuwata at 08:38 | Comment(0) | TrackBack(0) | トラブル対応 | このブログの読者になる | 更新情報をチェックする

2017年01月30日

CentOS導入記その3:ApatchのインストールでWebサーバー構築

次にWebサーバーを構築します。

1.Apatchのインストール
  ・CentOSの端末アプリから、
      # yum install -y httpd
      # yum -y install php php-mbstring php-pear 
   のコマンドを打って、インストールします。これでPHPとともにApatchも同時にインストールできました。

2.Apatchの設定
・/etc/httpd/conf/httpd.confについて以下のポイントを変更しました。

    ServerName XXXXXX:80 ← #を削除してサーバー名を指定



#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#options
# for more information.
#
Options Includes ExecCGI FollowSymLinks ← Indexesを削除してファイルの一覧
表示を防ぎ、Includes ExecCGIを追記してCGI,SSIを許可

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All ← Noneを Allに変えて、.htaccessの許可

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t "%!414r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
 ← 長すぎるURI(414エラー)はログに記録しない

#
# If you prefer a logfile with access, agent, and referer information
# (Combined Logfile Format) you can use the following directive.
#

SetEnvIf Request_URI "default.ida" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "cmd.exe" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "root.exe" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "Admin.dll" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "NULL.IDA" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Remote_Addr 192.168.1 no_log ← 内部からのアクセスをログに記録せず
SetEnvIf Remote_Addr 127.0.0.1 no_log ← 自ホストからのアクセスをログに記録せず
CustomLog logs/access_log combined env=!no_log ← 上記以外のアクセスをログに記録
する

AddHandler cgi-script .cgi .pl ← 行頭の#を削除して有効にし、CGIスクリプトに.pl
を追加

#AddDefaultCharset UTF-8 ← 行頭に#を付けて、無効にする

ServerTokens Prod ← 最終行に追記。OSをProdに変えてエラーページ等でOS名を表示
しないようにする

KeepAlive On ← 最終行に追記。OffをOnに変えて接続が切れていないか定期的にチェッ
クする

3.Webサーバーの起動
 ・端末からこれをたたいて起動です。
 # systemctl start httpd ← httpd起動
 # systemctl enable httpd ← httpd自動起動設定

 ・HTMLファイルの置き場所に、過去作ったindex.html他をコピペで投入しました。
  /var/www/html

4.SELinuxの無効化
 ・/etc/seliux/configを編集し、SELINUX=disabledとしました。再起動後、無効になりました。

5.firewallの設定
 ・端末からこれをたたいて、サービス種類httpを開放します。
  # firewall-cmd --permanent --add-service=http
 ・これをたたいて設定を有効化します。
  # firewall-cmd --reload

5.ローカルIPアドレスでのWebサーバー確認
 ・同一LAN内のPC上ブラウザから"ローカルIPアドレス:80"で確認すると、Webページが無事表示されました。

6.外部からのWebサーバー確認
 ・そのPC上ブラウザから、今度は"ダイナミックDNSで取得したサーバー名:80"または”グローバルIPアドレス:80”で確認すると、「応答時間が長すぎます」というエラーメッセージで終わります。一瞬、一度だけ表示されたような気がするのですが、その後、またこのエラーメッセージに戻りました。現在、原因を調査中。

→なんと同一LANセグメントからのアクセスで発生していた事象でした。スマートフォンで別個のネットワークから"ダイナミックDNSで取得したサーバー名:80"にアクセスすると、ちゃんとWebコンテンツが表示されました。いいんだけど、なぜだ。原因はどっかの設定ぽい。

→いろいろ調べてみると、今回ポートマッピング機能でNATエントリ設定しているルータが、外部からのアクセスはNATで内部のWebサーバーに流してくれるが、内部からのアクセスはNATで流してくれないという仕様のものだったと判明。外部ネットワークからのアクセスならOKなので、この場合は当然の事象であり、問題はなかった。内部ネットワークからはプライベートIPアドレスで入れば良いだけだった。
posted by kuwata at 15:23 | Comment(0) | TrackBack(0) | トラブル対応 | このブログの読者になる | 更新情報をチェックする

CentOS導入記その2:CentOSのインストール

次にデュアルブート環境でCentOSをインストールします。

1.CentOSインストールメディアの作成
  CentOSのISOファイルをダウンロード(http://mirror.fairway.ne.jp/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso
  これをImgburnでDVDに焼き、インストールメディアを作成しました。

2.ターゲットPCのBIOS設定ーBOOT順序変更
  UEFIだったので、セキュアブートをDisabledにし、かつCSMをEnableにすることで、レガシーBIOS環境に戻してDVDからのブートが優先されるようにしました。

3.空き領域としたパーティションにCentOSインストール
  インストールDVDから起動して、日本語選択、インストール先のパーティション設定、日付と時刻設定、ソフトウェアの選択(今回はGNOME Desktopでアドオンはすべて選択)、ネットワークとホスト名設定は手動でIPアドレスやネットマスク、ゲートウェイ、DNSサーバーのアドレスを指定しました。ホスト名設定は忘れていたので、あとでやってみます。あとはルートパスワードの設定など。

4.Webminのインストール
  Webブラウザから管理できるようWebminをインストールしました。アクセス可能なのは自サーバーおよびメインマシンだけに限定しました。
 # yum -y install http://download.webmin.com/download/yum/webmin-1.740-1.noarch.rpm
でインストールした後、
 /etc//webmin/miniserv.conf
を編集し、最終行に
 allow= x.x.x.x o.o.o.o
とアクセスを許可するローカルIPアドレスを記述しました。
その後、(ローカルIPアドレス:10000)でブラウザからアクセスし、ログインしてから、webminの言語とテーマの変更で、Japanese(JA_JP.UTF-8)を選択しました。
posted by kuwata at 10:01 | Comment(0) | TrackBack(0) | トラブル対応 | このブログの読者になる | 更新情報をチェックする