2021年08月28日(土曜日)
「Linuxディストリビューション」、「プロキシ」について勉強会を開催しました。
■概要
「Linuxディストリビューション」、「プロキシ」について解説
■Linuxディストリビューションについて
★Linuxの出現
・UNIXとは
商用OSがメインのLinuxの原型
マルチユーザー・マルチプロセスのOS
C言語によって記述されているため、理解や変更が容易で移植生も高い
・BSDとSystemV
UNIXは本来持っている移植性の高さから多くの派生版が開発され
今日ではSystemⅢ & Ⅴ系統・BSD系統が主流になっている
macOS(v10.12以降)のカーネルの部分にBSD系のUNIXが入っている
この2大勢力の間にGNUというOSが派生し、そこからLinuxが生まれた
・GNUとは
UNIXと上位互換性のあるフリーな総合ソフトウェアシステム
オープンソース化の運動が起こる
→インターネット革命が強力に推進される
・Linuxとは
UNIXのクローンOS
Linuxのカーネルを受け継いているOS
→Red Had、Debian、CentOSなど
★シェル
・シェルとは
カーネル:OSのコア
シェル:カーネルが持っているシステムコール(関数)を実行する
→システムトラブルなど変な処理が流れた場合、
カーネルに対して直接実行されているとOS全体に影響が出るが、
シェルを介していればその範囲に影響範囲を抑えることができる
macOS、windowsもUNIX系のカーネルを持っていると言われている
・UNIXシェル
C Shell(csh)、Bourne Shell(sh)などが有名
Linux/UNIX触ってて普通に使ってて出てくるのはBourne Shell
bashはBourne Shellの系統
macのfinderやwindowsのエクスプローラーはグラフィカルなシェルと言える
★Linuxディストリビューション
・Linuxディストリビューションとは
カーネルだけではなく、シェルや色々なソフトウェアやパッケージがあってはじめてOSとして機能する
このようなセットをディストリビューションという
・Linuxディストリビューションの系統
Slackware系:Linux普及初期に有名 今日使われているのはSUSE Linux
Red Hat系:パッケージ管理システムとしてRPMを使用
Debian系:パッケージ管理システムにdeb形式を使用 KNOPPIX、Ubuntu、Paspberry Pi OSなど
CentoOS系:Red Hat Enterprise Linuxのクローン
★三大ディストリビューション
・Red Hat Enterprise Linux
レッドハット社によって開発され、最初は無料だったが途中から有償化された
RPMPackage Managerを使っており、RPMコマンドを使って作業する
最近はyumをよく使う
・Debian
GNUの本流に近いプロジェクト
apt-getコマンドを使って作業する
・CentOS
web開発ではほとんどCentoOS
AWSで使われているLinuxもCentOS系
Red Hatよりも後発なので、よりyumでパッケージ管理する文化が強い
CentOS8からはyumの進化版dnfが導入されている
★VagrantでCentOS8環境を作ってみる
・バーチャルマシンとして有名なもの
vmware、VirtualBox、silverlightなど
・仮想OSの動かし方
PCに仮想ネットワークを作り、その中にマシンを置く
・centOS環境の作り方
※VagrantはVirtualBox前提で動くため、今回の資料ではVirtualBoxで解説
①VirtualBoxをインストール
②Vagrantをインストール
→それぞれのOSのボックスが用意されているため必要なものを追加
③OSを起動してSSH接続
→サーバーで作業できるようになる
・centOS8とcentOS7の違い
パッケージ管理システムがyumからdnfに変更された
★最近のTOPIC
・centOS Streamへのシフト
centOS Streamは明確なバージョンがなく、自動的に最新版が当たり続ける
・Amazon Linux
最近のWEB開発でよく使われている
centOSをベースにしていると言われており、ほぼ同じように使用可能
サーバーがAmazon Linux2はおそらくcentOS7がベース
■プロキシについて
★WEBプロキシとは
・ネットワークとサーバーの中継で通信経路の安全性を確保する
・通信料を減らしたり、通信の監視としても使用される
・プロトコルごとに様々な種類のプロキシが存在する
★フォワードプロキシ
・クライアントとサーバーの間に設置し、通信の代理や中継を行う
・悪用の観点で見るとプロキシサーバーを経由することで
アクセス元のIPアドレスがプロキシサーバーのIPアドレスになる
★キャッシュサーバ
・WEBサイト閲覧時にコンテンツを保存しておき、
要求があった時に代理で送信することで通信を抑えることができる
・大容量コンテンツの配信でよく使われるが、WEBソケット通信が邪魔されたりする
★透過型プロキシ
・通常のプロキシサーバーはプロキシ使うを設定が必要だが、
そういうことを意識しなくて良い
★リバースプロキシ
・キャッシュサーバー的な役割もするので、
リクエストを大量に受け取るWEBサーバーの前に設置して、
WEBサーバーの負荷を下げることができる
■概要
「Linuxディストリビューション」、「プロキシ」について解説
■Linuxディストリビューションについて
★Linuxの出現
・UNIXとは
商用OSがメインのLinuxの原型
マルチユーザー・マルチプロセスのOS
C言語によって記述されているため、理解や変更が容易で移植生も高い
・BSDとSystemV
UNIXは本来持っている移植性の高さから多くの派生版が開発され
今日ではSystemⅢ & Ⅴ系統・BSD系統が主流になっている
macOS(v10.12以降)のカーネルの部分にBSD系のUNIXが入っている
この2大勢力の間にGNUというOSが派生し、そこからLinuxが生まれた
・GNUとは
UNIXと上位互換性のあるフリーな総合ソフトウェアシステム
オープンソース化の運動が起こる
→インターネット革命が強力に推進される
・Linuxとは
UNIXのクローンOS
Linuxのカーネルを受け継いているOS
→Red Had、Debian、CentOSなど
★シェル
・シェルとは
カーネル:OSのコア
シェル:カーネルが持っているシステムコール(関数)を実行する
→システムトラブルなど変な処理が流れた場合、
カーネルに対して直接実行されているとOS全体に影響が出るが、
シェルを介していればその範囲に影響範囲を抑えることができる
macOS、windowsもUNIX系のカーネルを持っていると言われている
・UNIXシェル
C Shell(csh)、Bourne Shell(sh)などが有名
Linux/UNIX触ってて普通に使ってて出てくるのはBourne Shell
bashはBourne Shellの系統
macのfinderやwindowsのエクスプローラーはグラフィカルなシェルと言える
★Linuxディストリビューション
・Linuxディストリビューションとは
カーネルだけではなく、シェルや色々なソフトウェアやパッケージがあってはじめてOSとして機能する
このようなセットをディストリビューションという
・Linuxディストリビューションの系統
Slackware系:Linux普及初期に有名 今日使われているのはSUSE Linux
Red Hat系:パッケージ管理システムとしてRPMを使用
Debian系:パッケージ管理システムにdeb形式を使用 KNOPPIX、Ubuntu、Paspberry Pi OSなど
CentoOS系:Red Hat Enterprise Linuxのクローン
★三大ディストリビューション
・Red Hat Enterprise Linux
レッドハット社によって開発され、最初は無料だったが途中から有償化された
RPMPackage Managerを使っており、RPMコマンドを使って作業する
最近はyumをよく使う
・Debian
GNUの本流に近いプロジェクト
apt-getコマンドを使って作業する
・CentOS
web開発ではほとんどCentoOS
AWSで使われているLinuxもCentOS系
Red Hatよりも後発なので、よりyumでパッケージ管理する文化が強い
CentOS8からはyumの進化版dnfが導入されている
★VagrantでCentOS8環境を作ってみる
・バーチャルマシンとして有名なもの
vmware、VirtualBox、silverlightなど
・仮想OSの動かし方
PCに仮想ネットワークを作り、その中にマシンを置く
・centOS環境の作り方
※VagrantはVirtualBox前提で動くため、今回の資料ではVirtualBoxで解説
①VirtualBoxをインストール
②Vagrantをインストール
→それぞれのOSのボックスが用意されているため必要なものを追加
③OSを起動してSSH接続
→サーバーで作業できるようになる
・centOS8とcentOS7の違い
パッケージ管理システムがyumからdnfに変更された
★最近のTOPIC
・centOS Streamへのシフト
centOS Streamは明確なバージョンがなく、自動的に最新版が当たり続ける
・Amazon Linux
最近のWEB開発でよく使われている
centOSをベースにしていると言われており、ほぼ同じように使用可能
サーバーがAmazon Linux2はおそらくcentOS7がベース
■プロキシについて
★WEBプロキシとは
・ネットワークとサーバーの中継で通信経路の安全性を確保する
・通信料を減らしたり、通信の監視としても使用される
・プロトコルごとに様々な種類のプロキシが存在する
★フォワードプロキシ
・クライアントとサーバーの間に設置し、通信の代理や中継を行う
・悪用の観点で見るとプロキシサーバーを経由することで
アクセス元のIPアドレスがプロキシサーバーのIPアドレスになる
★キャッシュサーバ
・WEBサイト閲覧時にコンテンツを保存しておき、
要求があった時に代理で送信することで通信を抑えることができる
・大容量コンテンツの配信でよく使われるが、WEBソケット通信が邪魔されたりする
★透過型プロキシ
・通常のプロキシサーバーはプロキシ使うを設定が必要だが、
そういうことを意識しなくて良い
★リバースプロキシ
・キャッシュサーバー的な役割もするので、
リクエストを大量に受け取るWEBサーバーの前に設置して、
WEBサーバーの負荷を下げることができる