在做项目时由于公司局域网采用自动获取IP的方式,导到每次服务器重启主机IP都会变化。为了解决这个问题,我参考了http://blog.sina.com.cn/s/blog_537977e50100qhb5.html的文章然后根据自己的情况设置静态IP解决了这个问题,处理方式如下:

1.修改网卡配置 编辑:vi /etc/sysconfig/network-scripts/ifcfg-eth0

 

 DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
 BOOTPROTO=static #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址
 broADCAST=192.168.0.255 #对应的子网广播地址
 HWADDR=00:07:E9:05:E8:B4 #对应的网卡物理地址

 IPADDR=12.168.0.33 #如果设置网卡获得 ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
 NETMASK=255.255.255.0 #网卡对应的网络掩码
 NETWORK=192.168.0.0 #网卡对应的网络地址

2.修改网关配置

 编辑:vi /etc/sysconfig/network 修改后如下: 

  

 NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
 HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)
 GATEWAY=192.168.0.1(设置本机连接的网关的IP地址。)

 我在修改这里打开编辑时前三项已经默认有了所以只增加了GATEWAY

3.修改DNS 配置

编辑:vi /etc/resolv.conf 修改后如下: 

nameserver 即是DNS服务器IP地址,第一个是首选,第二个是备用。

4.重启网络服务

  执行命令:

  service network restart  或  /etc/init.d/network restart

5.关闭防火墙

/etc/init.d/iptables stop

=====================================================================

1.配置IP

#setup

  选择 NetWork configuration

  选择 Device configuration

  选择 eth0

  Use DHCP [*] 改 为 [ ] 用空格键将*去除

  Static IP 输入 192.168.1.112

  Netmask输入 255.255.255.0

  Default gateway IP 输入 192.168.1.1

  Primary DNS Server 输入 192.168.1.1

2.改SSH端口

vim /etc/ssh/sshd_config

#Port 22

去#注释 改 22 为 2200(2000以上)

3.重启SSH

/etc/init.d/sshd restart

4.重启网络

service network restart

/etc/init.d/network restart

5.查看端口

netstat -lnp|more

6.关防火墙

service iptables stop

===============================================================================

环境:

  系统硬件:vmware vsphere (cpu:2*4核,内存2G)

  系统版本:Centos-6.5-x86_64

  路由器网关:192.168.1.1

步骤:  

  1.查看网络MAC地址
  [root@centos ~]# cat /etc/udev/rules.d/70-persistent-net.rules

  显示如下信息
  # PCI device 0x15ad:0x07b0 (vmxnet3)
   SUBSYstem=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:50:56:94:04:3c",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"

  # PCI device 0x15ad:0x07b0 (vmxnet3)
  SUBSYstem=="net",ATTR{address}=="00:50:56:94:53:24",NAME="eth1"

  eth0:对应第一张网卡,eth1:对就第二张网卡。当前使用eth0连接路由器,eth1保留(服务器一般用来,连接其它主机)


  2.修改主机名称
  [root@centos ~]# vim /etc/sysconfig/network
  

  打开文件,修改以下内容并保存

  NETWORKING=yes      #使用网络
  HOSTNAME=centos      #设置主机名称

  3.修改网卡
  [root@centos ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
  

  打开文件,修改以下内容并保存

  DEVICE=eth0          #对应第一张网卡
  TYPE=Ethernet
  ONBOOT=yes          #是否启动时运行
  NM_CONTROLLED=yes
  BOOTPROTO=static       #使用静态IP,而不是由DHCP分配IP
  DEFROUTE=yes
  IPV4_FAILURE_FATAL=yes
  IPV6INIT=no
  NAME="System eth0"      #名称
  HWADDR=00:50:56:94:04:3C  #必须对应etho是的MAC地址(/etc/udev/rules.d/70-persistent-net.rules)
  PEERDNS=yes
  PEERROUTES=yes
  IPADDR=192.168.1.40     #指定本机IP地址
  NETMASK=255.255.255.0    #指定子网掩码
  GATEWAY=192.168.1.1     #指定网关

  4.修改DNS
  [root@centos ~]# vim /etc/resolv.conf

  打开文件,修改以下内容并保存
  nameserver 8.8.8.8      #GOOGLE的DNS服务器
  nameserver 61.144.56.100 #指定当前城市最近的DNS服务器(各城市不一样,上网搜索)
  nameserver 192.168.1.1   #指定经路由器上指定的DNS服务器


  5.重新启动网络配置
  [root@centos ~]#service network restart

  

  6.重启

  [root@centos ~]#shutdown -r Now

  7.查看当前IP设置

  [root@centos ~]# ifconfig

  8.测试是否连接外网

  [root@centos ~]# ping www.163.com

=======================================================================================

vi /etc/ssh/sshd_config 增加port 2800
systemctl restart sshd


firewall-cmd --zone=public --add-port=2800/tcp --permanent 打开firewall商品


firewall-cmd --query-port=2800/tcp 查看2800端口打开情况


打开SELINUX端口
要用到semanage工具,如果没有安装可以
yum provides /usr/sbin/semanage
yum whatprovides /usr/sbin/semanage
yum -y install policycoreutils-python
进行安装


安装完成后打开2800端口
semanage port -a -t ssh_port_t -p tcp 2800
查看2800端口是否打开
semanage port -l | grep ssh


如果一切正常,SSH客户端用2800端口进行登录,如果能正常登录,
vi /etc/ssh/sshd_config 删掉22端口
systemctl restart sshd
如果不能正常登录,再重新排查操作步骤

======================================================================================

最近在CentOS Linux下安装配置 ORACLE 数据库的时候,总显示因为网络端口而导致的EM安装失败,遂打算先关闭一下防火墙。

偶然看到防火墙的配置操作说明,感觉不错。执行”setup”命令启动文字模式配置实用程序,在”选择一种工具”中选择”防火墙配置”,然后选择”运行工具”按钮,出现防火墙配置界面,将”安全级别”设为”禁用”,然后选择”确定”即可.

或者用命令:
#/sbin/iptables -I INPUT -p tcp –dport 80 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp –dport 22 -j ACCEPT
#/etc/rc.d/init.d/iptables save

这样重启计算机后,防火墙默认已经开放了80和22端口

这里应该也可以不重启计算机:
#/etc/init.d/iptables restart

防火墙的关闭,关闭其服务即可:

查看防火墙信息:
#/etc/init.d/iptables status

关闭防火墙服务:
#/etc/init.d/iptables stop

永久关闭?不知道怎么个永久法:
#chkconfig –level 35 iptables off

看了好几个页面内容都有错,下面是正确方法:
#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT

然后保存:
#/etc/rc.d/init.d/iptables save

再查看是否已经有了:

[root@vcentos ~]# /etc/init.d/iptables status

Table: filter

Chain INPUT (policy ACCEPT)

num target prot opt source destination

1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:80

2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80

3 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0

Chain FORWARD (policy ACCEPT)

num target prot opt source destination

1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0


服务器遭受到大量的大量SYN_RECV,80端号占死,网站打不开

没有硬防



有什么办法可以解决吗

1
sysctl -w net.ipv4.tcp_syncookies=1 #启用使用syncookies
sysctl -w net.ipv4.tcp_synack_retries=1 #降低syn重试次数
sysctl -w net.ipv4.tcp_syn_retries=1 #降低syn重试次数
sysctl -w net.ipv4.tcp_max_syn_backlog=6000 #最大半连接数
sysctl -w net.ipv4.conf.all.send_redirects=0
sysctl -w net.ipv4.conf.all.accept_redirects=0 #不接受重定向的icmp數據包
sysctl -w net.ipv4.tcp_fin_timeout=30
sysctl -w net.ipv4.tcp_keepalive_time=60
sysctl -w net.ipv4.tcp_window_scaling=1
sysctl -w net.ipv4.icmp_echo_ignore_all=1 #禁止ICMP
sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1 #ICMP禁止广播

2.限制单位时间内连接数

iptables -N syn-flood
iptables -A FORWARD -p tcp --syn -j syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -A syn-flood -p tcp --syn -m limit --limit 3/s --limit-burst 1 -j ACCEP
iptables -A syn-flood -j DROP
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp --syn -m state --state NEW -j DROP

3 如果还是不行,
iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --update --seconds 60 --hitcount 30 -j REJECT
iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --set -j ACCEP

如攻击过来的流量大于你的服务器的流量,那就没有什么办法了,如果流量不大,以上方法,可以暂时保证你的80可以访问


如果你的内核已经支持iptables connlimit可以使用,iptables 设定部份,也可以使用

iptables -I FORWARD -p tcp --syn -m connlimit --connlimit-above 5 -j DROP

iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 5 -j REJECT


对付SYN FLOOD的话,真正起作用的是:
sysctl -w net.ipv4.tcp_syncookies=1 #启用使用syncookies
sysctl -w net.ipv4.tcp_synack_retries=1 #降低syn重试次数
其他IPTABLES的限制速度功能不能用来对付SYN FLOOD的(不能阻止拒绝服务,但是确实可以防止服务器CRASH)。

========================================================================================

以上内容参考文献

总结了上述仁兄的经验,得出结论——网络基础知识非常重要;

经过深入研究,本文标题应该改成,服务器重新安装无GUI的Centos 7操作系统后,应当做哪些工作,使得同局域网内的另外一台PC机可以通过ssh命令与它连接。

  • 1.配置正确的ip地址
  • 2.配置正确的网关地址(路由器地址)
  • 3.配置正确的子网掩码
  • 4.开启22号端口iptables -I INPUT -p tcp –dport 22 -j ACCEPT
  • 5.切记不要修改ifconfig lo这个虚拟网络接口文件里面的内容

以下是运行结果:

Connecting to 192.168.2.208:22...
Connection established.
To escape to local shell,press 'Ctrl+Alt+]'.

Last login: Wed Sep 7 17:55:42 2016 [root@localhost ~]#

CentOS设置ssh连接的方法的更多相关文章

  1. iOS – 友好的NSDate格式

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

  2. 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

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

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

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

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

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

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

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

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

  7. 使用OSC生成SSH

    在很多项目开始前,大家可能都愿意把项目或者自己封装的代码放到github上,但是有一点蛋疼的就是如果要在github上新建私有的项目是要收费的,所以我选择了OSC,这个不仅可以吧github的项目转接到OSC上,而且OSC还可新建私有的项目。好了,牛逼不吹了,开始下面部署SSH的步骤。第一步访问git.oschina.net,注册自己的账号第二步访问如下界面第三步打开终端第四步查看公钥第五步第六步如果你看到了这个WelcometoGit@OSC,yourname!标识,就说明成功了。

  8. 与Swift 2中的防火墙指针

    我正在尝试检查用户是否具有互联网连接,部分过程涉及使用UnsafePointer调用。与Swift2.x中的防火墙指针一起使用的正确方法是什么?

  9. Swift游乐场和模拟器错误(ipc / mig)服务器死机,无法启动iOS模拟器

    您的防火墙阻止调试器,您需要允许它连接:TCP出127.0.0.1:63748或者允许调试服务器进程打开访问.一旦启用它,并重新启动Xcode,所有的应该像一个魅力一样工作.注意/更新:如果您无法找到或允许调试服务器,只需暂时尝试禁用防火墙并重新启动xcode.操场是否奏效?哦,不要忘了确保你的助理视图打开,输出框显示.

  10. android – Google Cloud Messaging无法在公司网络上使用4.1.2设备

    我已经实现了一个简单的GCM客户端和服务器.客户端使用currentGCMclientAPIs(而不是deprecatedhelperlibrary).服务器(C#和.NET)遵循相应的serverguidelines(使用HTTP).我的服务器在公司域内的计算机上运行,因此我将客户端设备连接到公司网络内的Wi-Fi接入点,但可以访问Internet.简而言之,我的问题是4.3手机上收到通知,但连

随机推荐

  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架构–可能与问题有关!

返回
顶部