【42日目】Linuxでファイルサーバ立ててみた.

皆さん,こんにちは.bb_lotusです. さて,今回は42日目とうとうLinuxでファイルサーバを立ててみます.

本当であれば前回の続きでさくらのVPSというものを使ってサーバを構築するはずでしたが,クレジット払い以外は時間がかかるみたいだったので少し脱線して,CentOSでファイルサーバを構築してみようと思います!

すぐアウトプットだけ見たい人はこちらから

(ネットワーク初学者のため,記載内容等間違いがありましたらどしどしコメント,指摘等していただければと思います.)hetare-nw.net

 

--------------↓ここからアウトプット--------------

さてさて,CentOSで研究室のPCや自分のスマホからでも使えるファイルサーバを立てていきます.

まず,OSのIPアドレスを確認します.

 

次にインターフェイスが有効になっていることを確認します.

 

※ネットワーク接続確認

 ・自身のIPアドレス確認

  #ip addr

    ・自身のIPアドレス確認

  #nmcli connection show

    ・リンクアップ

  #nmcli connection up enp0s3

 

sambaをインストールします.

 

※サービスのインストール

Linuxにおけるサービスのインストール方法

ソースコードからインストール

メリット:コードに変更を加えることが可能なため,カスタマイズ性が高い.

デメリット:手間がかかる.

 

②パッケージ管理ツールを使用してインストール

メリット:パッケージの更新,削除等の管理がしやすい

依存関係パッケージも併せてインストール・アンインストールしてくれる

デメリット:インストールにはインターネット接続が必要.

カスタマイズ性が低い.

 

※サービスのインストール

パッケージ管理ツール「dnf」を使用して作業を行う

・既存パッケージの更新

    #dnf update

・既存パッケージの更新

    #dnf install samba

 

Sambaとは

Linux上でディレクトリをWindowsクライアントに共有し,ファイルサーバとして動作させるためのサービス

(プリンタサーバやドメインコントローラとしても使用可能)

 

インストール完了!

 

※サービス設定

・/etc/samba/smb.conf

Sambaの基本設定ファイル

 ・globalセクション

  その他セクションで明示的に指定されていない場合に使用される規定を設定

 ・homesセクション

  接続元ユーザのホームディレクトリを共有するための設定.

 ・printersセクション

  プリンター用のhomesセクションに相当.

・セクション名=共有名として使用される

→新しい共有フォルダを作成する場合,新しいセクションを追加

 

「/home/share」ディレクトリを新規共有として追加する.

vi /etc/samba/smb.confで以下を書き込み.

・comment:設定のコメント

・path:共有のパス(場所)

・browseable:アクセスした際の共有の表示/非表示

・read only:書き込みの許可/拒否

・create mask:新規作成したファイルのパーミッション

・directory mask:新規作成したディレクトリのパーミッション

 

※サービス設定

・Sambaユーザの追加

 pdbeditコマンドを使用

 →予めLinuxユーザとして存在している必要がある

 

Sambaユーザを追加.

 

Linux上のユーザを確認.

 

パスワードを設定.

 

※サービス(Samba)起動

・Sambaの状態確認

 #systemctl status smb

・Sambaの起動

 #systemctl start smb

・Sambaの設定ファイル再読み込み

 #systemctl reload smb

・Sambaの自動起動設定

 #systemctl enable --now smb

 

systemctl start smbでSambaを起動し,activeにする.

 

Sambaの自動起動設定をする.

 

ファイアウォール設定

・ポートの解放

   ※firewall-cmd --permanent --add-service=samba

   ※firewall-cmd --reload

SELinuxの無効化

 /etc/selinux/configの編集→システムの再起動

 

SELINUX=disabledをpermissiveに変更.

 

linuxを再起動して,変更を更新.

 

作ったファイル確認すると,文字化けが起きている!!

 

文字化けを直す.

 

とりあえず,スマホから作ったファイルを見れたのでサーバは立てれましたが,

大学のPCからはネットワークの通信におそらく制限がかかっているため見ることができませんでした..(残念)

【41日目】TCP/IPネットワーク入門(WordPressインストール編)

WordPressとは

オープンソースのブログソフトウェア(無料で利用可)

とても人気で,世界のWebサイトの27%は,WordPressが使われているとのデータもあるくらい.

CMSコンテンツマネジメントシステム)の一種

ブログだけでなく,コーポレートサイト,メディアサイトなどの用途にも利用.

PHPで開発されている.

データベースにMySQLを利用する.

 

設定編

ワードプレス用のMySQLのユーザを作成.

 

MySQLにログイン.

 

ユーザを作成.

 

データベース作成

 

作成したデータベースの使用権限を与える

変更を反映する

 

インストール編

 

インストールする

 

インストール完了!

 

ワードプレスのインストールファイルを入手するために公式サイトに行く.

サブディレクトリに移動し,入手.

 

リストを確認.

 

リストの中の圧縮ファイルを解凍し,指定したディレクトリに保存.

 

ディレクトリ移動.

 

ls -la /wordpressからls -laで取得したファイル・ディレクトリの権限をapacheにする.

 

設定ファイルをバックアップする

 

apacheの設定ファイルを編集していく!

ドキュメントルートの変更と,ディレクトリの変更を行う.

 

変更を反映させるため再起動.



再起動後,ip aとコマンドを入力し,enp0s3インターフェイスに割り当てられたipアドレスをブラウザに入力.

 

そうすると,ワードプレスのセットアップ画面が表示される.

 

 

その後,さあ始めましょうから設定を進め,,無事インストール完了!



ログインしてみる.

 

無事完了!!

 

【40日目】TCP/IPネットワーク入門(MySQLインストール,設定編)

トップに戻る.

この時Shift+fn+上キーでトップに戻れる.

インストールされるMySQLのバージョンを確認する.(8.0.28)

 

MySQLをインストール.

 

インストール完了!

 

MySQLバージョン確認

 

MySQL設定

MySQLを起動

 

MySQLにログインするための初期パスワードを確認

 

MySQLの初期設定を行う

 

設定完了!

 

MySQLにログイン

 

現時点で作られているデータベースを見てみる

 

MySQL文字コードに関する情報を追加するため,設定ファイルを開く.

 

最後の行に追加.

 

設定を反映させる.

 

OSが起動したときに,MySQLも自動で立ち上がるように設定.

 

mysqld.serviceがenabledになっていればおけ

 

設定完了!

【39日目】TCP/IPネットワーク入門(PHPのインストール,動作確認編)

phpをインストール

 

インストール完了

 

phpバージョン確認



phpinfoの情報をインターネットに公開すると,サーバの情報が漏れてしまうため,インターネットに公開されるような状態でphpinfoを使わないように注意.

 

 

phpプログラムの実行

 

 

 

【38日目】TCP/IPネットワーク入門(Apacheの動作確認,静的なWebページ表示編)

仮想マシンに割り当てられているIPアドレスを確認.

今回で言うと,192.168.10.103/24がローカル環境でのIPアドレス

ブラウザで開いてみる.

以下の画面が出ているのでApacheが動いている(テストページ)

 



つづいて,オリジナル(自分で設定したWebページ)を表示したい場合,ドキュメントルートにhtmlファイルをおくことで表示可能.

ドキュメントルートの確認方法

 

一番下に/DocumentRootと記載

 

/var/www/htmlにhtmlファイルを置くことでみることができる.

 

 

 

所有者Apache:所有グループApac

【37日目】TCP/IPネットワーク入門(Apacheの設定編)

・ファイアーウォールの設定

HTTPポート80番とHTTPSポート443番を開ける

 

ファイアーウォールをリロードして,変更を反映

 

selinuxを無効にする

サーバへの不正アクセスや,情報漏洩を防ぐセキュリティ対策の仕組み

扱いが難しいためオフに設定

selinuxの状態を確認

 

Enforcingとなっているため現在はオンの状態.

オフに設定する.

enforcingのところでcwと入力し,disabledと入力.

 

Apacheを再起動し,disabledになっているか確認.

 

【36日目】TCP/IPネットワーク入門(Apacheインストール編)

Apache:Webサーバ

sudo yum install httpdコマンドを入力.

 

インストール完了!!

 

 

バージョン確認

 

OSが起動したときに自動でApacheが起動するように設定.

 

OSを再起動してみる.

 

systemctl status httpdコマンド実行し,acetiveになっていればおけ.