一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Linux

Centos6.8下搭建LAMP(Linux、Apache、MySQL、PHP)环境

一.安装Apache服务 1.       命令如下:sudo yum install httpd –y 注:采用该方法安装Apache的配置文件的默认路径在/etc/httpd/conf/httpd.conf 需要设置一下Apache服务开机自启,如果不设置,每次开机后都需要自己重启服务: chkconfig --level35 httpd  on 再使用chkconfig 查看一下开机启动的服务中是否有httpd服务;   2.      配置防火墙(开启80端口) 其中一种方式是:sudo vim/etc/sysconfig/iptables(防火墙为iptables) 注:如果是centos7采用的是firewall,连接; 将下列文本添加到iptables中 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT-AINPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -jACCEPT   //添加 -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-withicmp-host-prohibited 另一种方法是:如果你如法找到iptables这个文件,使用下列命令配置开启80端口 1. /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT   2. […]

龙生   18 Apr 2018
View Details

最小化安装的CentOS7挂载ntfs格式的U盘

准备从系统中拷贝一些文件到U盘,插上U盘。 一、获得U盘的设备识别符 fdisk -l 啊哈,我看到了,是/dev/sdb1 二、熟练的挂载 mount /dev/sdb1 /mnt/usb Duang,竟然失败了,错误提示如下: unknown filesystem type ‘ntfs’ 三、原因 最小安装的系统中默认不识别NTFS格式的文件。 四、下载扩展包并解压 Open Source: NTFS-3G wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2016.2.22.tgz 解压: tar -xvf ntfs-3g_ntfsprogs-2016.2.22.tgz 五、编译安装 三步曲:./configure && make && make install 六、挂载 mount -t ntfs-3g /dev/sda1 /mnt/usb   参考: https://www.cnblogs.com/yoyotl/p/6111531.html

龙生   16 Apr 2018
View Details

Shell入门看我吧

背景 之前写了系列的shell实战的文章,得到了挺多小伙伴的关注,遇到有些对shell不太熟悉小伙伴,所以有个想法写一篇shell入门的文章。 时间流逝,再回头去看看过去的东西,才会发现哪些东西比较重要,故撰此文,记录我在过去学习和使用shell语言过程中我个人觉得比较重要的部分,做一个小总结和分享。 文章中使用到的代码位置:https://gitee.com/dhar/YTTInjectedContentKit/tree/master/DevPods/InjectedContentKit/Example/injectContentShell 和 https://gitee.com/dhar/ShellLearning/tree/master/helloshell 文章内容结构如下: 语法 变量 打印 运算 控制 循环 容器 方法 文件 文件读取 文件写入 sed流编辑 模块 工具模块 流程模块 输入和菜单 获取输入 菜单 语法 变量 变量的定义 定义一个变量和其他语言的类似,shell是弱类型语言所以不需要使用类型限定,并且变量可以修改类型,下面的例子定义了一个字符串类型的str变量,之后修改为数值类型 注意点:变量等号两边不能有空格出现

  变量使用 变量可以赋值给另一个变量和打印,当变量被使用的时候需要在变量名称前面加上$符号,还有另一种方式是把变量名放在${}括号中使用,可以把命令执行结果作为右值赋值给变量

  打印 因为shell没有单步调试和其他功能强大的IDE,所以打印功能就经常使用到,此外打印功能还可以当做函数的返回值,比return作为函数的返回值功能更强大,shell 使用echo打印,内容默认输出到控制台中,echo可以打印字符串、变量、以及字符串中嵌入变量的混个内容,echo有几重要的参数选项 -e 转义字符处理,比如\t显示为制表符而不是显示输出\t -n 把文本字符串和命令输出显示在同一行中

  运算 使用expr执行算术运算 注意点:*乘法运算符号需要转义

  使用[]执行算术 []执行算术比expr简单多了,并且*乘法运算符号不需要转义

  控制 数值比较 控制使用if/else/fi语法,典型的数值比较如下

  还可以使用下面的比较符号: 比较符 描述 n1 -eq n2 检查n1是否与n2相等 n1 -ge n2 检查n1是否大于或等于n2 n1 -gt n2 检查n1是否大于n2 n1 -le n2 检查n1是否小于或等于n2 n1 -lt n2 检查n1是否小于n2 n1 -ne n2 检查n1是否不等于n2 一个简单的9*9乘法口诀表的例子

[…]

龙生   07 Apr 2018
View Details

CentOS 7服务器安全配置(未完待续)

1.问题背景 本打算买一个Linux服务器玩玩,系统为CentOS 7,供学习Linux和线上部署网站学习用。没想到买了没几天,啥都没做呢,登录之后发现了近2万条登录失败记录(输入lastb命令即可查看登入系统失败的用户相关信息)。什么?有人想通过暴力破解密码来登录我的服务器?!并且大量的攻击来自同一个ip地址。作为一个Linux小白,差点被吓尿了,网络真危险啊。 不过虽然是小白,也不甘示弱,有攻击就要有防御,现状开始逼迫我去学习关于Linux服务器安全防护的知识,要守住自己在网上的一块领地。 2.安装Fail2ban 在Q群上和小伙伴讨论过程中,发现了fail2ban这个利器。fail2ban能阻止暴力破解,如果fail2ban发现一个ip在暴力攻击,攻击次数达到一定次数时,就会禁止改ip连接服务器,以达到阻止暴力破解密码的目的。之前看登录失败日志,一个ip攻击了我上万次,现在有了fail2ban,它可做不了了,赶紧开始我们的安装。 安装fail2ban 输入以下两条命令即可安装

  说明: – yum install epel-release:安装EPEL仓库(Extra Packages for Enterprise Linux) – yum install fail2ban:从EPEL仓库安装fail2ban fail2ban配置文件 打开配置文件

  开头会见到如下说明

大意是不要修改这个配置文件,而应该新建一个jail.conf来写用户配置。 先查看配置文件内默认的配置(仅列出前面5项):

ignoreip 不会被ban的ip bantime 每秒内访问的最大次数,超过就被ban maxretry 最大失败次数 这里只是简单举例,其他一些配置不多做赘述,有需要的可以自己去看英文注释。 于是新建/打开一个jail.conf,写入用户自己的配置

  把下列代码拷进去

说明: – enabled: 激活fail2ban。 – filter: 是sshd默认参考这个文件/etc/fail2ban/filter.d/sshd.conf。 – action: 符合/etc/fail2ban/action.d/iptables.conf这个文件的ip将会被fail2ban给ban掉. 如果你之前改过ssh端口,把 port=ssh改成新端口, 比如 port=2222. 如果还在用22,就不用改这里。 – logpath: Fail2Ban的日志文件路径. – maxretry: 最大尝试登陆失败次数. 启动fail2ban服务 运行这两个命令即可启动

  查看一下iptables是否添加了fail2ban的规则

会看到如下字样f2b-SSH

查看登录失败日志 输入这条命令

  会看到类似这样的结果

3.修改22端口并启用 先在sshd_config里面添加新端口 查看sshd_confifg

  可以看到如下片段:

  添加一个新端口,如22222,在Port 22下面添加一行Port 22222,Port 22先不要注释掉,以防新端口登录不上。 再在防火墙里添加新端口 查看防火墙运行状态

  查看所有打开的端口

  添加端口

[…]

龙生   01 Apr 2018
View Details

Centos7 修改SSH 端口

修改/etc/ssh/sshd_config

修改firewall配置 firewall添加想要修改的ssh端口:

修改SELinux 使用以下命令查看当前SElinux 允许的ssh端口:

添加33378端口到 SELinux

然后确认一下是否添加进去

如果成功会输出

重启ssh

测试新端口的ssh连接 测试修改端口以后的ssh连接,如果成功则将step1里面的port 22 重新注释掉   from:https://www.cnblogs.com/rwxwsblog/p/5756894.html

龙生   01 Apr 2018
View Details

CentOS系统中常用查看系统信息和日志命令小结

进程 # ps -ef # 查看所有进程 # top # 实时显示进程状态(另一篇文章里面有详细的介绍) 用户: # w # 查看活动用户 # id <用户名> # 查看指定用户信息 # last # 查看用户登录日志 # cut -d: -f1 /etc/passwd # 查看系统所有用户 # cut -d: -f1 /etc/group # 查看系统所有组 # crontab -l # 查看当前用户的计划任务 系统 日志文件( 可以通过cat 或tail 命令来查看) /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 /var/log/maillog 与邮件相关的日志信息 /var/log/cron 与定时任务相关的日志信息 /var/log/spooler 与UUCP和news设备相关的日志信息 /var/log/boot.log 守护进程启动和停止相关的日志消息 系统信息 # uname -a # 查看内核/操作系统/CPU信息 # cat /etc/issue # cat /etc/redhat-release # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb […]

龙生   01 Apr 2018
View Details

查看Linux系统版本信息

一、查看Linux内核版本命令(两种方法): 1、cat /proc/version [root@S-CentOS home]# cat /proc/version Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 2、uname -a [root@S-CentOS home]# uname -a Linux S-CentOS 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 二、查看Linux系统版本的命令(3种方法): 1、lsb_release -a,即可列出所有版本信息: [root@S-CentOS ~]# lsb_release -a LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch Distributor ID: CentOS Description: CentOS release 6.5 (Final) Release: 6.5 Codename: Final 这个命令适用于所有的Linux发行版,包括RedHat、SUSE、Debian…等发行版。 2、cat /etc/redhat-release,这种方法只适合Redhat系的Linux: [root@S-CentOS home]# cat /etc/redhat-release CentOS release 6.5 (Final) 3、cat /etc/issue,此命令也适用于所有的Linux发行版。 [root@S-CentOS home]# cat /etc/issue CentOS release […]

龙生   01 Apr 2018
View Details

修改Nginx与Apache上传文件大小限制

一、修改Nginx上传文件大小限制 我们使用ngnix做web server的时候,nginx对上传文件的大小有限制。 当超过大小的时候会报413错误。 这个时候我们要修改nginx参数。

然后重启nginx

    二、修改Apache上传文件最大值限制 打开php.ini, :/ 找到下面的项并修改之。下面以上传100M为例。

 

一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。 但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:

  全部设置好之后,重启

  https://www.cnblogs.com/shifu204/p/6548635.html

龙生   25 Mar 2018
View Details

linux中查看nginx、apache、php、mysql配置文件路径的方法

原文:http://www.phper163.com/archives/368   如何在linux中查看nginx、apache、php、mysql配置文件路径了,如果你接收一个别人配置过的环境,但没留下相关文档。这时该怎么判断找到正确的加载文件路径了。可以通过以下来判断 1、判断apache 首先执行命令找到httpd路径 ps aux | grep httpd 如httpd路径为 /usr/local/apache/bin/httpd 然后执行以下命令 /usr/local/apache/bin/httpd -V | grep “SERVER_CONFIG_FILE” 即可找到编译时加载的配置文件路径 httpd.conf -V 参数可以看到编译时配置的参数 2、判断nginx 首先执行命令找到nginx路径 ps aux | grep nginx 如nginx路径为 /usr/local/nginx/sbin/nginx 然后执行以下命令 /usr/local/nginx/sbin/nginx -V 默认放在 安装目录下 conf/nginx.conf 3、判断mysql 首先执行命令找到mysql路径 ps aux | grep mysqld 如mysqld路径为 /usr/bin/mysql 然后执行以下命令 /usr/bin/mysql –verbose –help | grep -A 1 ‘Default options’ 或 /usr/bin/mysql –print-defaults 4、判断php加载的配置文件路径 (1)、可通过php函数phpinfo来查看,写个文件,然后用网址访问一下,查找“Loaded Configuration File”对应的值即为php加载的配置文件 (2)、如果是nginx+php配置,也可以通过查找php执行路径 ps aux | grep php 如,路径为 /usr/local/nginx/sbin/php-fpm 然后执行以下命令 /usr/local/nginx/sbin/php-fpm -i | grep “Loaded Configuration File” 即可看到php加载的配置文件 (3)、如果是apache+mod_php配置,也可以在apache配置文件中查看加载的php.ini路径。如 PHPIniDir “/usr/local/apache/conf/php.ini” 当然也有简单的方法,就是通过find来搜索 如 find / -name […]

龙生   20 Mar 2018
View Details
1 14 15 16 23