So , you have decided to purchase a Ricoh Aficio SG3100SNw printer. Good. It’s a good choice for small / medium companies. What we like about it is that it comes with wireless interface and that is quite nice . Less cables more fun. I’m not going to get into details on how to unbox it and make the initial setup. I leave that as an exercise for the reader ( it’s not easy but up to a point it’s fun ) . Continue reading Installing Ricoh Aficio SG3100SNw in linux
In the begining there was nothing but few baremetal. After a while someone delivers a whole bunch of baremetal on your doorstep and say : “I need them installed by tomorrow”. Same configuration … With the harddisks in raid and ubuntu on all of them . What do you do ?
It’s a big problem. Like most big problems you split it in lots of little problems that can be managed easier.
What you need to do for one baremetal:
- Update the ILO firmware and Bios (if necessary) . This will come handy: https://play.google.com/store/apps/details?id=com.hp.essn.iss.ilo.iec.spa&feature=search_result . I’m not going into details about it in this post
- Create the disk arrays
- Install the operating system on it
- Configure it and deploy it.
For one server let’s say you can do it in few hours , few beers and some pizza’s. But … wait a minute .. There are a LOT of baremetals to be installed. One option is to call some friends and do that while you watch a movie.
OR you can be smart and automate the tasks. How ? What i need ?
You need a baremetal installer server or a laptop or a virtual something (virtual box / vmware / you choose ) image that will do the job for you while you sit back and relax.
The ideea is simple:
- Baremetal will boot from network
- tftp server will deliver the boot image, boot it , get an ip addres from the dhcp server and register the new server into the baremetal installer and will fill the hardware configuration there.
- Then you can ( using ansible ) to actually do the raid configuration , bios updates , firmware updates, and operating system install.
- Add the necessary configurations.
- Once complete the system will boot from raid and you have a system up and and running ready to be deployed.
Now … Back to the post subject .
How you can configure HP raid from inside ubuntu ? In order to have in the network bootable image the proper tools to do actually do the configurations…
First we install hpacucli :
sudo echo "deb http://downloads.linux.hp.com/SDR/downloads/MCP/ubuntu precise/current non-free" >>/etc/apt/sources.list
sudo apt-key add GPG-KEY-mcp
sudo apt-get update
apt-get install cpqacuxe hp-ams hp-health hpacucli hponcfg
service hpsmhd stop
update-rc.d hpsmhd disable
hpasmcli -s "show server"
Then when we boot the new baremetal to be installed we can gather the informations about the raids:
hpacucli ctrl all show config
That will produce an output like ( in this case i already configured the raid:
Smart Array E200i in Slot 0 (Embedded) (sn: VX9AMP1927 )
array A (SAS, Unused Space: 0 MB)
logicaldrive 1 (136.7 GB, RAID 1, OK)
physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK)
physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK)
At this point you can create some scripts that will create the partitions in the way that the shareholder wants them.
hpacucli ctrl slot=9 create type=logicaldrive drives=1I:1:3,1I:1:4 raid=1
We are searching for CAS (Central Authentication Service) for a project .
The Central Authentication Service (CAS) is a single sign-on protocol for the web. Its purpose is to permit a user to access multiple applications while providing their credentials (such as userid and password) only once. It also allows web applications to authenticate users without gaining access to a user’s security credentials, such as a password
We are evaluating CAS solution from:
In this post I’ll try to explain how to get jasig CAS up and running.I’m assuming that all CAS related programs will be in /opt/CAS , if you need them in other location you will have to slightly adjust the paths.
To get it up and running you will need:
- Apache maven (http://maven.apache.org/). I used version 3.0.5 ( latest at the time of the post writing ) . Instalation of apache maven is straight forward .
mkdir -p /opt/CAS cd /opt/CAS wget http://mirrors.hostingromania.ro/apache.org/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz tar xf apache-maven-3.0.5-bin.tar.gz export PATH=$PATH:/opt/CAS/apache-maven-3.0.5/bin
- Apache tomcat(http://tomcat.apache.org/). Again I used version 7.0.41
cd /opt/CAS wget http://mirrors.hostingromania.ro/apache.org/tomcat/tomcat-7/v7.0.41/bin/apache-tomcat-7.0.41.tar.gz tar xf apache-tomcat-7.0.41.tar.gz
- jasig CAS software (http://www.jasig.org/cas) . We used 3.5.2 release of the software.
cd /opt/CAS wget http://downloads.jasig.org/cas/cas-server-3.5.2-release.tar.gz tar xf cas-server-3.5.2-release.tar.gz
- Mysql Java Connector software (http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.25.tar.gz/from/http://cdn.mysql.com/) . We used 5.1.25 release of the software.
cd /opt/CAS wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.25.tar.gz tar xf mysql-connector-java-5.1.25.tar.gz
Now we have everything we need for the build. Let’s start configure it
Edit the file: cas-server-3.5.2/cas-server-webapp/pom.xml
And change commons-dbcp version from 1.2.2 to 1.4 . Otherwise the CAS will give some obscure null errors after startup. After athat add the following:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.25-bin</version> <scope>provided</scope> </dependency>
Edit the file cas-server-3.5.2/cas-server-webapp/target/cas-server-webapp-3.5.2/WEB-INF/deployerConfigContext.xml and add the following ( required for mysql support and changed default demo authentication to mysql auth)
<!-- <bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" /> --><bean class="org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHandler"> <property name="tableUsers"> <value>users</value> </property> <property name="fieldUser"> <value>username</value> </property> <property name="fieldPassword"> <value>password</value> </property> <property name="passwordEncoder"> <bean class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder"> <constructor-arg value="MD5" /> </bean> </property> <property name="dataSource" ref="dataSource" /> </bean>
And at the end of file before /beans add the mysql configuration:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> <property name="url"> <value>jdbc:mysql://localhost:3306/cas</value> <!-- Replace this line with the database containing the users table --> </property> <property name="username"> <value>REPLACE_ME</value> <!-- Replace this line with the MySQL username --> </property> <property name="password"> <value>REPLACE_ME</value> <!-- Replace this line with the actual MySQL password --> </property> </bean>
On your mysql server create the database and table where the users will be kept and insert a test user :
create database cas; grant all on cas.* to REPLACE_ME@127.0.0.1 identified by 'REPLACE_ME'; CREATE TABLE users (username char(20) PRIMARY KEY NOT NULL, password char(64)); INSERT INTO users(username, password) VALUES ('Test44',MD5('passTest'));
Now the building part:
1. First install mysql connector
mvn install:install-file -DgroupId=mysql -DartifactId=mysql-connector-java -Dversion=5.1.25-bin -Dpackaging=jar -Dfile=../../mysql-connector-java-5.1.25/mysql-connector-java-5.1.25-bin.jar
2. Next build the war file
mvn package install
Install the package into tomcat directoy:
cp cas-server-3.5.2/cas-server-webapp/target/cas.war /opt/CAS/apache-tomcat-7.0.41/webapps
And after this restart your tomcat and point a browser to http://localhost:8080/cas and you should have a CAS instance up and running.
Things to test from this point forward:
- Test custom table structure
- Configure tomcat for SSL
- How to add custom password encryption
- How to add custom SQL auth string
- Attribute releasing from database
- Integration with a website
- Facebook login , oAuth login