Apt-Cacher NGは、Ubuntu、Debian、LinuxMintなどを含むDebianベースのLinuxディストリビューション用のキャッシングプロキシサーバーです。Debianミラーおよびその他のLinuxディストリビューションのローカルキャッシュを作成します。 aptコマンドを使用してパッケージをインストールすると、パッケージは公式リポジトリからプルされ、APTキャッシュサーバーはそのパッケージをシステムにキャッシュします。同じパッケージを再度インストールすると、ローカルキャッシュサーバーからそのパッケージがダウンロードされます。これにより、時間とインターネット帯域幅を大幅に節約できます。
この投稿では、Ubuntu20.04でApt-CacherNGを使用してAPTキャッシュサーバーをセットアップする方法について説明します。
前提条件
- Atlantic.NetクラウドプラットフォームでUbuntu20.04を実行している2台のサーバー
- 両方のサーバーで構成されたルートパスワード
ステップ1-Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 2GB以上のRAMを搭載したオペレーティングシステムとしてUbuntu20.04を選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
Ubuntu 20.04サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
apt-get update -y
ステップ2–Apt-Cacher-NGをインストールする
apt-get install apt-cacher-ng -y
Apt-Cacher-NGパッケージがインストールされたら、Apt-Cacher-NGサービスを開始し、システムの再起動時に開始できるようにします。
systemctl start apt-cacher-ng systemctl enable apt-cacher-ng
次のコマンドを使用して、Apt-Cacher-NGのステータスを確認できます。
systemctl status apt-cacher-ng
サンプル出力:
● apt-cacher-ng.service - Apt-Cacher NG software download proxy Loaded: loaded (/lib/systemd/system/apt-cacher-ng.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2021-08-15 07:13:14 UTC; 20s ago Main PID: 3748 (apt-cacher-ng) Tasks: 1 (limit: 2353) Memory: 2.0M CGroup: /system.slice/apt-cacher-ng.service └─3748 /usr/sbin/apt-cacher-ng -c /etc/apt-cacher-ng ForeGround=1 Aug 15 07:13:13 ubuntu2004 systemd[1]: Starting Apt-Cacher NG software download proxy... Aug 15 07:13:14 ubuntu2004 systemd[1]: Started Apt-Cacher NG software download proxy.
ss -altnp | grep apt
サンプル出力:
LISTEN 0 250 0.0.0.0:3142 0.0.0.0:* users:(("apt-cacher-ng",pid=3748,fd=10)) LISTEN 0 250 [::]:3142 [::]:* users:(("apt-cacher-ng",pid=3748,fd=11))
ステップ3–Apt-Cacher-NGを構成する
nano /etc/apt-cacher-ng/acng.conf
次の行のコメントを解除します:
PassThroughPattern: .*
ファイルを保存して閉じてから、Apt-Cacher-NGサービスを再起動して変更を適用します。
systemctl restart apt-cacher-ng
ステップ4–Apt-CacherNGを使用するようにクライアントシステムを構成する
これを行うには、新しいプロキシ構成ファイルを作成します。
nano /etc/apt/apt.conf.d/00aptproxy
次の行を追加します:
Acquire::http::Proxy "http://your-server-ip:3142";
終了したら、ファイルを保存して閉じます。
ステップ5–APT-CacherNGを確認する
それでは、次のコマンドを使用して、クライアントシステムにApacheパッケージをインストールしてみましょう。
apt-get install apache2 -y
上記のコマンドは、Apt-Cache NGサーバーからApacheパッケージを検索、ダウンロード、およびインストールします。
サーバーシステムで次のコマンドを使用して確認できます。
tail -f /var/log/apt-cacher-ng/apt-cacher.log
サンプル出力:
1629012079|I|91694|69.87.221.199|uburep/pool/main/a/apr/libapr1_1.6.5-1ubuntu1_amd64.deb 1629012079|O|91685|69.87.221.199|uburep/pool/main/a/apr/libapr1_1.6.5-1ubuntu1_amd64.deb 1629012079|I|85057|69.87.221.199|uburep/pool/main/a/apr-util/libaprutil1_1.6.1-4ubuntu2_amd64.deb 1629012079|O|85058|69.87.221.199|uburep/pool/main/a/apr-util/libaprutil1_1.6.1-4ubuntu2_amd64.deb 1629012079|I|10880|69.87.221.199|uburep/pool/main/a/apr-util/libaprutil1-dbd-sqlite3_1.6.1-4ubuntu2_amd64.deb 1629012079|O|10894|69.87.221.199|uburep/pool/main/a/apr-util/libaprutil1-dbd-sqlite3_1.6.1-4ubuntu2_amd64.deb 1629012079|I|9071|69.87.221.199|uburep/pool/main/a/apr-util/libaprutil1-ldap_1.6.1-4ubuntu2_amd64.deb 1629012079|O|9078|69.87.221.199|uburep/pool/main/a/apr-util/libaprutil1-ldap_1.6.1-4ubuntu2_amd64.deb 1629012079|I|29280|69.87.221.199|uburep/pool/main/j/jansson/libjansson4_2.12-1build1_amd64.deb 1629012079|O|29279|69.87.221.199|uburep/pool/main/j/jansson/libjansson4_2.12-1build1_amd64.deb 1629012079|I|1180480|69.87.221.199|uburep/pool/main/a/apache2/apache2-bin_2.4.41-4ubuntu3.4_amd64.deb 1629012079|O|1180482|69.87.221.199|uburep/pool/main/a/apache2/apache2-bin_2.4.41-4ubuntu3.4_amd64.deb 1629012079|I|158846|69.87.221.199|uburep/pool/main/a/apache2/apache2-data_2.4.41-4ubuntu3.4_all.deb 1629012079|O|158848|69.87.221.199|uburep/pool/main/a/apache2/apache2-data_2.4.41-4ubuntu3.4_all.deb 1629012079|I|84349|69.87.221.199|uburep/pool/main/a/apache2/apache2-utils_2.4.41-4ubuntu3.4_amd64.deb 1629012079|O|84354|69.87.221.199|uburep/pool/main/a/apache2/apache2-utils_2.4.41-4ubuntu3.4_amd64.deb 1629012079|I|95853|69.87.221.199|uburep/pool/main/a/apache2/apache2_2.4.41-4ubuntu3.4_amd64.deb 1629012079|O|95852|69.87.221.199|uburep/pool/main/a/apache2/apache2_2.4.41-4ubuntu3.4_amd64.deb 1629012079|I|17288|69.87.221.199|uburep/pool/main/s/ssl-cert/ssl-cert_1.0.39_all.deb 1629012079|O|17277|69.87.221.199|uburep/pool/main/s/ssl-cert/ssl-cert_1.0.39_all.deb
Apt-Cache NGは、すべてのレポートを表示するためのWebベースのインターフェイスも提供します。 URLを使用してアクセスできます
http:// your-server-ip:3142 / acng-report.html 。次の画面が表示されます。
ステップ6–Apt-CacherNGの使用を制御する
認証されたホストのみがApt-CacherNGサーバーからパッケージをダウンロードできるようにApt-CacheNGのアクセス制御を設定することもできます。
/etc/hosts.allowおよび/etc/hosts.denyを使用してアクセスを制御できます。
たとえば、192.168.0.10と192.168.0.11がApt-Cacher NGサーバーを使用できるようにするには、/ etc/hosts.allowファイルを編集します。
nano /etc/hosts.allow
次の行を追加します:
apt-cacher-ng : 192.168.0.10 192.168.0.11
終了したら、ファイルを保存して閉じます。
ホスト192.168.1.100をブロックしてApt-CacherNGサーバーを使用する場合は、/ etc/hosts.denyファイルを編集します。
nano /etc/hosts.deny
次の行を追加します:
apt-cacher-ng : 192.168.1.100
終了したら、ファイルを保存して閉じます。
結論
上記のガイドでは、Ubuntu20.04サーバーにApt-CacheNGサーバーをインストールして使用する方法について説明しました。これで、ローカルネットワークにApt-Cache NGを設定して、インターネット帯域幅を大幅に節約できます。Atlantic.NetのVPSホスティングで試してみてください。