linux常用命令记录
有时需要用到的命令,记录下
更新时间
ntpdate cn.pool.ntp.org
查找目录下的所有文件中是否含有某个字符串
find .|xargs grep -ri "IBM"
查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名
find .|xargs grep -ri "IBM" -l
有时需要用到的命令,记录下
ntpdate cn.pool.ntp.org
find .|xargs grep -ri "IBM"
find .|xargs grep -ri "IBM" -l
今天用netstat看系统的端口监听,看见一个占用25端口的,程序名字叫master
于是用这种办法找到程序
找到程序执行文件
locate master | grep '/master$'
/usr/libexec/postfix/master
找到程序名称
rpm -qf $(locate master | grep '/master$')
postfix-2.6.6-6.el6_5.x86_64
然后再用chkconfig关闭自启动就ok
参考http://blog.sina.com.cn/s/blog_8d75b4400100t5ku.html
服务名称 | 功能 | 默认 | 建议 | 备注说明 |
---|---|---|---|---|
NetworkManager | 用于自动连接网络,常用在Laptop上 | 开启 | 关闭 | 对服务器无用 |
abrt-ccpp | 开启 | 自定 | 对服务器无用 | |
abrt-oops | 开启 | 自定 | |对服务器无用 | |
abrtd | 开启 | 自定 | 对服务器无用 | |
acpid | 电源的开关等检测管理,常用在Laptop上 | 开启 | 自定 | 对服务器无用 |
atd | 在指定时间执行命令 | 开启 | 关闭 | 如果用crond,则可关闭它 |
auditd | 审核守护进程 | 开启 | 开启 | 如果用selinux,需要开启它 |
autofs | 文件系统自动加载和卸载 | 开启 | 自定 | 只在需要时开启它,可以关闭 |
avahi-daemon | 本地网络服务查找 | 开启 | 关闭 | 对服务器无用 |
bluetooth | 蓝牙无线通讯 | 开启 | 关闭 | 对服务器无用 |
certmonger | 关闭 | 关闭 | ||
cpuspeed | 调节cpu速度用来省电,常用在Laptop上 | 开启 | 关闭 | 对服务器无用 |
crond | 计划任务管理 | 开启 | 开启 | 常用,开启 |
cups | 通用unix打印服务 | 开启 | 关闭 | 对服务器无用 |
dnsmasq | dns cache | 关闭 | 关闭 | DNS缓存服务,无用 |
firstboot | 系统安装后初始设定 | 关闭 | 关闭 | |
haldaemon | 硬件信息收集服务 | 开启 | 开启 | |
ip6tables | ipv6防火墙 | 开启 | 关闭 | 用到ipv6网络的就用,一般关闭 |
iptables | ipv4防火墙 | 开启 | 开启 | ipv4防火墙服务 |
irqbalance | cpu负载均衡 | 开启 | 自定 | 多核cup需要 |
kdump | 硬件变动检测 | 关闭 | 关闭 | 服务器无用 |
lvm2-monitor | lvm监视 | 开启 | 自定 | 如果使用LVM逻辑卷管理就开启 |
matahari-broker | 关闭 | 关闭 | 此服务不清楚,我关闭 | |
matahari-host | 关闭 | 关闭 | 此服务不清楚,我关闭 | |
matahari-network | 关闭 | 关闭 | 此服务不清楚,我关闭 | |
matahari-service | 关闭 | 关闭 | 此服务不清楚,我关闭 | |
matahari-sysconfig | 关闭 | 关闭 | 此服务不清楚,我关闭 | |
mdmonitor | 软raid监视 | 开启 | 自定 | |
messagebus | 负责在各个系统进程之间传递消息 | 开启 | 开启 | 如停用,haldaemon启动会失败 |
netconsole | 关闭 | 关闭 | ||
netfs | 系统启动时自动挂载网络文件系统 | 开启 | 关闭 | 如果使用nfs服务,就开启 |
network | 系统启动时激活所有网络接口 | 开启 | 开启 | 网络基础服务,必需! |
nfs | 网络文件系统 | 关闭 | 关闭 | nfs文件服务,用到就开启 |
nfslock | nfs相关 | 开启 | 关闭 | nfs相关服务,用到就开启 |
ntpd | 自动对时工具 | 关闭 | 自定 | 网络对时服务,用到就开启 |
ntpdate | 自动对时工具 | 关闭 | 关闭 | |
oddjobd | 与D-BUS相关 | 关闭 | 关闭 | |
portreserve | RPC 服务相关 | 开启 | 自定 | 可以关闭 |
postfix | 替代sendmail的邮件服务器 | 开启 | 自定 | 如果无邮件服务,可关闭 |
psacct | 负荷检测 | 关闭 | 关闭 | 可以关闭 |
qpidd | 消息通信 | 开启 | 开启 | |
quota_nld | 关闭 | 关闭 | 可以关闭 | |
rdisc | 自动检测路由器 | 关闭 | 关闭 | |
restorecond | selinux相关 | 关闭 | 关闭 | 如果开启了selinux,就需开启 |
rpcbind | 开启 | 开启 | 关键的基础服务,nfs服务和桌面环境都依赖此服务!相当于CentOS 5.x里面的portmap服务。 | |
rpcgssd | NFS相关 | 开启 | 关闭 | NFS相关服务,可选 |
rpcidmapd | RPC name to UID/GID mapper | 开启 | 关闭 | NFS相关服务,可选 |
rpcsvcgssd | NFS相关 | 关闭 | 关闭 | NFS相关服务,可选 |
rsyslog | 提供系统的登录档案记录 | 开启 | 开启 | 系统日志关键服务,必需! |
saslauthd | sasl认证服务相关 | 关闭 | 关闭 | |
smartd | 硬盘自动检测守护进程 | 关闭 | 关闭 | |
spice-vdagentd | 开启 | 开启 | ||
sshd | ssh服务端,可提供安全的shell登录 | 开启 | 开启 | SSH远程登录服务,必需! |
sssd | 关闭 | 关闭 | ||
sysstat | 开启 | 开启 | 一组系统监控工具的服务,常用 | |
udev-post | 设备管理系统 | 开启 | 开启 | |
wdaemon | 关闭 | 关闭 | ||
wpa_supplicant | 无线认证相关 | 关闭 | 关闭 | |
ypbind | network information service客户端 | 关闭 | 关闭 |
转载自http://www.ha97.com/4815.html
今天在服务器上面安装phpcms,安装过程中提示不可写,于是设置了权限,但是依然是不可写的状态,想了下可能是selinux的问题
设置了下
sudo chcon -R -t httpd_sys_content_t phpcmstest
ok
1.新建用户
useradd xxx
#设置密码
passwd xxx
2.设置sudo
visudo
root ALL=(ALL) ALL#找到这行添加如下行
xxx ALL=(ALL) ALL
安装两个软件,bash-completion(命令补全),dos2unix(dos格式文件转换成unix格式)
3.修改ssh
vi /etc/ssh/sshd_config
#禁用root远程登录
PermitRootLogin no
PermitEmptyPasswords no #禁止空密码登录
#不要支持闲置会话,并配置 Idle Log Out Timeout 间隔:
ClientAliveInterval 600 # (Set to 600 seconds = 10 minutes)
ClientAliveCountMax 0
#禁用用户的 .rhosts 文件:
IgnoreRhosts yes
Port 22#这个先留着免得配置错误导致的错误
Port 22155
4.设置防火墙,放开刚刚设置的ssh端口,和需要开放的端口
防火墙设置可以看http://blog.csdn.net/scchary/article/details/46482777
5.消除登陆信息,在登陆的时候会提示是什么系统之类的信息,隐藏起来
sudo cp /etc/issue /etc/issue.bak#备份下
sudo cp /etc/issue.net /etc/issue.net.bak
sudo cp /etc/redhat-release /etc/redhat-release.bak
sudo echo "Welcome" > /etc/issue#权限不足,用root直接改应该可以,直接vi编辑算了
sudo vi /etc/issue
sudo vi /etc/issue.net
sudo vi /etc/redhat-release
6.关闭不需要的服务,就剩下这几个了,就关了几个
auditd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 #与selinux有关
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 #定时任务
iptables 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 #防火墙
iscsi 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 #一种新存储技术
iscsid 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 #一种新存储技术
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:关闭 5:启用 6:关闭
network 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 #网络基础服务
nginx 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
php-fpm 0:关闭 1:关闭 2:启用 3:启用 4:关闭 5:启用 6:关闭
restorecond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 #与selinux相关
rsyslog 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 #系统日志关键服务
sshd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
udev-post 0:关闭 1:启用 2:启用 3:启用 4:启用 5:启用 6:关闭 #设备管理
7.同步系统时间
sudo yum install ntpdate#安装更新时间软件
sudo ntpdate cn.pool.ntp.org;sudo hwclock --systohc#更新时间并写入bios
sudo crontab -e
11 11 * * * /usr/sbin/ntpdate cn.pool.ntp.org;/usr/sbin/hwclock --systohc#设置每天的11:11更新时间
8.注释不需要的用户和组
#注销用户
sudo vi /etc/passwd
#adm:x:3:4:adm:/var/adm:/sbin/nologin
#lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
#sync:x:5:0:sync:/sbin:/bin/sync
#shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
#halt:x:7:0:halt:/sbin:/sbin/halt
#uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
#operator:x:11:0:operator:/root:/sbin/nologin
#games:x:12:100:games:/usr/games:/sbin/nologin
#gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
#ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
#注销用户
sudo vi /etc/group
#adm:x:4:adm,daemon
#lp:x:7:daemon
#uucp:x:14:
#games:x:20:
#dip:x:40:
#ftp:x:50:
9.调整文件描述大小
echo "ulimit -SHn 65535" >> /etc/rc.local
cp /etc/profile /etc/profilebak2
ulimit -c unlimited
ulimit -s unlimited
ulimit -SHn 65535
source /etc/profile #使配置立即生效
ulimit -a #显示当前的各种用户进程限制
#配置完成之后普通用户登录会报错 -bash: ulimit: open files: cannot modify limit: 不允许的操作
可以/etc/security/limits.conf在加上
* soft noproc 65535
* hard noproc 65535
* soft nofile 65535
* hard nofile 65535
10.调整记录历史命令的条数
vi /etc/profile #在文件末尾添加以下内容
找到 HISTSIZE=1000 改为 HISTSIZE=50
11.禁止使用Ctrl+Alt+Del快捷键重启服务器
sudo vi /etc/init/control-alt-delete.conf
#注释下面两行
#start on control-alt-delete
#exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
12.禁止用户su到root,只允许wheel组用户su到root
sudo vi /etc/pam.d/su
#找到下面这句,去掉注释
auth required pam_wheel.so use_uid
13.系统参数优化
vi /etc/sysctl.conf #末尾添加如下参数 (备注:内核不够熟,加上注解大家谨慎选择使用)
net.ipv4.tcp_syncookies = 1 #1是开启SYN Cookies,当出现SYN 等待队列溢出时,启用Cookies来处理,可防范少量SYN攻击,默认是0关闭 net.ipv4.tcp_tw_reuse = 1 #1是开启重用,允许将TIME_AIT sockets重新用于新的TCP连接,默认是0关闭
net.ipv4.tcp_tw_recycle = 5 #TCP失败重传次数,默认是15,减 少次数可释放内核资源
net.ipv4.tcp_max_syn_backlog = 10240 #进入SYN包的最大请求队列,默认 是1024
net.core.netdev_max_backlog = 10240 #允许送到队列的数据包最大设备队 列,默认300
net.core.somaxconn = 2048 #listen挂起请求的最大数量,默认 128
net.core.wmem_default = 8388608 #发送缓存区大小的缺省值
net.core.rmem_default = 8388608 #接受套接字缓冲区大小的缺省值 (以字节为单位)
net.core.rmem_max = 16777216 #最大接收缓冲区大小的最大值
net.core.wmem_max = 16777216 #发送缓冲区大小的最大值
net.ipv4.tcp_synack_retries = 2 #SYN-ACK握手状态重试次数,默认5
net.ipv4.tcp_syn_retries = 2 #向外SYN握手重试次数,默认4
net.ipv4.tcp_max_orphans = 3276800 #系统中最多有多少个TCP套接字不 被关联到任何一个用户文件句柄上,如果超出这个数字,孤儿连接将立即复位并打印警告信息
net.ipv4.tcp_mem = 94500000 915000000 927000000
#net.ipv4.tcp_mem[0]:低于此值,TCP没有内存压力;
#net.ipv4.tcp_mem[1]:在此值下,进入内存压力阶段;
#net.ipv4.tcp_mem[2]:高于此值,TCP拒绝分配socket。内存单位是页,可根据 物理内存大小进行调整,如果内存足够大的话,可适当往上调。上述内存单位是页,而不是字节。
net.ipv4.ip_local_port_range = 20480 65535 #(表示用于向外连接的端口范围。缺省情况下很小:32768到61000 注意:这里不要将最低值设的太低,否则可能会占用掉正常的端口!
14.自动注销
vi /etc/profile
#在"HISTSIZE="后面加入下面这行:
TMOUT=300 #300秒
source /etc/profile#立即生效
15.锁定系统重要的文件
主要作用:防止未经许可的删除或添加用户和分组
chattr +i /etc/passwd
chattr +i /etc/inittab
chattr +i /etc/group
chattr +i /etc/shadow
chattr +i /etc/gshadow
16.给系统服务端口列表文件加锁
主要作用:防止未经许可的删除或添加服务
chattr +i /etc/services
17.修改init目录文件执行权限
chmod -R 700 /etc/init.d/*
18.修改部分系统文件的SUID和SGID的权限:
chmod a-s /usr/bin/chage
chmod a-s /usr/bin/gpasswd
chmod g-s /usr/bin/wall
chmod a-s /usr/bin/chfn
chmod a-s /usr/bin/chsh
chmod a-s /usr/bin/newgrp
chmod g-s /usr/bin/write
chmod a-s /usr/sbin/usernetctl
chmod a-s /usr/sbin/traceroute#这个在6.6里面没有
chmod a-s /bin/mount
chmod a-s /bin/umount
chmod g-s /sbin/netreport
wall,write,netreport三个是SGID,这几个命令只用过mount和umount.....
参考:http://www.jb51.net/article/29873.htm
http://blog.csdn.net/zqtsx/article/details/9344709
http://blog.csdn.net/yunweigege/article/details/42002651
http://blog.csdn.net/knight_zhen/article/details/46444451