pam

Linux小技巧--指定用户执行命令

僤鯓⒐⒋嵵緔 提交于 2021-02-19 17:09:16
之前找了一些博客,但是在执行的时候一直报错,后来参考这篇博客( https://www.cnblogs.com/bodhitree/p/6018369.html )才发现没有加引号 su 用户 -c "你要执行的命令" 本文转载自 https://www.cnblogs.com/bodhitree/p/6018369.html 。 本文综合分析了Linux系统下,如何使用runuser命令、su命令和sudo命令以其他用户身份来运行程序,以及这三个命令的运行效率比较。 一、su 命令临时切换用户身份 SU:( Switch user切换用户),可让一个普通用户切换为超级用户或其他用户,并可临时拥有所切换用户的权限,切换时需输入欲切换用户的密码;也可以让超级用户切换为普通用户,临时以低权限身份处理事务,切换时无需输入欲切换用户的密码。 在 Linux 系统中,有时候普通用户有些事情是不能做的,除非是 root 用户才能做到。这时就需要用 su 命令临时切换到 root 身份来做事了。 1、su 的语法 su [OPTION选项参数] [用户] -, -l, –login 切换用户时,使环境变量(home,shell,user,logname,path等)和欲切换的用户相同、不使用则取得用户的临时权限,不加载环境变量。用su命令切换用户后,可以用 exit 命令或快捷键[Ctrl+D

Hadoop优化 操作系统优化

你离开我真会死。 提交于 2021-02-16 22:53:18
1、优化文件系统,修改/etc/fstab 在defaults后面添加noatime,表示不记录文件的访问时间。 修改为: 如果不想重新启动操作系统使配置生效,那么应该执行: # mount -o remount /dev/mapper/centos-root # mount -o remount /dev/mapper/centos-home   当然,如果有其他的磁盘,同样可以这样操作,我这里测试就两个逻辑卷 2、预读缓冲 预读技术可以有效的减少磁盘寻道次数和应用的I/O等待时间,增加Linux文件系统预读缓冲区的大小(默认为256 sectors,128KB),可以明显提高顺序文件的读性能,建议调整到1024或2048 sectors。预读缓冲区的设置可以通过blockdev命令来完成。 blockdev 工具允许从命令行调用区块设备控制程序,常用参数如下:    -- getra 读取预读值    -- getfra 读取文件系统预读    -- setfra FSREADAHEAD 设置文件系统预读    -- setra READAHEAD 设置设备预读    -- getra 读取设备的预读值    -- setbsz BLOCKSIZE 在文件描述符打开块设备的时候设置块大小    -- getioopt 读取设备优化IO大小    -- getiomin

Linux就该这么学 第十三课

柔情痞子 提交于 2021-02-14 17:31:00
本节课主要讲的是vsftp和samba两个服务程序 首先惯例挂载好你的镜像,并配置好本地的yum仓库 安装vsftp程序 因为ftp传输协议默认被iptables进行端口拦截,所以我们先把iptables防火墙规则清除掉 因为vsftpd.conf中注释太多,不便于我们查找配置,所以使用grep将文件进行过滤 安装ftp客户端工具,以便于连接到 匿名用户登录 编辑修改/etc/vsftpd/vsftpd.conf 编辑添加下图四项 使用ftp工具连接到ftp服务器 再次连接ftp尝试创建还是报错,究其原因是selinux的域在捣乱 本地用户模式 和匿名用户一样,精简出vsftpd.conf,并按照下图修改 因为本地用户登录存在两个黑名单文件,所以,我们需要解锁要登录的账号,黑名单文件在/etc/vsftpd目录文件下 当两个文件内限制账户名称都已经删除掉后,就可以直接使用本地登录到ftp了,但是,selinux的域还是限制了我们的使用 虚拟用户登录(出错,等待重新核实) 首先需要在/etc/vsftpd目录文件下创建一个虚拟用户账户密码的文件,文件名称为vuser.list 删除原文件,并将加密后的文件降低权限,避免被他人修改查看 因为每个文件都有所有者和所有组,所以虚拟用户创建的文件必定会失效,因此我们需要创建一个用户用来映射虚拟虚拟用户 因为虚拟用户登录需要验证

Linux内核 TCP/IP、Socket参数调优

亡梦爱人 提交于 2021-02-14 16:58:09
/proc/sys/net目录   所有的TCP/IP参数都位于/proc/sys/net目录下(请注意,对/proc/sys/net目录下内容的修改都是临时的,任何修改在系统重启后都会丢失),例如下面这些重要的参数: 参数(路径 + 文件) 描述 默认值 优化值 /proc/sys/net/core/rmem_default 默认的TCP数据接收窗口大小(字节)。 229376 256960 /proc/sys/net/core/rmem_max 最大的TCP数据接收窗口(字节)。 131071 513920 /proc/sys/net/core/wmem_default 默认的TCP数据发送窗口大小(字节)。 229376 256960 /proc/sys/net/core/wmem_max 最大的TCP数据发送窗口(字节)。 131071 513920 /proc/sys/net/core/netdev_max_backlog 在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。 1000 2000 /proc/sys/net/core/somaxconn 定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数。 128 2048 /proc/sys/net/core/optmem_max 表示每个套接字所允许的最大缓冲区的大小。

SUSE 系统加固

旧时模样 提交于 2021-02-12 09:46:58
1.身份鉴别 1.1 检查是否设置口令复杂度 #vi /etc/pam.d/common-password 改为如下两行: password requisite pam_cracklib.so minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 password required pam_unix2.so use_authtok nullok 密码要求: (minlen=8)最少8位,(ucredit=-1)至少包含1个大写字母,(lcredit=-1)至少包含一个小写字母,(dcredit=-1)至少包含一个数字个数,(ocredit=-1)至少包含一个特殊字符 1.2 检查是否设置口令生存期 #vi /etc/login.defs 中确保为如下值 PASS_MAX_DAYS 90 1.3 检查是否删除无关账号 锁定如下账号 锁定后登陆页面不会显示该用户 #usermod -L games #usermod -L nobody 2.访问控制 2.1 检查是否配置登陆超时时间设置 #vi /etc/profile 确保如下设置 export TMOUT=600 2.2 检查是否设置文件与目录缺省权限 #vi /etc/profile 确保如下设置 umask 027 2.3 普通用户不允许Root登录 vi /etc/pam.d/su 添加 auth

fviz_cluster() not accepting for k-medoid (PAM) results

核能气质少年 提交于 2021-02-10 20:24:59
问题 Trying to visualize k-medoid (PAM) cluster results with fviz_cluster() , however function isn't accepting them. It states within ?fviz_clust "object argument = an object of class "partition" created by the functions pam() , clara() or fanny() in cluster package" I've tried accessing the clustering vector through other means; pam_gower_2$clustering pam_gower_2[[3]] but then I get a separate error: Error: $ operator is invalid for atomic vectors" The class of pam_gower_2 is partition? As the

[转帖]Ubuntu 18.04 server安装图形界面及realvnc远程桌面连接

笑着哭i 提交于 2021-02-02 22:57:25
Ubuntu 18.04 server安装图形界面及realvnc远程桌面连接 https: // blog.csdn.net/networken/article/details/88938304 转帖 学习一下. 版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/networken/article/details/88938304 ubuntu server安装图形界面 sudo passwd root su root apt - get update apt - get install -y ubuntu-desktop 安装完成后重启能够以普通用户登录桌面,如果需要root登录,还需要执行以下操作: 修改ubuntu.conf配置文件,在文件尾加入两行: vi /usr/share/lightdm/lightdm.conf.d/ 50 - ubuntu.conf [Seat: * ] user -session= ubuntu greeter -show-manual-login= true allow -guest= false 修改pam文件,注释2行 root@ubuntu:~# vi /etc/pam.d/gdm- autologin # %PAM- 1.0 auth requisite pam_nologin.so

SaltStack--接口salt-api

早过忘川 提交于 2021-02-02 15:44:35
SaltStack接口salt-api 介绍 参考官档 参考官档 SaltStack 官方提供有 REST API 格式的 salt-api 项目,将使 salt 与第三方系统集成变得更加简单。 salt-api安装配置 1)在 salt-master 上进行安装 [root@salt-master ~]# yum -y install salt-api 2)自签名证书,生产环境可以购买(说明:如果没有 salt-call 命令,装上 salt-minion 即可,依赖于该包) [root@salt-master ~]# salt-call -- local tls.create_self_signed_cert local: Created Private Key: " /etc/pki/tls/certs/localhost.key. " Created Certificate: " /etc/pki/tls/certs/localhost.crt. " 3)打开 include 加载子配置文件,方便管理 [root@salt-master ~]# vim /etc/salt/ master default_include: master.d /* .conf 4)配置 api 配置文件,将上面生成的证书写到配置文件 [root@salt-master ~]# vim /etc

saltstack的salt-api介绍

泪湿孤枕 提交于 2021-02-02 15:30:34
一、salt-api安装 yum install salt-api pyOpenSSL -y #pyOpenSSL 生成自签证书时使用 二、生成自签名证书(ssl使用) [root@master certs]# salt- call tls.create_self_signed_cert local: Created Private Key: " /etc/pki/tls/certs/localhost.key. " Created Certificate: " /etc/pki/tls/certs/localhost.crt. " [root@master certs]# ls localhost.crt localhost.key 三、创建基于pam认证的系统用户 [root@master certs]# useradd -M -s /sbin/nologin salt-api [root@master certs]# echo "salt-api" | passwd salt-api -- stdin Changing password for user salt- api. passwd : all authentication tokens updated successfully. [root@master certs]# 四、在master节点新增配置文件 [root

日志系统rsyslog

一曲冷凌霜 提交于 2021-02-02 00:35:20
写在前面的话: 最近在看一本书,叫效率读书,其中讲述了两种思维,一种是发散性思维,一种是专注性思维,当我们在专注做一件事的时候,其实能持续的时间不是很长,大约在25分钟左右,如果时间过长,那么就会消耗很大,这个时候可以想想其他的事来分散一下注意力,也就是使用发散性思维,一般我是洗个澡,感觉洗了之后,思维比较清晰,各位也可以试试。 1、 前言 在操作系统中,存在着各种各样的事件,那么用什么来记录这些事件发生的时间和相关信息呢?那么就会用日志系统 rsyslog ( RHEL6.X )。 2 、 日志系统 在 RHEL5.X 的时候,使用的服务如下所示: [root@testDB ~]#ps -ef|grep -E "syslogd|klogd" ( RHEL5.X 记录日志信息服务 ) root 2994 1 0 Sep06 ? 00:00:01 syslogd -m 0 ( 记录非内核产生的信息 ) root 2997 1 0 Sep06 ? 00:00:00 klogd -x ( 记录 kernel 产生的信息 ) 在 RHEL6.X 的时候,使用的服务如下所示: [root@rsyncserverscripts]# ps -ef|grep rsyslogd ( RHEL6.X 记录日志信息服务 ) root 1662 1 0 01:17 ? 00:00:00 /sbin