はじめに
CentOS8 にGNS3 をインストールする手順のみを書きます。
CentOS8 からPython3 が標準搭載されるようになったのでCentOS7 と比べてインストール手順がだいぶ簡略化されました。
- 活用例
- 環境構築
- インストール後の設定
- 使い方
- VM の取り込み
は以下の過去の記事をご覧ください。バージョンが変わっても同じです。
GNS3 でバックエンド開発を便利に(前編)
GNS3 でバックエンド開発を便利に(後編)
基本セットアップ
update & reboot
sudo dnf -y update
sudo reboot
EPEL リポジトリの追加とデフォルトで無効設定。
sudo dnf -y install epel-release
sudo dnf config-manager --set-disable epel
リモートデスクトップ用のfirewalld のサービス定義を新規作成。
/etc/firewalld/services/RDP.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>RDP</short>
<description>RDP</description>
<port protocol="tcp" port="3389"/>
</service>
sudo chmod 640 /etc/firewalld/services/RDP.xml
firewalld の設定。
sudo nmcli c mod eth0 connection.zone internal
sudo firewall-cmd --set-default-zone=internal
sudo firewall-cmd --zone=internal --add-service=RDP --permanent
sudo firewall-cmd --zone=internal --remove-service=mdns --permanent
sudo firewall-cmd --zone=internal --remove-service=samba-client --permanent
sudo firewall-cmd --zone=internal --remove-service=dhcpv6-client --permanent
sudo firewall-cmd --reload
GUI 環境のインストールと設定
GNOME Desktop のインストールと起動設定。
sudo dnf -y group install "Server with GUI"
sudo systemctl set-default graphical.target
RDP のインストール
sudo dnf -y --enablerepo=epel install xrdp tigervnc-server
色深度を24ビットに変更。
/etc/xrdp/xrdp.ini
max_bpp=24
以下2つは、リモートデスクトップしたときに色々警告のポップアップが出ないようにするための設定。
それぞれ、追記と新規作成。
/etc/xdg/autostart/gnome-software-service.desktop
X-GNOME-Autostart-enabled=false
/etc/polkit-1/localauthority/50-local.d/allow-colord.pkla
[Allow colord for all users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager.create-profile;org.freedesktop.color-manager.delete-device;org.freedesktop.color-manager.delete-profile;org.freedesktop.color-manager.modify-device;org.freedesktop.color-manager.modify-profile
ResultAny=yes
ResualtInactive=auth_admin
ResultActive=yes
リモートデスクトップサービスの自動起動設定。
sudo systemctl enable xrdp.service
reboot してリモートデスクトップできるか確認してみる。
sudo reboot
GNS3 インストール前の準備
mkdir ~/Downloads
sudo ln -s /usr/lib/python3.6 /usr/local/lib/python3.6
sudo dnf -y install make python36-devel
sudo dnf -y install python3-qt5
sudo dnf -y install cmake elfutils-libelf-devel libuuid-devel
sudo dnf -y --enablerepo=PowerTools install libpcap-devel
sudo dnf -y install openssl-libs.i686 libgcc.i686 libnsl.i686
sudo ln -s /usr/lib/libcrypto.so.1.1.1 /usr/lib/libcrypto.so.4
cd ~/Downloads
wget http://ndevilla.free.fr/iniparser/iniparser-3.1.tar.gz
tar zxf iniparser-3.1.tar.gz
cd iniparser
make
sudo cp libiniparser* /usr/lib
sudo cp src/*.h /usr/include
GNS3 のインストール
cd ~/Downloads
wget https://github.com/GNS3/gns3-gui/releases/download/v2.2.0/GNS3-2.2.0.source.zip
unzip GNS3-2.2.0.source.zip
unzip gns3-server-2.2.0.zip
cd gns3-server-2.2.0
sudo python3 setup.py install
cd ~/Downloads
unzip gns3-gui-2.2.0.zip
cd gns3-gui-2.2.0
sudo python3 setup.py install
cd ~/Downloads
unzip ubridge-0.9.14.zip
cd ubridge-0.9.14
make
sudo make install
cd ~/Downloads
unzip dynamips-0.2.17
cd dynamips-0.2.17
mkdir build
cd build
cmake ..
make
sudo make install
sudo setcap cap_net_admin,cap_net_raw=ep /usr/local/bin/dynamips
sudo dnf -y install bison flex
sudo dnf -y --enablerepo=PowerTools install glibc-static
cd ~/Downloads
unzip vpcs-0.6.1.zip
cd vpcs-0.6.1/src
#
# 「./getopt.h:53:5: エラー: ‘getopt’ と型が競合しています」
# というエラーが出るのでgetopt.c:113, getopt.h:53 のgetopt をgetopt2 とでも編集する。
#
./mk.sh
sudo cp vpcs /usr/local/bin
cd ~/Downloads
wget http://sourceforge.net/projects/cpulimit/files/cpulimit/cpulimit/cpulimit-1.1.tar.gz
tar zxvf cpulimit-1.1.tar.gz
cd cpulimit-1.1
make
sudo cp cpulimit /usr/local/bin
sudo ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-system-x86_64
sudo dnf -y install wireshark
おわりに
CentOS6, GNS3 1.5.x の頃のインストール手順を踏襲しているので、
不要なものまでインストールしていたり、効率の悪いやり方をしているかもしれません。
改善点があればご連絡下さい。