Work-05-Web-Server

What is Web-Server?

  • HTTPで、ウェブブラウザから呼ぶHTML、Object(imagefileなど)を送るServiceProgram。
  • WebServerは2種類で、SoftwareとHardware。

Work-04-vsftpd-FTP

Why need a vsftpd?

  • サーバの構築とサーバプログラムをアップロード/ダウンロードする目的でvsftpdをインストールします。

What is vsftpd?

  • vsftpdはファイル転送規約(File Transfer Protocol、FTP)でファイルを円滑にアップロード/ダウンロードするのが目的です。

  • 例えば、マイコンピュータにあるサーバにファイルをアップロードしたり、サーバにあるファイルをマイコンピュータにダウンロードしたりするためです。 サーバプログラムをアップロードしたり、その他のファイルをアップロードするためにインストールして使用します。

What is FTP?

  • ネットワークに接続されたコンピュータ同士でデータを円滑に交換するための目的で開発されました。

  • 簡単に例を挙げると、宅配便を必ず箱に入れて送ろうと規則を決めるようにパソコンのファイルも一つの約束をするのです。

    1 ) FTP install Check

    1
    [root@centos ~]# rpm -qa vsftpd*

    2 ) Intall FTP

    1
    [root@centos ~]# yum install vsftpd -y

    3 ) FTP install Check

    1
    [root@centos ~]# service vsftpd status

    4 ) FTP Setting

    1
    [root@centos ~]# vi /etc/vsftpd/vsftpd.conf
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    anonymous_enable=NO                 # anonymous user's connect check
    local_enable=YES # anonymous user's connect enable
    write_enable=YES # upload enable
    xferlog_enable=YES # ファイル転送ログの残りを許可
    connect_from_port_20=YES # 20ポートの使用許容
    xferlog_file=/var/log/xferlog # ファイル転送ログ位置設定
    #chroot_local_user=YES # ルートフォルダへのアクセス制限
    listen=YES # vsftpdデーモンの動作方式指定(yes->standalone、no->xinted)

    local_root=/var/www/static # 接続経路設定
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES

    listen_port=45000 # ファイル転送接続ポート設定
    port_enable=YES
    pasv_enable=YES
    ftp_data_port=45001 # ファイル転送データポート設定
    pasv_min_port=45000
    pasv_max_port=45001
    session_support=YES
    userlist_enable=YES # user list enable

    5 ) FTP start & start check

    1
    [root@centos ~]# service vsftpd start
    1
    [root@centos ~]# netstat -anp | grep vsftpd

    6 ) When FTP reboot, auto restart setting

    1
    2
    [root@centos ~]# chkconfig vsftpd on
    [root@centos ~]# chkconfig --list | grep vsftpd

    7 ) TestUser add

    1
    2
    [root@centos ~]# useradd testing
    [root@centos ~]# passwd testing

    8 ) When Connect vsftpd, show this message

    1
    2
    3
    4
    5
    6
    Status:      Connecting to IP:PORT...
    Status: Connection established, waiting for welcome message...
    Status: Insecure server, it does not support FTP over TLS.
    Status: Logged in
    Status: Retrieving directory listing...
    Status: Directory listing of ".../static" successful

Work-03-Building-a-Server

基本設定および確認

  • 一般のウィンドウやマックなどのグイ(GUI)環境はコンピューターのリソース(Resource)を多く使うようになります。
    ですから、このような資源を最大限節約し、サーバ性能の最大化のために見にくいTextモードを利用することになります。

    1. サーバー接続

    1
    2
    3
    #ssh -l ID -p Port IP
    code : ssh -l root -p 43232 123.155.157.1xx
    root@IP's password:
  • セキュアシェル(Secure Shell、SSH)はネットワーク上の他のコンピュータにログインしたり、遠隔システムで命令を実行し、他のシステムでファイルを複数できるようにするアプリケーションやプロトコルを指します。
    強力な認証方法により、安全ではないネットワークで安全に通信できる機能を提供します。
    セキュアシェル(SSH)は暗号化手法を使うため、通信が露出されたとしても理解できない暗号化された文字と考えられる。

    1 ) Linux Version Check

    1
    [root@centos ~]# uname -a

    2 ) CentOS Version Check

    1
    [root@centos ~]# cat /etc/redhat-release

    3 ) HardDisk Volume Check

    1
    #df -h
    1
    2
    3
    Filesystem      Size  Used Avail Use%  Mounted on
    /dev/xvda1 50G 7.7G 39G 17% /
    tmpfs 935M 0 935M 0% /dev/shm

    4 ) Memory Check

    1
    [root@centos ~]# free -m

    5 ) CPU Check

    1
    [root@centos ~]# cat /proc/cpuinfo | grep processor | wc -l
    1
    #cat /proc/cpuinfo

    6 ) Package List Update

    1
    [root@centos ~]# yum update

    7 ) System time Setting

    1
    [root@centos ~]# cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

Work-02-OS

オペレーティングシステム(Operating System)とは?

  • サーバ構築という目的に運営体制は何と言えばいいでしょうか?
    コンピュータを制御できるようにするプログラムをオペレーティングシステムといいます。

OSの選択

  1. Linux
  • 長所 : 無料ということと、サーバー構築に必要な仕様が低いです。
  • 短所 : 私たちは皆ウインドウ環境に慣れているので適応するのが難しいです。
  1. Windows
  • 長所 : 私たちが最も多く使うウィンドウズなので使うことに慣れています。
  • 短所 : 有料という点と基本仕様が重いです。

Linux配布版選択

  • 技術的な面で見れば、二人ともLinuxという共通点があるが、基本的な環境管理方式(プログラム管理)が異なります。
  • Linuxを基盤として配布者たちの思惑どおりネットワークや、デスクトップ環境、サーバー環境、プログラムのアップグレード方式を背中をそれぞれ最適化して配布をします。
    それで同じLinux基盤としても、RedhatやDebianのように、他の系列で配布になって使途も他の面があります。

    プログラム的に大きく眺めると、環境設定を容易にするために使用するプログラム(パッケージ管理、セット管理)がRedhat系列とDebian系列が違います。

  • 簡単に彼らが志向することに対し、私の考えをお知らせいたします。
    “Redhatは徹底的に商業化されたLinux”
    “Debian系列はアップデート志向なLinux”

  • 実際にRedhat系列は、企業や証券取引所など、巨大なサービスで使用されている方です。
    一方、Debian系列は個人サーバ用として人気が多いです。

Redhat系列の異なる2つのLinux

  1. Fedora : Redhatの先行OS、
    Redhatの新技術を体験したいならFedoraを使えばいいです。
  2. CentOs : Redhatの以前のOS、
    Redhatの安定的な技術をそのまま継承して使用します。
    (実際に多くの大学や大手はCentOSで運営)
  • ps. Linuxの奇数バージョンはDevelper用で、偶数バージョンは配布型です。

Work-01-Server

デベロッパーの4つ業務

  1. サーバ構築
  2. DBスキーマ作成、環境設定
  3. ミドル環境の設定及びミドルサーバーの構築、開発
  4. フロントの環境設定、開発

1. サーバ構築

  • サーバーもコンピューターだ。

では、サーバーをなぜ構築しなければならないのか?

  • 私はアプリやウェブサイトを作りたい。

  • ところであえてサーバーが必要なのか知りたいよ。 という言葉ができます。

    それでは私が比喩を一つやってみます。
    私がコーヒー商売をすると仮定してみました。
    コーヒー商売をするにはどこかでコーヒー豆も積んでおいて機械も入れておかなければならない場所が必要ではないですか。
    このようにコーヒー商売をしても場所(site)が必要です。
    我々はのどの良い商業ビルや露店あるいはトラックのうち、個人の状況に当たる場所を選択することになります。
    コンピュータの世の中も同じです。
    現実で、我々がコーヒー商売をするのと似ていると思ってもいいです。
    仮想の世界でコーヒーを販売するためには、仮想のコーヒーを販売する場所が必要が必要なものです。
    整理すれば、コーヒー商売を行う場所を指してサーバーと思えばいいです。
    サーバーの本質は場所だと思ったらいいと思います。

    Webサーバ、FTPサーバ、DBサーバ、イメージサーバ…
    上記のサーバー名のように、それぞれのサーバーはサーバーの目的から外れません。
    サーバというルーツの上に役割分担するだけです。
    そのため、サービスの性格によって全てのサーバーを備える必要はありません。

You need to set client_id and slot_id to show this AD unit. Please set it in _config.yml.