CentOS6.x网络基础及相关配置

做实验的时候,首先要关闭防火墙和selinux,然后配置好网卡信息。

防火墙临时关闭:iptables �CF

查看防火墙状态:iptables -L

防火墙永久关闭:/etc/init.d/iptables stop

service iptables stop

selinux临时关闭:setenforce 0

永久关闭:sed �Ci“7s/enforcing/disabled/g”/etc/selinux/config

一、名词解释:

CDN 内容分发网络

DDOS 拒绝服务攻击

1、地址的分类

1)网络地址:互联网协议地址(IP地址),IP地址工作在网络层

IP地址的分类:IPV4 IPv6

2)物理地址:物理地址(MAC地址)是每一个设备的固定地址,MAC地址工作在链路层。

2、协议分类:

1、网络层协议:IP协议、ICMP协议、ARP协议等

2、传输层协议:TCPUDP

3、应用层协议:DHCPDNSFTPSSH

3、常见端口:

20 21 ftp服务 文件共享

22 ssh 服务 安全远程网络管理

23 telnet服务

25 smtp 简单邮件传输协议 发信

110 pop3 邮局协议 收信

80 www 网页服务

3306 MysqL 端口

53 DNS 端口

二、网关和路由配置

ifconfig eth0 要设置的IP地址 设置IP地址和子网掩码(临时生效)

1ifconfig eth0 192.168.115.102/24

2ifconfig eth0 192.168.115.102 netmask 255.255.255.0

3(给网卡设置子网卡):ifconfig eth0:0 192.168.115.102

注意:子网卡IP不能和其他IP重复

网卡配置:

永久生效(修改配置文件):/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 网卡名称

HWADDR=00:0c:29:65:da:3e 网卡的Mac地址(可删)

TYPE=Ethernet 网络类型(可删)

UUID=836c05a4-e78a-424e-8b3b-05cb6c126438 网卡UUID(可删)

ONBOOT=yes 开机是否自启动

NM_CONTROLLED=yes 可忽略

BOOTPROTO=static 网卡获取IP地址的方式

IPADDR=192.168.115.105 IP地址

NETMASK=255.255.255.0 子网掩码

DNS2=8.8.8.8 DNS2

GATEWAY=192.168.115.2 网关

DNS1=114.114.114.114 DNS1

IPV6INIT=no

USERCTL=no

配置文件修改完成后需要重启网络服务:

service network restart 重启所有网络服务

ifup 网卡名 启动指定某个网卡

ifdown 网卡名 关闭指定某个网卡

2、主机名配置

临时修改主机名:hostname 主机名

永久修改主机名:/etc/sysconfig/network

HOSTNAME=主机名(修改这里)

image

注意:区别 /etc/rc.d/rc.sysint /etc/sysconfig/network

3、网关配置

route -n 查看系统中路由表信息

临时修改:

添加默认网关:route add default gw 网关ip地址

删除默认网关:route del default gw 网关ip地址

指定添加路由:route add -net 连接的目标网段 gw 网关的IP地址

image

指定删除路由:route del -net 网段

永久生效:

修改网关配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0

路由配置文件:/etc/rc.local

/etc/resolv.conf 保存本机需要使用的DNS服务器的IP地址

开启路由转发配置文件/etc/sysctl.conf 进入其中将net.ipv4.ip_forward = 0修改为1之后用sysctl -p刷新一下配置文件即可

image

总结:

网关:没有具体目标

路由:有具体目标,以及到达线路

image

上图acd为不同网段的电脑,现在需要通过b电脑的配置建立连接,那么:

ab连接的网卡在同一个网段。

bc 连接的网卡在同一个网段

bd 连接的网卡在同一个网段

实验步骤:

1):创建4个虚拟机,让它们分别在不同网段,都设置成桥接模式

2):指定其中一个虚拟机为路由器,并为这个虚拟机创建三个网卡

3):把配置文件/etc/sysconfig/network-scripts/ifcfg-eth0复制三份,分别为ifcfg-eth1 ifcfg-eth2 ifcfg-eth3

4):分别进入ifcfg-eth1 ifcfg-eth2 ifcfg-eth3三个配置文件里面修改网卡名、删除Mac地址UUID、把三个网卡的IP地址修改成分别对应其他三台虚拟机的网段

5):把其他三台虚拟机的网关分别修改成ifcfg-eth1 ifcfg-eth2 ifcfg-eth3IP地址

6):然后所有的虚拟机都用service network restart重启网卡,接着进入开启路由转发配置文件/etc/sysctl.conf 将里面的net.ipv4.ip_forward = 0修改为1之后用sysctl -p刷新一下配置文件

7):使用虚拟机ping ip地址 互相实验看能不能通

4DNS配置

域名解析测试命令 nslookup

测试DNS域名解析

格式:nslookup 目标主机地址 DNS服务器地址

DNS服务器设置

/etc/sysconfig/network-scripts/ifcfg-eth0

/etc/resolv.conf 保存本机需要使用的DNS服务器的IP地址

nameserver DNS地址

主机映射文件:/etc/hosts

用于保存主机名和ip地址的映射记录

主机映射文件和DNS服务器的比较:

默认情况下,系统首先从hosts文件查找解析记录

hosts文件只对当前的主机有效

hosts文件可减少DNS查询过程,可加快访问速度

三、网络测试命令

1netstat -tlun 查看TCPUDP监听的端口

-antp查看所有TCP的连接并显示PID

-a:显示所有活动连接

-n:以数字形式显示

-p:显示进程信息

-t:查看TCP协议相关信息

-u:查看UDP协议相关信息

2traceroute 测试从当前主机到目的主机之间经过的网络节点,用于追踪数据包在网络上的传输时的全部路径,默认发送数据包大小为40字节,默认使用UDP协议进行传输,返回值为ICMP

-l 使用ICMP协议进行测试,Linux中默认UDP

-p 3 指定测试时发送的数据包个数(即测试次数)

-n IP的方式进行连接测试,避开DNS的解析,减少延迟

特殊情况:

当返回值中间出现******时,一般情况是中间节点防火墙封掉了ICMP的返回值。

当返回值从中间到结束都是*******时,一般情况为目标服务器拒绝接收UDP数据包或禁止了ICMP的返回包

3ping 测试网络连通性

-i 指定间隔时间

-c 指定ping的次数

-s 指定数据包的大小

4arp 地址解析协议,将IP解析成Mac

-a 查看所有

-d ip地址 删除某条ARP记录

-s ip地址 MAC地址 绑定ip地址

5nmap 网络探测命令

-sP 探测某网段内有哪些主机是存活的

-sT 探测某主机上开启了哪些TCP端口

-sS 同上,但是是安全扫描,被扫描主机将记录很少的日志

-O 扫描对方操作系统类型

四、远程管理:

1 WindowsVNC连接Linux

yum -y install tigervnc tigervnc-server

先安装着两个软件

vncpasswd 设置密码

vncserver 启动服务

2Linuxrdesktop连接Windows

Linux必须安装桌面

yum -y install rdesktop

rdesktop -f -a 16 -u windows用户名 -p windows密码 Windows IP地址

-f 是显示全屏 -a Linux色位1632

-u 用户名 -p 登录密码

3LinuxSSH连接Linux

SSH协议

为客户机提供安全的Shell环境,用于远程管理

默认端口:TCP 22

OpenSSH

服务名称:sshd

服务端主程序:/usr/sbin/sshd

客户端主程序:/usr/bin/ssh

服务端配置文件:/etc/ssh/sshd_config

客户端配置文件:/etc/ssh/ssh_config

ssh连接需要用到两个配置文件

1/etc/ssh/ssh_config 客户端 2/etc/ssh/sshd _config 服务端

image

SSH 远程登录命令

ssh IP地址 登录Linux系统

image

ssh 用户名@IP地址 登录Linux系统

image

指定端口:-p()

4、秘钥对验证

加密认证:RSA DSA两个都可使用

1)在客户机上执行ssh-keygen -t rsa 生成非对称加密秘钥对

Enter file in which to save the key

(/home/test/.ssh/id_rsa)询问是否需要密码验证,不需要就直接回车

image

2)在客户机家目录的.ssh/目录下,将id_rsa.pub公钥文件上传给服务机

image

image

3)上传完成后,要在服务机端的家目录下创建一个 .ssh/ 的目录,把id_rsa.pub改名为authorized_keys并剪切到家目录下的.ssh/目录里面。

4)编辑服务机端的/etc/ssh/sshd_config文件,取消注释

image

5)、远程传输工具

1 scp 进行文件的上传和下载

上传格式:scp 本机文件 用户名@IP地址:目录

下载格式:scp 用户名@IP地址:文件名 本地保存位置

指定端口:-P()

2sftp 安全的ftp传输协议

登录方法:sftp 用户名@IP地址

指定端口:-oPort=端口

sftp登录到服务端以后,操作服务端的命令和操作本机相同,如果想在登录服务端的同时操作本机,需要在命令前面加上l,例

image

如果想让Windows也可以免密码连接到Linux,需要用x-shell工具-新建用户秘钥生成向导生成一个秘钥,然后将秘钥复制到Linux服务端的authorized_keys 文件里面即可

image

直接下一步、下一步即可生成秘钥,然后根据步骤操作

image

选择属性

image

复制里面的秘钥到Linuxauthorized_keys 文件里面即可

image

image

6)仅允许秘钥对登录,禁止密码登录

*确保启用ssh公钥认证功能,查看/etc/ssh/sshd_config文件,确保以下两条yes

image

*禁止密码安全验证,编辑/etc/ssh/sshd_config文件,确保以下文件出现在文件中:

image

image

编辑这个文件完成之后,需要重启sshd服务:service sshd restart即可禁止密码登录,只能用秘钥对登录。

想让其他用户通过秘钥登录,可以直接把可以登录的私钥文件传给某个用户即可。

注意:一定要保护好私钥的安全性。

上面是秘钥的详细生成过程,下面介绍秘钥对的快速生成:

(1)在客户机上输入命令:ssh-keygen -t rsa

(2)上传公钥到服务端:ssh-copy-id 服务端用户名@IP地址

这样即可快速生成并上传,而且不用改名和提前创建.ssh目录

TCP Wrappers(简易防火墙)概述:

如果某个命令调用库文件libwarp.so ,那么这个命令就可以被TCP Wrappers管理。

which 查询某服务命令所在位置

ldd 查询某命令调用的库文件

image

通过tcpd主程序对其他服务程序进行包装

访问控制策略的配置文件

白名单(允许访问):/etc/hosts.allow

黑名单(拒绝访问):/etc/hosts.deny

image

白名单比黑名单优先级高

设置访问控制策略

策略格式:服务列表:客户机地址列表

服务列表

多个服务以逗号分隔,ALL 表示所有服务

客户机地址列表

多个地址以逗号分隔,ALL表示所有地址

image

image

允许使用通配符 ? *

网段地址,如 192.168.4. 或者 192.168.4.0/255.255.255.0

策略的应用顺序:

先检查hosts.allow,匹配即停止(即允许)

否则再检查hosts.deny,匹配即停止(即拒绝)

若两个文件中均无匹配策略,则默认允许访问

CentOS6.x网络基础及系统各种常用配置的更多相关文章

  1. XCode 5远程调试OS X应用程序

    我正在使用XCode5.0.2在OSX10.9上开发一个应用程序并获得了一个我无法在这台开发机器上重现的错误报告.但是,我有一个10.7虚拟机出现崩溃,所以我想调试那里没有在这个VM中安装XCode.我搜索了有关远程调试的信息,但我没有得到有用的答案.我甚至担心它根本不受支持.但无论如何我还是要问一下.或者,除了执行完整的XCode安装等之外,还有哪些其他选项来调试这样的问题?

  2. iOS – 友好的NSDate格式

    我需要在我的应用程序中显示帖子的日期给用户,现在我用这种格式:“5月25日星期五”.如何格式化NSDate以阅读“2小时前”的内容?使其更加用户友好.解决方法NSDateFormatter不能做这样的事情;你将需要建立自己的规则.我想像:所以这是打印’x分钟前’或’x小时前’从日期起24小时,通常是一天.

  3. osx – 无法创建目录/ var / teamsserver

    OpenSSH_6.2p2,OSSLShim0.9.8r8Dec2011debug1:Readingconfigurationdata/etc/ssh_configdebug1:/etc/ssh_configline20:Applyingoptionsfor*debug1:Connectingto1.2.3.4[1.2.3.4]portPORT.debug1:Connectionestablished.Couldnotcreatedirectory‘/var/teamsserver/.ssh’.debug

  4. ios – Xcode Server 4.0 git从构建触发脚本推送

    我为一个托管在github上的项目安装了一个XcodeBot.我按照步骤和设置机器人来使用我现有的SSH密钥.验证成功,项目结算和建立.然后,我在预触发器操作中添加了一个shell脚本,它增加了plist中的版本,将其标记,并将该更改提交到github.但是当我尝试从shell脚本执行gitpush时,我得到:–推送到git@github.com:spex-app/spex-ios.git权限被拒

  5. ios – Xcode上传错误:无法打开ssh会话. (16)

    注意:我们终于上传了该应用程序,但是我们并没有真正解决这个问题,所以如果有人可以分享一些有关这个问题的宝贵意见或经验,我将不胜感激.我也检查了以下2个类似的问题,但这些没有帮助:>Erroruploadingiosapplicationtoitunesconnect“failedtoopensshsession(16)”>AppStoresubmission/distributionerror“f

  6. 记一次云计算测试实验-openstack-icehouse-安装swift

    -----------------------controller:---------------------------------sourceadmin-openrc.shkeystoneuser-create--name=swift--pass=000000--email=swift@localhostkeystoneuser-role-add--user=swift--tenant=ser

  7. cinder swift的区别

    [原]OpenStack入门以及一些资料之2014-4-29阅读1144评论0注:本文内容均来自网络,我只是在此做了一些摘抄和整理的工作,来源均有注明。它拥有自己的文件系统,通过网络文件系统NFS或通用文件系统CIFS对外提供文件访问服务。Raid,不同的raid等级在增加数据可靠性以及增加存储器(群)读写性能间取得平衡。卷组描述区域,和磁盘将包含分区信息的元数据保存在位于分区的起始位置的分区表中一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷的VGDA中。

  8. swift详解之二十--------在xcode中使用git管理源代码,将代码提交到github

    在xcode中使用git管理源代码,将代码提交到github本文记录一下如何在Xcode中使用Git作为源代码控制工具,以及如何将本地的Git仓库和远程Github上的仓库集成起来,虽然这章节和swift没有关系,但我还是放在这里。对详细的git操作可以看在Xcode中使用Git进行源码控制讲得很详细,很好。将xcode与github链接起来。

  9. OpenStack中Swift和cinder区别

    swift是objectstorage,将object存储到bucket里,你可以用swift创建container,然后上传文件,例如视频,照片,这些文件会被replication到不同服务器上以保证可靠性,swift可以不依靠虚拟机工作。如果你把这个虚拟机terminate了,这个volume和里边的数据依然还在,你还可以把它接到其他虚拟机上继续使用里边的数据。cinder创建的volume必须被接到虚拟机上才能工作。

  10. Swift设计模式之命令模式

    转自Swift设计模式原文Design-Patterns-In-Swift

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部