Configure vyatta
Username: vyatta
Password: vyatta
配置网卡:
编辑:
configure
内部网络IP地址配置:192.168.0.1
set interfaces ethernet eth0 address 192.168.0.1/24
set interfaces ethernet eth0 description Inside
从DHCP 服务器上自动外网IP地址:
set interfaces ethernet eth1 address dhcp
set interfaces ethernet eth1 description Outside
commit
查看:
show interfaces
ip addr
ping www.google.com
ethernet eth0 {
address 192.168.0.1/24
description Inside
duplex auto
smp_affinity auto
speed auto
}
ethernet eth1 {
address dhcp
description Outside
duplex auto
firewall {
in {
name WAN_IN
}
}
smp_affinity auto
speed auto
}
loopback lo {
}
配置SSH:
set service ssh port '22'
set service ssh listen-address 192.168.0.1 (router内网ip地址)
commit
vyatta@vyatta# show service ssh
listen-address 192.168.0.1
port 22
protocol-version v2
内网通外网:
配置网络地址转换(NAT): //内部网络的所有机器共享同一个外部网络地址(连接外网)
Configure Source NAT for our "Inside" network.
set service nat rule 10 outbound-interface eth1 (外网网卡) NAT出口设置
set service nat rule 10 source address 192.168.0.0/24 NAT需要转换的地址
set service nat rule 10 type masquerade 启用NAT
commit
vyatta@vyatta# show service
nat {
rule 10 {
outbound-interface eth1
source {
address 192.168.0.0/24
}
type masquerade
}
设置DNS Forwarding(DNS 服务器转发):
set service dns forwarding listen-on eth0 (内网网卡)
set service dns forwarding cache-size '0'
set service dns forwarding name-server 10.108.36.85 (搭建有dns服务器的任意一台VM的IP地址)
commit
vyatta@vyatta# show service dns
dns {
forwarding {
cache-size 0
listen-on eth0 (内网)
name-server 10.108.36.85
}
}
外网通内网:
配置防火墙规则:
set firewall name WAN_IN rule 10 action accept
set firewall name WAN_IN rule 10 destination address 192.168.0.12
set firewall name WAN_IN rule 10 destination port 443
set firewall name WAN_IN rule 10 protocol tcp
set firewall name WAN_IN rule 10 description ALLOW-ACCESS-TO-ACCESS-GATEWAY
set firewall name WAN_IN rule 10 log enable
set firewall name WAN_IN rule 20 action accept
set firewall name WAN_IN rule 20 destination address 192.168.0.0/24
set firewall name WAN_IN rule 20 description NAT-FOR-LAN
Commit
NAT rule:
set service nat rule 20 destination address 10.108.16.30 (router 外网IP地址)
set service nat rule 20 destination port 443 (内网443端口打开)
set service nat rule 20 inbound-interface eth1 (外网网卡)
set service nat rule 20 inside-address address 192.168.0.12 (gateway ip address, vip 客户端访问的ip地址)绑定内网web server 的ip 地址和端口号
set service nat rule 20 inside-address port 443
set service nat rule 20 type destination
set service nat rule 20 protocol tcp
commit
vyatta@vyatta# show service
rule 20 {
destination {
port 443
}
inbound-interface eth1
inside-address {
address 192.168.0.12
port 443
}
protocol tcp
type destination
}
}
防火墙策略分配给NIC eth1
set interfaces ethernet eth1 firewall in name WAN_IN 在 eth1(外网网卡)上配置WAN_IN策略
Commit
Configure a DHCP Server:
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 default-router '192.168.0.1'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24
dns-server '192.168.0.1'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24
domain-name 'internal-network'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 lease
'86400'
set service dhcp-server disabled 'false'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 start
192.168.0.30 stop '192.168.0.254'
commit
save
vyatta@vyatta# show service dhcp-server
disabled false
shared-network-name DHCP_Pool_ETH1 {
authoritative disable
subnet 192.168.0.0/24 {
default-router 192.168.0.1
dns-server 192.168.0.1
domain-name internal-network
lease 86400
start 192.168.0.30 {
stop 192.168.0.254
}
}
}
Commit
Save
检查内外网通信:
内网VM 打开外网共享服务器
外网打开https:router_externel_ip
更多内容可参考:From <https://wiki.vyos.net/wiki/User_Guide>
Configure vyatta的更多相关文章
- 国产深度学习框架mindspore-1.3.0 gpu版本无法进行源码编译
官网地址: https://www.mindspore.cn/install 所有依赖环境 进行sudo make install 安装,最终报错: 错误记录信息: cat /tmp/mind ...
- vyatta常用操作
vyatta是一个小巧而强大的基于debian的 Linux路由发行版,随着云计算的深入,云内部的虚拟机通信已经摆脱了物理路由器的束缚,而路由器变成了一个逻辑存在,而不是一个物理实体,云路由由此诞生, ...
- vyatta的fork开源版本
https://www.reddit.com/r/networking/comments/3dvwfy/who_here_is_using_vyos/ Vyatta came in two flavo ...
- vyatta的fork开源版本vyos
vyatta的fork开源版本vyos 来源: https://www.reddit.com/r/networking/comments/3dvwfy/who_here_is_using_vyos/ ...
- Vyatta 网络操作系统
原文发表于:2010-09-19 转载至cu于:2012-07-21 以下是"开源中国社区"写到的: http://www.oschina.net/news/11423/vyatt ...
- Configure a VLAN on top of a team with NetworkManager (nmcli) in RHEL7
SOLUTION VERIFIED September 13 2016 KB1248793 Environment Red Hat Enterprise Linux 7 NetworkManager ...
- Configure a bridge interface over a VLAN tagged bonded interface
SOLUTION VERIFIED February 5 2014 KB340153 Environment Red Hat Enterprise Linux 6 (All Versions) Red ...
- Configure a bridged network interface for KVM using RHEL 5.4 or later?
environment Red Hat Enterprise Linux 5.4 or later Red Hat Enterprise Linux 6.0 or later KVM virtual ...
- [转]Linux中configure/makefile
本文教你如何使用autoconf.automake等来制作一个以源代码形式(.tar.gz)发布的软件.并可在执行configure时使用自定义参数. 一.概述和基础知识 在Linux下得到一个以源代 ...
随机推荐
- mycat sql timeout 问题解决
发现程序中有个批量update语句需要update 16000多条数据导致超时 2019-11-06 10:35:28.312 pool-9-thread-24 ERROR com.hp.nova.c ...
- 关于写SQL语句的技巧
一.SQL总结写法 SQL的写法无非就是几种,关联查询,子查询,分组函数,各种函数的使用 1.首先根据要做的需求,先分析一下,需要用到哪些查询,例如要用到关联查询,就先把用到的表列出来,比如a,b,c ...
- Spring源码解析 - springMVC核心代码
一.首先来讲解下springMVC的底层工作流程 1.首先我们重点放在前端控制器(DispatcherServlet) 其类图: 因为从流程图看,用户的请求最先到达就是DispatcherServle ...
- Rabbitmq各方法的作用详解
exchange_declare('direct_logs', 'direct', false, false, false);// 这个是申明交换器,如果没有申明就给默认队列的这个交换器,而且发送的类 ...
- 【Distributed】大型网站高并发和高可用
一.DNS域名解析 二.大型网站系统应有的特点 三.网站架构演变过程 3.1 传统架构 3.2 分布式架构 3.3 SOA架构 3.4 微服务架构 四.高并发设计原则 4.1 拆分系统 4.2 服务化 ...
- Django—admin系统:admin的使用及源码剖析
admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLE ...
- 异步处理的框架Sanic的使用方法和小技巧
Sanic是异步处理的框架,运用Sanic可以开发快速异步响应的web程序.想必大家看到这个都会比较期待和兴奋. 那么如何使用Sanic来实现快速响应呢?我们先来看一看Sanic的基本介绍. Sani ...
- C 动态内存申请
例子: int *p=0; int number=0; scanf("%d",&number); p = (int*)malloc(number*sizeof(int));
- Linux查找并杀死僵尸进程(转)
1.查看系统是否有僵尸进程 使用Top命令查找,当zombie前的数量不为0时,即系统内存在相应数量的僵尸进程. 2.定位僵尸进程 使用命令ps -A -ostat,ppid,pid,cmd |gre ...
- new函数
可以通过new函数直接创建一个类型的指针 变量名:=new(Type) 使用new函数创建的指针已有指向,可以使用*指针对象进行赋值. func main() { a := new(int) fmt. ...