4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Proxy経由でSUSEのリポジトリにアクセス

Posted at

はじめに

色々な理由でサーバが直接インターネット接続する事を拒否している環境では
Proxyサーバ経由でインターネット接続するような構成をとる事があります。
先日、そのような環境でSUSEのリポジトリにアクセスするのに苦戦しましたので実施したことを残しておきたいと思います。

検証した環境

Azureの東日本リージョンにProxyサーバ(REHL8 + Squid)とクライアントのSLESのVMを配置。
Proxyサーバからは直接インターネットに出られるようにしています。

configurationdiagram.png

Proxyサーバの設定

Proxyサーバ側で名前解決が出来る必要があるため、東日本リージョンのSMTサーバを一つ選択してhostsに追加します。
DNSサーバに追加でも大丈夫です…多分。
Azure用のSMTサーバのIPアドレスはこちらから取得出来ます。

hosts
52.185.185.83   smt-azure.susecloud.net smt-azure

squidにhostsのエントリを利用するように設定します。

/etc/squid/squid.conf
hosts_file /etc/hosts

設定後squidを再起動します。

systemctl restart squid.service

SLES(クライアント)の設定

proxyの設定をします。
再起動後もProxyを使用するように/etc/sysconfig/proxyを編集します。

/etc/sysconfig/proxy
# 値を以下のように修正します。
PROXY_ENABLED="yes"
HTTP_PROXY="http://<Proxyサーバ>:<ポート>"
HTTPS_PROXY="http://<Proxyサーバ>:<ポート>"

hostsのIPアドレスをProxyサーバに合わせます。

hosts
# Added by SMT registration do not remove, retain comment as well
52.185.185.83   smt-azure.susecloud.net smt-azure

SLESのVirtual Machineデプロイ時にインターネット接続が出来ない場合はhostsにSMTサーバのエントリが入っていません。
その場合はhostsに手動で追加せず、リポジトリ情報をクリアして再登録を行います。

SUSEConnect --cleanup
rm -f /etc/SUSEConnect
rm -rf /etc/zypp/credentials.d/*
rm -rf /etc/zypp/repos.d/*
rm -f /etc/zypp/services.d/*
rm /var/lib/cloudregister/*
rm -rf /var/cache/zypp/*
registercloudguest --force-new

上記コマンド実行後、hostsにSMTサーバのエントリが登録されていることを確認出来ます。
もしProxyサーバのhosts内のIPアドレスと違う場合は合わせてください。
キャッシュ等の影響で違うIPアドレスが入ることがあります。

SLESのhosts
# Added by SMT registration do not remove, retain comment as well
52.185.185.83   smt-azure.susecloud.net smt-azure

zypperでリポジトリにアクセス出来ることを確認しました。

tamura-vm-sles:~ # zypper refresh
Repository 'SLE-Module-Basesystem15-SP3-Pool' is up to date.             
Repository 'SLE-Module-Basesystem15-SP3-Updates' is up to date.          
Repository 'SLE-Module-Containers15-SP3-Pool' is up to date.             
Repository 'SLE-Module-Containers15-SP3-Updates' is up to date.          
Repository 'SLE-Module-Desktop-Applications15-SP3-Pool' is up to date.   
Repository 'SLE-Module-Desktop-Applications15-SP3-Updates' is up to date.
Repository 'SLE-Module-DevTools15-SP3-Pool' is up to date.               
Repository 'SLE-Module-DevTools15-SP3-Updates' is up to date.            
Repository 'SLE-Module-Legacy15-SP3-Pool' is up to date.                 
Repository 'SLE-Module-Legacy15-SP3-Updates' is up to date.              
Repository 'SLE-Module-Public-Cloud15-SP3-Pool' is up to date.           
Repository 'SLE-Module-Public-Cloud15-SP3-Updates' is up to date.        
Repository 'SLE-Module-Python2-15-SP3-Pool' is up to date.               
Repository 'SLE-Module-Python2-15-SP3-Updates' is up to date.            
Repository 'SLE-Module-CAP-Tools15-SP3-Pool' is up to date.              
Repository 'SLE-Module-CAP-Tools15-SP3-Updates' is up to date.           
Repository 'SLE-Product-SLES15-SP3-Pool' is up to date.                  
Repository 'SLE-Product-SLES15-SP3-Updates' is up to date.               
Repository 'SLE-Module-Server-Applications15-SP3-Pool' is up to date.    
Repository 'SLE-Module-Server-Applications15-SP3-Updates' is up to date. 
Repository 'SLE-Module-Web-Scripting15-SP3-Pool' is up to date.          
Repository 'SLE-Module-Web-Scripting15-SP3-Updates' is up to date.       
All repositories have been refreshed.

最後に

今回はAzure上のSLESで実行しましたがAWSやGoogle Cloudにおいても同じ設定で接続可能だと思います。
ただし、SMTサーバのIPアドレスは各クラウドで用意されているので注意してください。
AWS用SMTサーバ一覧
Google Cloud用SMTサーバ一覧

参考

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?