差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
linuxルータ構築 [2023/07/03 22:56] – 118.240.79.152 | linuxルータ構築 [Unknown date] (現在) – 削除 - 外部編集 (Unknown date) 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
- | # Linux ルータ | ||
- | |||
- | # Rocky Linux 9編 | ||
- | |||
- | 設定初期化 | ||
- | |||
- | ``` | ||
- | sudo systemctl stop firewalld | ||
- | sudo rm -rf / | ||
- | sudo cp -rp / | ||
- | sudo systemctl start firewalld | ||
- | ``` | ||
- | |||
- | eth0が外、eth1が内の場合 | ||
- | |||
- | ``` | ||
- | firewall-cmd --zone=external --change-interface=eth0 --permanent | ||
- | firewall-cmd --zone=internal --change-interface=eth1 --permanent | ||
- | # -- -- | ||
- | firewall-cmd --permanent --new-policy natPolicy | ||
- | firewall-cmd --permanent --policy natPolicy --set-target ACCEPT | ||
- | firewall-cmd --permanent --policy natPolicy --add-egress-zone external | ||
- | firewall-cmd --permanent --policy natPolicy --add-ingress-zone internal | ||
- | firewall-cmd --reload | ||
- | ``` | ||
- | |||
- | |||
- | # CentOS7編(old) | ||
- | CentOS7をインストールし、1つのNICに192.168.251.204 (enp3s0)、もう一つのNICにOCNから割り当てられた動的なIP (ppp0)が設定されている。 | ||
- | |||
- | ``` | ||
- | firewall-cmd --get-active-zone | ||
- | firewall-cmd --zone=external --change-interface=ppp0 --permanent | ||
- | firewall-cmd --zone=trusted --change-interface=enp3s0 --permanent | ||
- | firewall-cmd --zone=external --add-forward-port=port=8352: | ||
- | 4 --permanent | ||
- | firewall-cmd --zone=trusted --add-masquerade --permanent | ||
- | firewall-cmd --reload | ||
- | firewall-cmd --get-active-zone | ||
- | firewall-cmd --list-all --zone=trusted | ||
- | firewall-cmd --list-all --zone=external | ||
- | ``` | ||
- | |||
- | firewalldで制御せず、単にポートを転送するだけなら | ||
- | |||
- | ``` | ||
- | firewall-cmd --list-all --zone=public | ||
- | firewall-cmd --zone=public --add-port=2222/ | ||
- | firewall-cmd --reload | ||
- | socat tcp-listen: | ||
- | ``` | ||
- | |||
- | firewalldでポート開けるには | ||
- | |||
- | ``` | ||
- | firewall-cmd --zone=public --add-port=1187/ | ||
- | firewall-cmd --zone=public --add-port=10050/ | ||
- | firewall-cmd --permanent --add-service=nfs --zone=internal | ||
- | firewall-cmd --permanent --add-service=mountd --zone=internal | ||
- | firewall-cmd --permanent --add-service=rpc-bind --zone=internal | ||
- | firewall-cmd --reload | ||
- | ``` | ||
- | |||
- | PPPoEだと速度が出ないので、普通に192.168.251.xxxとNTT光のLANの間をルーティング | ||
- | |||
- | enp3s0がinternalで、enp0s25がpublic(NTT側) | ||
- | |||
- | ``` | ||
- | firewall-cmd --permanent --zone=internal --change-interface=enp3s0 | ||
- | firewall-cmd --permanent --zone=internal --add-masquerade | ||
- | firewall-cmd --permanent --direct --add-rule ipv4 nat POSTROUTING 0 -o enp0s25 -j MASQUERADE | ||
- | firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i enp3s0 -o enp0s25 -j ACCEPT | ||
- | firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i enp0s25 -o enp3s0 -m state --state RELATED, | ||
- | firewall-cmd --reload | ||
- | firewall-cmd --direct --get-all-rules # | ||
- | firewall-cmd --direct --get-all-rules --permanent # | ||
- | ``` | ||
- | |||
- | ポート転送をする場合 | ||
- | |||
- | ``` | ||
- | firewall-cmd --zone=public --add-forward-port=port=1187: | ||
- | firewall-cmd --zone=public --add-forward-port=port=1186: | ||
- | ``` | ||
- | |||
- | ポート転送をやめる場合 | ||
- | |||
- | ``` | ||
- | firewall-cmd --zone=public --remove-forward-port=port=1186: | ||
- | ``` | ||
- | ## CentOS7編 2023 (失敗) | ||
- | |||
- | ``` | ||
- | sudo nmtui | ||
- | ``` | ||
- | |||
- | で2つのNICを設定。デフォルトゲートウェイにしないほうに、「デフォルトゲートウェイにしない」にチェックを入れておく。それ以外は同じ設定をして | ||
- | |||
- | ``` | ||
- | sudo systemctl restart network | ||
- | ``` | ||
- | |||
- | でネットワーク接続を変更。```route```コマンドで変更を確認。 | ||
- | |||
- | ``` | ||
- | sudo nano / | ||
- | ``` | ||
- | |||
- | で、ファイルの最後に | ||
- | |||
- | ``` | ||
- | net.ipv4.ip_forward=1 | ||
- | ``` | ||
- | |||
- | を追加してOSを再起動。 | ||
- | |||
- | ``` | ||
- | cat / | ||
- | ``` | ||
- | |||
- | で1と表示されるか確認。(変更前は0) | ||
- | でも、この手順では他のPCからルーターとして使用するのはダメだったので、oldの手順で行う必要がありそう。 | ||
- | |||
- | |||
- | |||
- | |||
- | ## r251 | ||
- | |||
- | Ubuntu 20での話。 | ||
- | ufwを有効にした後 | ||
- | ``` | ||
- | sudo ufw allow in from 192.168.0.0/ | ||
- | ``` | ||
- | で研究室内からのみアクセスを受け入れる。 | ||
- | |||
- | ルーター化するには | ||
- | |||
- | / | ||
- | ``` | ||
- | DEFAULT_FORWARD_POLICY=" | ||
- | ``` | ||
- | |||
- | / | ||
- | ``` | ||
- | net.ipv4.ip_forward=1 | ||
- | ``` | ||
- | |||
- | / | ||
- | ``` | ||
- | # *filterの前あたりに下記を追加 | ||
- | |||
- | *nat | ||
- | # | ||
- | -F | ||
- | : | ||
- | |||
- | # Forward traffic from eth0 through eth1. | ||
- | -A POSTROUTING -s 192.168.253.0/ | ||
- | -A PREROUTING -i enp5s0 -p tcp -d 133.11.144.11 --dport 80 -j DNAT --to-destination 192.168.253.163: | ||
- | -A PREROUTING -i enp5s0 -p tcp -d 133.11.144.11 --dport 443 -j DNAT --to-destination 192.168.253.163: | ||
- | |||
- | COMMIT | ||
- | |||
- | ``` | ||
- | |||
- | ``` | ||
- | sudo ufw disable && sudo ufw enable | ||
- | ``` | ||
- | |||
- | ``` | ||
- | # | ||
- | sudo systemctl restart ufw.service | ||
- | |||
- | # | ||
- | sudo iptables -t nat -nL | ||
- | ``` | ||
- | |||
- | |||
- | ``` | ||
- | sudo ufw status | ||
- | sudo ufw allow 80 | ||
- | sudo ufw allow 443 | ||
- | ``` | ||
- | |||
- | ``` | ||
- | sudo nmtui | ||
- | ``` | ||
- | 下記の箇所を変更 | ||
- | ``` | ||
- | │ 送信先/ | ||
- | │ 192.168.0.0/ | ||
- | │ < | ||
- | │ | ||
- | │ < | ||
- | ``` | ||
- | ``` | ||
- | [X] このネットワークはデフォルトのルートには使用しない | ||
- | [X] 自動的に取得されたルートを無視 | ||
- | ``` | ||
- | |||
- | ### r251 proxyサーバ構築 | ||
- | |||
- | ``` | ||
- | apt install squid apache2-utils | ||
- | ``` | ||
- | |||
- | / | ||
- | |||
- | ``` | ||
- | auth_param basic program / | ||
- | auth_param basic children 50 | ||
- | auth_param basic realm Squid Basic Authentication | ||
- | auth_param basic credentialsttl 1000 hours | ||
- | acl password proxy_auth REQUIRED | ||
- | http_access allow password | ||
- | ``` | ||
- | |||
- | ``` | ||
- | htpasswd -c / | ||
- | ``` | ||
- | |||
- | でパスワードを作成。 | ||
- | |||
- | ``` | ||
- | systemctl restart squid | ||
- | ufw allow 3128 | ||
- | ``` | ||
- | |||
- | クライアントは次のような感じで設定する。 | ||
- | |||
- | {{: | ||
- | |||
- | ### zabbix_agentd設定 | ||
- | |||
- | r251やr311から```zabbix_agent-3.0.32-linux-3.0-amd64-static.tar.gz```を転送して、/ | ||
- | |||
- | ``` | ||
- | cd /usr/local | ||
- | tar vxf zabbix_agent-3.0.32-linux-3.0-amd64-static.tar.gz | ||
- | mv conf/* etc/ | ||
- | rmdir conf | ||
- | |||
- | sudo nano / | ||
- | # | ||
- | [Unit] | ||
- | Description=Zabbix Agent | ||
- | # | ||
- | After=network.target | ||
- | |||
- | [Service] | ||
- | # | ||
- | # | ||
- | Type=forking | ||
- | # | ||
- | # | ||
- | # | ||
- | # | ||
- | ExecStart=/ | ||
- | # | ||
- | User=yoshitake | ||
- | Group=yoshitake | ||
- | # | ||
- | # | ||
- | |||
- | [Install] | ||
- | WantedBy=multi-user.target | ||
- | |||
- | ##### | ||
- | sudo systemctl start zabbix-agent.service | ||
- | sudo systemctl enable zabbix-agent.service | ||
- | ``` | ||
- | |||
- | ## r311にポート転送追加 | ||
- | |||
- | まずは、firefoxでhttp:// | ||
- | |||
- | ``` | ||
- | sudo nano / | ||
- | ``` | ||
- | |||
- | で下記を追加する。 | ||
- | |||
- | ``` | ||
- | -A PREROUTING -i enp10s0 -p tcp --dport 2208 -j DNAT --to-destination 192.168.251.140: | ||
- | ``` | ||
- | |||
- | その後、 | ||
- | |||
- | ``` | ||
- | sudo ufw reload | ||
- | ``` | ||
- | |||
- | ## r311のIPマスカレード再設定 | ||
- | |||
- | r311を入れ替えた際、アダプタの名前が変わってenp10s0→eno2になった。 | ||
- | そのため、r311をデフォルトゲートウェイにしているm50v311n1などが外に通信できなくなった。 | ||
- | |||
- | r311にログインして、 | ||
- | |||
- | ``` | ||
- | sudo nmtui | ||
- | #IP: 192.168.11.101/ | ||
- | |||
- | sudo nano / | ||
- | #-A POSTROUTING -s 192.168.251.0/ | ||
- | |||
- | sudo ufw disable && sudo ufw enable | ||
- | # | ||
- | ``` | ||
- | |||
- | |||
- | |||